基于單片機的溫濕度分析遙控開關(guān)門窗系統(tǒng)
單片機控制系統(tǒng)在生產(chǎn)生活領(lǐng)域應(yīng)用廣泛,無論是從簡單的有線控制還是到無線遠(yuǎn)程控制,都能體現(xiàn)單片機在電子控制領(lǐng)域非常重要?,F(xiàn)代化的辦公大樓里面各種控制開關(guān)系統(tǒng)更是離不開單片機系統(tǒng),現(xiàn)在的辦公設(shè)備和精密儀器需要嚴(yán)格的溫度和濕度環(huán)境,基于單片機的溫、濕、時遙控開關(guān)系統(tǒng)是采集當(dāng)時的溫度、濕度傳感器傳回的信息及內(nèi)部時鐘信息,經(jīng)分析是否符合辦公儀器設(shè)備和常規(guī)下人體舒適程度進(jìn)行有效的門窗開關(guān)遙控。
系統(tǒng)的工作原理
溫濕度遙控控制系統(tǒng)主要是由SHT11傳感器進(jìn)行溫濕度采集的,將采集到的溫濕度輸入到單片機的AT89C51的P1.0接口,SCK信號輸入到單片機的P1.1接口,由單片機的P1.2口將接收到的數(shù)據(jù)轉(zhuǎn)發(fā)送到MICR102的STBY接口。如圖3所示,將P1.0接口接收到的DATA數(shù)據(jù)信息轉(zhuǎn)由P1.3接口轉(zhuǎn)發(fā)送到MICRF102的8號接口,經(jīng)由MICRF102將數(shù)據(jù)信息轉(zhuǎn)化成可以發(fā)送的無線電波信號由6、7號接口的自制天線發(fā)射出去。在用戶端用MICRF002進(jìn)行信號接收,信號經(jīng)轉(zhuǎn)換后有DO口輸出到80C51單片機,再由單片機分析溫度和濕度以及內(nèi)部時鐘來控制繼電器以便于最后控制電機的正反轉(zhuǎn),最后達(dá)到控制門窗自動關(guān)閉的效果。
該系統(tǒng)主要由五部分組成,其中SHT11傳感器和AT89C51單片機用來進(jìn)行信號采集和存儲,MICRF102用來發(fā)射數(shù)字信號,MICRF002接收數(shù)字信號經(jīng)過解調(diào)后傳送給控制部分AT89C51單片機,最后由繼電器控制電機進(jìn)行正反轉(zhuǎn)。系統(tǒng)原理圖如圖1所示。
圖1 系統(tǒng)結(jié)構(gòu)圖
對于SHT11傳感器我們將其分成5部分,首先是溫度傳感器可以用DS75LX型號的傳感器來進(jìn)行溫度采集,濕度傳感器可以用HS1100濕度傳感器來進(jìn)行濕度采集采集后的溫濕度經(jīng)過露點值計算功能輸出濕度溫度值輸出分辨率為12位可編程為8位、濕度值輸出分辨率為14位可編程為12位。采集后的信號后經(jīng)由放大器進(jìn)行放大再進(jìn)行14位的A/D轉(zhuǎn)換,可以將轉(zhuǎn)換后的溫濕度數(shù)據(jù)存儲在標(biāo)定存儲器里面,或在需要的時候送到二線I2C總線器件從而將數(shù)字信號抓換為符合I2C總線協(xié)議的串行數(shù)字信號。I2C的四個管腳分別是SCK(串行時鐘輸入)、GND(接地端)、DATA(雙向串行數(shù)據(jù)線)、VDD(電源端專門接0.4~5.5V的電源)傳感器結(jié)構(gòu)框圖如圖2所示。
圖2 電源管理電路
無線發(fā)射機的工作原理
無線發(fā)射器主要是Micrel公司推出的一個單片UHF/ASK發(fā)射器,其核心主要是MICRF102芯片。MICRF102芯片主要包含:基準(zhǔn)振蕩器、相位檢波器、分頻器、帶通濾波器、壓控振蕩器構(gòu)成的合成器,發(fā)射偏置控制,RF功率放大器,天線調(diào)諧控制和變?nèi)荻O管等電路。將數(shù)字串行信號由ASK引腳輸入,由UHF合成器產(chǎn)生載頻和正交信號輸出,真正實現(xiàn)了數(shù)字輸入無線輸出,REFOSC引腳是基準(zhǔn)振蕩器端,連接晶振接地,如果要接受外來時鐘信號需要采用AC耦合方式,輸入信號幅度峰-峰值為200~500mV。STBY端主要是待機模式控制,接VDD是發(fā)射模式,接VSS是待機模式,這里為了時刻監(jiān)控周圍的溫濕度所以設(shè)為接VDD,
MICRF102采用差分輸出驅(qū)動天線負(fù)載,功率放大器輸出級包含一個變?nèi)荻O管,它自動與天線的電感調(diào)諧,以保證諧振在發(fā)射頻率上。功率放大器的輸出功率與PC端上的電壓有關(guān),正常應(yīng)該在0.2~0.4V之間,電壓越高功率越大,當(dāng)電壓過高時被限流則輸出功率不再增加?;镜碾娐方Y(jié)構(gòu)如圖3所示。
圖3 發(fā)射機原理圖
控制器工作原理
無線信號經(jīng)MICRF002接收后經(jīng)過調(diào)制重新變成串行數(shù)據(jù),經(jīng)由DO口送出到單片機AT80C51的P3.0口,利用程序?qū)3.0口輸入的串行數(shù)據(jù)進(jìn)行分析,如果溫度和適度都適合則將P3.5口置1并且P3.6口置0,如果溫度和濕度不適合,則將P3.5口置0并且P3.6口置1。除了溫度和濕度的分析,可以設(shè)置單片機的內(nèi)部時鐘來控制P3口的置0或1。當(dāng)P3.5口置1,P3.6口置0時,由P3.5口接出來的電磁繼電器為吸合狀態(tài),相反P3.6口接出來的繼電器為未吸合狀態(tài),這樣就可以控制電動機正轉(zhuǎn)。如果情況相反則電動機為反轉(zhuǎn)狀態(tài)。如果P3.5或P3.6口為0或1的時間達(dá)到規(guī)定的時長,則設(shè)置P3.5和P3.6口均為0。這樣防止電動機無限制轉(zhuǎn)動。原理圖如圖4所示。
圖4 接收及控制原理圖
硬件設(shè)計
該系統(tǒng)主要分為兩大部分,即信號采集發(fā)送、信號接收控制。本系統(tǒng)在信息采集和數(shù)據(jù)串行輸入的時候,采用了AT89C51單片機作為核心控制器件,其上集成了4KB的閃速存儲器,128B內(nèi)部RAM,能方便的存儲和處理程序,并且具有一定的驅(qū)動負(fù)載能力。
該系統(tǒng)在發(fā)射端主要用AT89C51單片機進(jìn)行數(shù)據(jù)篩選,首先將串行數(shù)據(jù)中的時間數(shù)據(jù)通過P3.1發(fā)送到MICRF102的ASK端口,等待延遲5μs,然后傳送濕度數(shù)據(jù),并且通過內(nèi)部時鐘分析是否達(dá)到一定的時間,如果到了預(yù)期時間則停止傳送數(shù)據(jù)。系統(tǒng)的接收端主要有MICRF002和AT89C51單片機組成,這一部分功能已經(jīng)介紹過。在繼電器和電機的接連進(jìn)行電動機的反正轉(zhuǎn)設(shè)置中,必須反復(fù)檢測電動機需要轉(zhuǎn)動的時長,否則電動機會空轉(zhuǎn)或?qū)е码娮柽^高燒壞電動機。硬件電路如圖5所示。
圖5 硬件系統(tǒng)原理圖
系統(tǒng)軟件設(shè)計
軟件采用了KeilC51匯編和C混合編程語言,主程序包括:系統(tǒng)初始化、定時器T0的時間設(shè)定,接收傳感器SHT11傳出的數(shù)據(jù)信息程序、運算處理溫濕度數(shù)據(jù)信息程序、發(fā)送程序、接收程序、中斷調(diào)用程序。為了使系統(tǒng)正常運行加強系統(tǒng)的可靠性,在系統(tǒng)的設(shè)計上可以采取指令冗余、軟件陷阱、容錯設(shè)計、系統(tǒng)中斷設(shè)計和外部強行中斷設(shè)計,以防在實際的運行中外界的干擾產(chǎn)生誤差和人為重新調(diào)整帶來的誤差,從而保證測量的準(zhǔn)確性可靠性。系統(tǒng)軟件流程如圖6所示。
圖6 軟件實現(xiàn)流程圖