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