基于單片機的智能窗控制系統設計方案
一、引言
本文引用地址:http://dyxdggzs.com/article/201609/296749.htm隨著(zhù)電子技術(shù)的不斷發(fā)展, 家庭中的許多電器設備如彩電、冰箱、空調等都已貼上了智能化的標簽, 為提高人們的生活質(zhì)量做出了貢獻。但遺憾的是, 居室的眼睛---窗戶(hù), 卻遲遲未跟上時(shí)代的步伐。即使是在眾多的智能化生活小區, 我們都可以發(fā)現, 幾乎所有的窗戶(hù)的管理仍然處在原始管理方式, 與電子技術(shù)毫不沾邊, 更不用說(shuō)智能化了。如果使窗戶(hù)具有一定的智能, 如下雨則自動(dòng)關(guān)、室內有害氣體超標則自動(dòng)開(kāi)、有盜賊入內則自動(dòng)報警等, 就會(huì )給人們的居家生活帶來(lái)諸多方便, 從而進(jìn)一步提高人們的生活質(zhì)量。
沿著(zhù)這樣的思路, 我們設計了以AT89C51 單片機為中央控制器的智能窗控制系統。
該控制系統能通過(guò)其數據檢測傳感電路不斷循環(huán)檢測室內溫度、濕度、有害氣體(如媒氣) 濃度等環(huán)境參數,然后與由控制鍵盤(pán)預置的參數臨界值相比較, 從而作出開(kāi)/關(guān)窗、轉動(dòng)/停止換氣扇、降/升溫(濕) 等判斷, 再結合窗狀態(tài)檢測電路所檢測到的窗狀態(tài), 發(fā)出一系列的控制命令, 完成下雨則自動(dòng)關(guān)窗、室內有害氣體超標則自動(dòng)開(kāi)窗(同時(shí)轉動(dòng)換氣扇) 、恒溫(濕) 等自動(dòng)控制功能。人們還可通過(guò)控制鍵盤(pán), 直接控制窗戶(hù)的開(kāi)/關(guān)、換氣窗的轉/停、溫(濕) 的升/降、選擇所顯示參數的種類(lèi)等。
二、系統組成和部分電路設計
本控制系統主要由AT89C51 單片機組成的中央控制器, 數據檢測傳感電路, A/D 轉換器, 窗驅動(dòng)控制接口電路、窗驅動(dòng)電路等組成。其系統框圖如圖一所示。

圖1 系統框圖
中央控制器
中央控制器以美國ATMEL 公司的AT89C51 單片機為核心。
1. AT89C51 單片機系統具有設計簡(jiǎn)單、性能可靠、功耗低等優(yōu)點(diǎn)。它為用戶(hù)預留下足夠的軟、硬件資源, 可供用戶(hù)進(jìn)行再開(kāi)發(fā)應用。該系統除內部已有的4K Flash 存儲器外, 還可以擴展選址64KROM區和64KRAM區, 供用戶(hù)使用。用戶(hù)在系統開(kāi)發(fā)時(shí), 可以將自己的數據塊和程序段、數據表, 以若干控制子程序、數據塊形式存放于A(yíng)T89C51 單片機的擴展ROM或RAM區中, 以便系統工作時(shí)重復使用和反復調用。由于本應用系統主要用于溫度、濕度、有害氣體識別、防盜安全的定點(diǎn)和多點(diǎn)測試, 片內4K Flash 存儲器已能滿(mǎn)足系統設計要求。
2. AT89C51 單片機機有三級程序存儲器加密。利用該功能可防止別人非法復制程序, 從而保護知識產(chǎn)權。
3. AT89C51 單片機還為用戶(hù)預置了P0、P1、P2、P3 四個(gè)并行I/O 口, 為該系統的數據采集和控制提供了足夠的端口資源。
4. AT89C51 單片機還為用戶(hù)提供一組全雙工串行數據傳輸端口, 可用于單片機系統間的遠程數據信息交換。
本系統采用P0 數據采集、控制端口, 完成控制信息的采集和控制功能。
P110~P113 作為窗狀態(tài)檢測端口, 完成對窗狀態(tài)(即窗是否移到邊框) 的檢測。
數據檢測傳感電路
數據檢測傳感電路由四個(gè)部分組成: 1) 溫度傳感電路; 2) 濕度傳感電路; 3) 有害氣體傳感電路; 4) 紅外防盜傳感電路。
為了討論問(wèn)題方便, 我們以溫度傳感電路為例進(jìn)行分析。通常, 在自然情況下, 窗戶(hù)的開(kāi)關(guān)與生活環(huán)境和人體的舒適度有關(guān), 溫度的測試是該系統設計的關(guān)鍵。為了較好地測出溫度參數, 我們選用集成溫度傳感器AD590(可測-55~+150 ℃) , 其溫度檢測完全可以滿(mǎn)足要求?;倦娐啡鐖D二所示。

圖2 基本電路
為了便于與AT89C51 單片機相連接, 同時(shí)又有利于系統設計, A/D 轉換器選用了ADC0809.其分辨率為8 位,不必進(jìn)行零點(diǎn)和滿(mǎn)度調整。單一電源( + 5V) 供電, 模擬量輸入范圍0 -5V.轉換速度取決于芯片的時(shí)鐘頻率。
時(shí)鐘頻率范圍為10 -500KHZ.ADC0809 有八路模擬量輸入, 在本系統中只用4 路輸入, 即可完成溫度等4 種被測模擬量的A/D 轉換。利用單片機對FOH口的數據寫(xiě)啟動(dòng)A/D 轉換器, A/D 轉換結束ADC0809 的EOC 向AT89C51 發(fā)出中斷請求信號, CPU 再響應中斷請求信號, 通過(guò)對FOH 口的讀操作, 讀取轉換結果并送到被測量的相應存儲區。
在重新選擇被測量(修改各相關(guān)指針) , 并再次啟動(dòng)A/D 轉換后中斷返回。A/D 轉換器電路如圖三所示。

圖3 A/D 轉換器電路
窗驅動(dòng)電路
我們可以根據驅動(dòng)信號與所控對象的關(guān)系, 將窗驅動(dòng)電路分解為: 移窗驅動(dòng)電路; 換窗驅動(dòng)電睡; 窗鎖驅動(dòng)電路; 溫度調節驅動(dòng)電路; 濕度調節驅動(dòng)電路; 換氣扇驅動(dòng)電路; 報警驅動(dòng)電路等, 分別用它們去控制1 個(gè)對象。
窗狀態(tài)檢測電路
可考慮采用4 個(gè)開(kāi)關(guān)型磁敏器件。外窗、內窗所對應的左、右墻框各1 個(gè)。在外窗、內窗的左、右邊上與磁敏器件相對應的地方各貼上一小片磁鐵。當小磁鐵隨窗戶(hù)的移動(dòng)而移近相對應的磁敏器件時(shí), 該磁敏器件的輸出信號從高電平變?yōu)榈碗娖剑?表示窗戶(hù)已移到相應邊上。
鍵盤(pán)輸入及顯示電路
可采用Intel 公司生產(chǎn)的8279 通用可編程鍵盤(pán)顯示器接口芯片。利用8279 , 可實(shí)現對鍵盤(pán)顯示器的自動(dòng)掃描,并識別鍵盤(pán)上閉合鍵的鍵號, 大大節省單片機對鍵盤(pán)顯示器的操作時(shí)間, 從而減輕單片機的負擔。該鍵盤(pán)輸入及顯示電路具有顯示穩定, 程序簡(jiǎn)單, 不會(huì )出現誤動(dòng)作等優(yōu)點(diǎn)。
對于控制鍵盤(pán), 可考慮采用微動(dòng)開(kāi)關(guān)制作并安裝在窗戶(hù)的固定邊框上。通過(guò)控制鍵盤(pán), 用戶(hù)不但可設置各環(huán)境參數的臨界值, 還可隨意選擇所顯參數的種類(lèi), 并直接控制窗戶(hù)的開(kāi)/關(guān)、換氣扇的轉/停、溫(濕) 的升/降等。
三、軟件設計
該控制系統的軟件主要由一個(gè)主程序和兩個(gè)中斷服務(wù)程序等所組成。
主程序
主程序的主要作用是在系統復位后對系統進(jìn)行初始化, 如設置8279、ADC0809 等的工作方式和初始狀態(tài), 設置各中斷的優(yōu)先級別并開(kāi)中斷, 以及首次啟動(dòng)A/D 轉換等, 然后向8279 循環(huán)送顯示字符。
讀鍵值中斷服務(wù)程序
讀鍵值中斷服務(wù)程序的主要作用是在A(yíng)T89C51 響應
循環(huán)檢測及A/D 轉換中斷服務(wù)程序
該中斷服務(wù)程序的主要作用是在A(yíng)T89C51 響應
該中斷應設為低優(yōu)先級。并設為電平觸發(fā)方式。
程序流程圖如下:

圖4 程序流程圖
評論