內容:本項目利用AD加光敏電阻傳感器,按鍵及DA對直流電機的控制實現智能百葉窗的控制。具體功能:數碼管顯示測量結果光強,設置三個按鍵:手動/自動切換、手動正轉和手動反轉,用一個發光二極管顯示手動/自動狀態,自動狀態時二極管亮。設置兩個極限位置保護行程開關,用于保護百葉窗葉片:當正轉到極限位置壓下行程開關時,電機停止正轉,但還可以反轉;當反轉到極限位置壓下行程開關時,電機停止反轉,但還可以正轉。
意義:利用單片機進行光照監控及窗戶自動化控制,能夠很好的理解和學習單片機的控制及設計。
二、整體設計原理及方案本次實驗使用器件為Generic-8051系列單片機,ADC0809芯片,DAC0832芯片,8279鍵盤、顯示控制器芯片,兩個電位開關,三個發光二極管,LED燈以及自行焊接的光強信號采集電路板一塊。
2.2工作原理光強信號采集電路每一次采集光強信號之后,將光強信號傳輸至ADC0809芯片,通過模/數轉換后,由單片機采集轉換后的數字信號,實行判斷光強是否超過閾值,通過8279鍵盤、顯示控制器芯片顯示光強信號的數值,并結合鍵盤上按鍵的控制(自動/手動切換,手動正轉,手動反轉),實現預定的輸出。輸出的數字信號經由DAC0832芯片轉換成模擬信號,并將模擬信號輸送到電機控制端實現執行功能。
因本實驗電機不能實現反轉,故用快轉代替正轉,慢轉代替反轉。
2.3設計方案該部分有3個按鍵及1個紅色LED燈組成。其中一個按鍵為功能切換按鍵,連接著8051的外部中斷接口。另外兩個按鍵為手動正轉和手動反轉。接外部中斷的按鍵按下可以切換工作模式:自動模式,手動模式。LED燈1為模式指示燈,當為自動模式的時候亮,手動模式的時候滅。當自動模式時,根據自設定的閾值,當超過最強光照強度時控制電機慢轉,當低于最弱光強時控制電機快轉。當處于手動模式時與光強度無關,按下手動正轉鍵則電機正轉,按下手動反轉鍵則電機反轉。
2.3.2光照獲取及光照顯示首先由光敏電阻組成的傳感器模塊提供隨光照強度變化的電壓值,在由A/D0809轉換電路,將模擬量轉換為數字量。還有一個由8279控制的6位數碼管,我們將光照信息實時顯示在數碼管的前2位。
2.3.3極限開關的設置極限開關通過P0.1和P0.2分別控制手動正轉和手動反轉停止。當極限開關為低電平時使電機停轉,高電平時不影響電機轉動。同時當開關低電平時點亮一個發光二極管代表極限開關打開,電機停止轉動。
三、硬件電路圖
該設計中除了熱敏電阻電路其余電路均由實驗臺提供,實驗臺上提供了51單片機的最小系統并做了相關設定。
1)、微處理器:i80c31,它的P1口、P3口皆對用戶開放,供用戶使用。
2)、時鐘頻率:6.0MHz
3)、存儲器:程序存儲器與數據存儲器統一編址,最多可達64k,板載ROM12k;RAM1(程序存儲器6264)8k供用戶下載實驗程序,可擴展達32k;RAM2(數據存儲器6264)8k供用戶程序使用,可擴展達32k。在程序存儲器中,0000H----2FFFH為監控程序存儲器區,用戶不可用,4000H----5FFFH為用戶實驗程序存儲區,供用戶下載實驗程序。數據存儲器的范圍為:6000H----7FFFH,供用戶實驗程序使用。
注意:因用戶實驗程序區位于4000H-----5FFFH,用戶在編寫實驗程序時要注意,程序的起始地址應為4000H,所用的中斷入口地址均應在原地址的基礎上,加上4000H。例如:外部中斷0的原中斷入口為0003H,用戶實驗程序的外部中斷0的中斷程序入口為4003H。
中斷名稱 8051原中斷程序入口 用戶實驗程序響應程序入口
外部中斷0 0003H 4003H
定時器0中斷 000BH 400BH
外部中斷1 0013H 4013H
定時器1中斷 001BH 401BH
串行口中斷 0023H 4023H
表1-1:用戶中斷程序入口表
利用這些提供的基本硬件電路就可以進行相關的設計。
3.2 A/D轉換八路八位A/D實驗電路由一片ADC0809,一片74LS04,一片74LS32組成,該電路中,ADIN0—ADIN7是ADC0809的模擬量輸入插孔,CS0809是0809的AD啟動和片選的輸入插孔,EOC是0809轉換結束標志,高電平表示轉換結束。齊納二極管LM336-5提供5V的參考電源,ADC0809的參考電壓,數據總線輸出,通道控制線均已接好。

電路原理八路八位A/D實驗電路由一片ADC0809,一片74LS04,一片74LS32組成,該電路中,ADIN0—ADIN7是ADC0809的模擬量輸入插孔,CS0809是0809的AD啟動和片選的輸入插孔,EOC是0809轉換結束標志,高電平表示轉換結束。齊納二極管LM336-5提供5V的參考電源,ADC0809的參考電壓,數據總線輸出,通道控制線均已接好。
D/A0832電路設計3.3.1電路原理八位雙緩沖D/A實驗電路由一片DAC0832。一片74LS00,一片74LS04,一片LM324組成,該電路中除DAC0832的片選未接好外,其他信號均已接好,片選插孔標號CS0832。輸出插孔標號DAOUT。該電路為非偏移二進制D/A轉換電路,通過調節POT3,可調節D/A轉換器的滿偏值,調節POT2,可調節D/A轉換器的零偏值。

8279顯示電路由6位共陰極數碼管顯示,74LS244為段驅動器,75451為位驅動器,可編程鍵盤電路由1片74LS138組成,8279的數據口,地址,讀寫線,復位,時鐘,片選都已經接好,鍵盤行列掃描線均有插孔輸出。鍵盤行掃描線插孔號為KA0~KA3;列掃描線插孔號為RL0~RL7;8279還引出CTRL、SHIFT插孔。六位數碼管的位選、段選信號可以從8279引入,也可以有外部的其他電路引入,原理圖如下:

六位數碼管電路的測試:除去電路板上數碼管右側的跳線,系統加點,用導線將插孔LED1接低電平(GND),再將插孔LED-A,LED-B,LED-C,LED-D,LED-E,LED-F,LED-G,LED-DP依次接高電平(VCC),則數碼管SLED1的相應段應點亮,如果所有的段都不亮,則檢查相應的芯片75451,如果個別段不亮,則檢查該段的連線、及數碼管是否損壞。用同樣的方法依次檢查其它數碼管。
8279顯示、鍵盤控制芯片電路的測試:加上數碼管右邊的所有短路線,復位系統,應能正常顯示。否則檢查8279芯片、244芯片、138芯片是否正常。
該信號采集電路由電壓跟隨器(輸入級),差動比例放大器(中間級)以及反向比例放大器(輸出級)構成。中間級為調零電路,輸出級將高于零點的電位放大,并將測量上限放大為ADC輸入上限。
直流調壓調速電機模塊由測速電路和調速電路兩部分組成。模塊的電源由接口總線引入。本模塊中使用的電機為12V的直流電機。
3.6.1電機測速部分(1)直流電機測速原理介紹
電機測速部分由一個霍爾開關和信號放大電路組成。與電機同軸的轉盤上裝有兩塊的強力磁鋼,它們的磁極性相反,以保持轉盤的平衡并保證轉盤每轉一周霍爾開關只導通一次。霍爾開關平時輸出為正電壓,當轉盤上的磁鋼與霍爾開關正對時,霍爾開關輸出負電壓,經整形、放大輸出。單片機通過對負脈沖計數,可計算出電機的轉速。
(2)電機測速部分電路原理及說明
3144為霍爾開關,整形、放大由LM358完成。LM358作為比較器使用。SIGNAL為負脈沖輸出接口,對應于模塊上的SIGNAL插孔。可直接用SIGNAL信號進行測速。
此外,模塊還提供了另一種測速方法。如下圖所示:

平時使START保持低電平,OUT2輸出為低電平,OUT1為高電平。拉高START表示允許測速,此時OUT1的下降沿啟動計數,上升沿停止計數,表示測速結束。
(3)電機測速部分電路測試方法
將模塊插在接口掛箱或對象掛箱上并接通電源,調節電位器R9,使電機轉動。用示波器在SIGNAL插孔處可以看到連續的負脈沖。
3.6.2電機調速部分電機調速的原理是通過改變電機兩端的電壓來改變電機的轉速。其原理如下:
該部分電路測試方法:
DRV接GND,調節電位器R9,可以觀察到電機轉速的變化。

開機默認情況下是電機停轉。
開關第一個鍵切換至自動模式,模式指示燈點亮,8279控制的數碼管能夠實時的顯示A/D0809讀取的值,并且跟隨光照強度變化。而D/A輸出值跟隨A/D值同步變化。
當光強位于兩個閾值中間值時,電機停轉。當用手遮住一部分燈光,A/D值馬上下降,達到最弱光強(60H)之下時,電機開始正轉(快轉),當用強光照射后,A/D值上升,超過設定最強光強(E0H)后,電機轉速反轉(慢轉)。
開關第二個鍵為切換到手動正轉鍵,電機正轉(快轉),當極限開關1為低電平時,電機停止轉動,高電平時不影響。開關第三個鍵為切換到手動反轉轉鍵,電機反轉(慢轉)當極限開關2為低電平時,電機停止轉動,高電平時不影響。
當工作在手動模式情況下,光強變化對電機工作狀態均不起影響。
六、問題及心得在本次設計中遇到的最大問題是在最后一周的時候才發現焊的電路板有問題,經過反復檢查后決定重新焊電路板花費很長時間。之后程序設計經過反復修改得以順利完成本次課程設計。
這次我學會了8279鍵盤的使用,以及AD轉換和DA轉換的原理,對單片機編程更加熟練,焊電路板也更加熟練。
試驗圖:
1.遮光時







單片機51hei設計.doc
(6.25 MB, 下載次數: 24)
| 歡迎光臨 (http://m.raoushi.com/bbs/) | Powered by Discuz! X3.1 |