余華芳 羅建旭 蔡張盛 楊海
(廣東藥學(xué)院 醫(yī)藥信息工程學(xué)院)
隨著節(jié)能減排、綠色環(huán)保意識(shí)的不斷增強(qiáng),人們對家用電器的節(jié)能減排提出了更高的要求。但并不是每家每戶都有資金去更換使用多年、現(xiàn)在仍可以使用的家用電器。為此,本文設(shè)計(jì)研發(fā)了一款基于51單片機(jī)控制的節(jié)能環(huán)保的智能排插,舊一代的家電通過使用這個(gè)排插可以蛻變?yōu)橹悄芑译?,具備遙控、定時(shí)開關(guān)、無待機(jī)功耗等功能,節(jié)約了家電更新?lián)Q代的成本。該排插現(xiàn)場運(yùn)行效果良好,符合一般用戶需求,具有一定的推廣應(yīng)用價(jià)值。
為方便用戶使用,本設(shè)計(jì)將系統(tǒng)分成兩部分:排插控制系統(tǒng)和排插遙控器系統(tǒng)(如圖1、圖2所示),它們分別由一片 AT89S52單片機(jī)控制。在排插控制系統(tǒng)中,單片機(jī)通過無線接收模塊接收遙控器的遙控命令、解碼并進(jìn)行相關(guān)操作;單片機(jī)通過控制與排插插孔相連的繼電器來控制插孔的通斷電。當(dāng)然,插孔的通斷電也可以通過手動(dòng)開關(guān)按鈕來操控。LED指示燈用于指示排插當(dāng)前的工作狀況。在排插遙控系統(tǒng)中,無線發(fā)射模塊發(fā)送遙控指令,對排插進(jìn)行定時(shí)開關(guān)或立即開關(guān)等遠(yuǎn)程操作。本系統(tǒng)采用成都市飛宇達(dá)實(shí)業(yè)有限公司生產(chǎn)的液晶顯示模塊FYD12864-0402B,內(nèi)置ST7920 液晶控制器。該LCD用來顯示遙控器人機(jī)交互界面。
圖1 排插控制系統(tǒng)
圖2 排插遙控系統(tǒng)
3.1.1 無線收發(fā)模塊與51單片機(jī)硬件接口[1]
在排插系統(tǒng)中,為了降低生產(chǎn)成本,我們選用Atmel公司的單片機(jī) AT89S52為控制單元,采用PT2272與PT2262配對編、解碼芯片構(gòu)成無線通訊模塊。無線發(fā)射模塊和無線接收模塊電路圖如圖3、圖4所示。
圖3 無線發(fā)射模塊電路圖
圖4中,解碼芯片PT2272的17腳(VT)為接收有效狀態(tài)指示,它與排插控制系統(tǒng)上的單片機(jī) I/O口 P3.2(INT0)相連;10~13腳(D0~D3)為解碼后的四個(gè)數(shù)據(jù)腳,它們分別與單片機(jī)I/O口P2.0~P2.3相連;1~8腳為三態(tài)(VSS、VDD、空)編碼腳;LM358的1腳(RXD)輸出的是解調(diào)后的方波信號。
圖4 無線接收模塊電路圖
從邏輯分析儀采樣結(jié)果分析得知,當(dāng)PT2272接收到有效編碼數(shù)據(jù)時(shí),VT端會(huì)輸出高電平。利用此特性,可以將單片機(jī)外部中斷觸發(fā)方式設(shè)置為下降沿觸發(fā),以無線接收模塊接收到有效數(shù)據(jù)時(shí)VT端的輸出來驅(qū)動(dòng)單片機(jī)外部中斷。在外部中斷處理程序中,接收遙控器發(fā)送過來的4位數(shù)據(jù),連續(xù)接收四次4位數(shù)據(jù)為一次完整傳輸過程。
3.1.2 無線收發(fā)模塊工作原理[2]
無線發(fā)送模塊由編碼芯片PT2262發(fā)出的編碼信號:地址碼、數(shù)據(jù)碼、同步碼組成一個(gè)完整的碼字,解碼芯片PT2272接收到信號后,其地址碼經(jīng)過兩次比較核對后,VT腳才輸出高電平,與此同時(shí)相應(yīng)的數(shù)據(jù)腳也輸出高電平。如果發(fā)送端一直按住按鍵,編碼芯片會(huì)連續(xù)發(fā)射。當(dāng)發(fā)射模塊沒有按鍵按下時(shí),PT2262不接通電源,其17腳為低電平,則315MHz 的高頻發(fā)射電路不工作;當(dāng)有按鍵按下時(shí),PT2262得電工作,其17腳輸出經(jīng)調(diào)制過的串行數(shù)據(jù)信號。在17腳輸出高電平期間,315MHz的高頻發(fā)射電路起振并發(fā)射等幅高頻信號,在 17腳輸出低平期間,315MHz的高頻發(fā)射電路停止振蕩。故高頻發(fā)射電路完全受控于PT2262的17腳輸出的數(shù)字信號,因此,對高頻電路的幅度監(jiān)控(ASK 調(diào)制)相當(dāng)于調(diào)制度為100%的調(diào)幅。
3.1.3 無線收發(fā)模塊間通訊協(xié)議
排插控制系統(tǒng)與遙控器之間通過由 PT2272和PT2262配對芯片構(gòu)成的無線模塊來收發(fā)數(shù)據(jù)。由于芯片性能限制關(guān)系,沒有內(nèi)置通訊時(shí)序以及協(xié)議,并且每次只能發(fā)送4位二進(jìn)制數(shù)據(jù)。因此我們自擬定通訊協(xié)議來進(jìn)行復(fù)雜數(shù)據(jù)的通訊。我們擬定每發(fā)送四次4位數(shù)據(jù)為一次完整通訊過程,具體操作如圖5所示,這里假設(shè)控制兩個(gè)排插插孔的情況。
圖6是排插遙控器的電路圖,由四個(gè)按鍵和一個(gè)FYD12864液晶顯示模塊組成人機(jī)交互界面。四個(gè)按鍵的作用分別是:向上,向下,確認(rèn)和取消。由于單片機(jī)對于無線模塊干擾比較大,所以這里采用PC817進(jìn)行光耦隔離。
圖6 排插遙控器電路圖
圖7是排插控制器的電路圖,由無線接收模塊接收遙控器發(fā)送的數(shù)據(jù),控制繼電器通斷電,繼而控制排插的通斷電。四個(gè)LED色塊指示排插的工作狀況,兩個(gè)按鍵可手動(dòng)控制繼電器。
圖7 排插控制器電路圖
由于環(huán)境中存在著干擾源,無線收發(fā)模塊的通信必定會(huì)出現(xiàn)丟幀或誤碼的情況,故排插控制系統(tǒng)須具備一定的糾錯(cuò)功能。我們采取如下方式進(jìn)行糾錯(cuò)處理:當(dāng)排插控制系統(tǒng)接收到非完整數(shù)據(jù)時(shí)(完整數(shù)據(jù)為四次4位數(shù)據(jù)),等待0.3s(數(shù)據(jù)保持時(shí)間)后,若仍未接收到有效數(shù)據(jù),意味著通訊過程中出現(xiàn)數(shù)據(jù)幀丟失,此時(shí)將前面接收到的非完整數(shù)據(jù)幀從內(nèi)存單元中刪除,拋棄原數(shù)據(jù)等待下一次有效數(shù)據(jù)的傳輸。即接收程序只對有效匹配數(shù)據(jù)進(jìn)行處理,非有效數(shù)據(jù)直接拋棄,這樣做能有效地避免在通訊出現(xiàn)誤碼時(shí),排插控制系統(tǒng)出現(xiàn)程序跑飛的情況。
排插系統(tǒng)軟件采用51單片機(jī)C語言模塊化編程,主要由主程序、遙控器操作程序、排插操作控制系統(tǒng)程序、液晶顯示程序等組成。在此給出遙控器操作程序流程圖和排插操作控制系統(tǒng)流程圖(見圖8、圖9)。其他模塊的流程圖因?yàn)槠脑?,在此就不再贅述?/p>
圖8 遙控器操作程序流程圖
圖9 排插操作控制系統(tǒng)流程圖
本系統(tǒng)利用51單片機(jī)控制的排插,具有一定的創(chuàng)新性。遙控徹底關(guān)機(jī),無待機(jī)耗電問題,環(huán)保省電。徹底關(guān)機(jī)讓電器充分休息,延長電器使用壽命,提高用電安全性。定時(shí)開關(guān),使舊家電在不用更新?lián)Q代的情況下智能化、人性化??傊撆挪逵布娐泛唵?,穩(wěn)定性好,工作可靠性高,具有很好的推廣應(yīng)用價(jià)值。
[1]蔡朝陽. 單片機(jī)控制實(shí)習(xí)與專題制作[M].北京:北京航空航天大學(xué)出版社,2006.11.
[2]電子制作實(shí)驗(yàn)室,200米帶保險(xiǎn)推蓋的四鍵遙控器[EB/OL].http://xie-gang.com/200m.htm