基于SMS的無線家電控制系統
摘要:本文介紹了一種使用SMS(手機短信)的無線家電控制系統,其主要思路是GSMMODEM和紅外線遙控的結合應用。GSMMODEM收到短信后,通過SRWF-1無線模塊,發送控制數據給單片機控制器,由單片機控制器發射紅外線控制信號,完成對家電的控制。當需要控制家庭中的多個電器,可建立一個控制網絡。由于本系統采用無線方式,不會破壞家庭已有的裝修,有一定的實用性。
關鍵詞:SMSGSMMODEM紅外線遙控單片機SRWF-1無線模塊
1 概述
GSM系統是目前移動通信體制中比較成熟完善且應用廣泛的一種系統。紅外線遙控是目前使用最廣泛的一種遙控手段,而且可通過學習各種紅外遙控器的碼形,實現對家電的遙控。因此,可以將GSM MODEM和紅外線遙控結合起來,實現對家電的遠程遙控。例如在辦公室里發一條短信就可以控制家里的情況,不用為家里的門窗、電器、煤氣擔心。
因GSM MODEM價格較貴,不可能為每一個家電遙控器安裝一臺GSM MODEM,因此只能把GSM MODEM模塊安裝在一臺主控機上(在本設計中使用PC機),然后建立一個控制網絡,通過網絡傳輸控制指令,如圖1所示。但是網絡需要通信介質,若使用有線網絡,布線非常不方便,特別是在已裝修的家庭。因此本設計采用無線方式建立控制網絡,數據安全問題則用軟件解決。
本系統由GSM手機模塊、無線數據傳輸模塊和單片機控制模塊三部分組成。GSM手機模塊包含GSM MODEM和PC控制程序兩部分。GSM MODEM主要用來建立無線GSM網絡信道,PC控制程序接收串口發來的數據,檢驗手機號碼的權限,根據短信的內容生成控制機地址以及控制指令,并通過無線數傳模塊發送給單片機控制系統。無線傳輸模塊負責無線網絡建立和數據傳輸。假設共有4個電器需要控制,則建立一個一點對多點的通信網絡。單片機控制系統收到無線模塊傳來的數據后,根據收到的數據,找到受控電器的紅外發射碼形(此碼形為預先存入單片機中),發出紅外光信號,實現電器的控制;或者打開繼電器,驅動機械裝置,完成操作。
2 單片機控制器的設計
單片機使用常見的AT89C51。遙控器發射的信號由一串0和1的二進制代碼組成,用38KHz的載頻進行二次調制,以提高發射效率,降低電源功耗。然后再通過紅外發射二極管產生紅外線向空間發射。
當按下遙控器按鍵時,遙控器發出一串二進制代碼,通常分為引導碼、地址碼、地址碼、數據碼和數據反碼。地址碼連發兩遍,以提高遙控器的可靠性。如果兩次地址碼不同,則說明本幀數據有誤,應丟棄。
紅外遙控接收使用一體化紅外接收頭0038K,它將紅外接收、放大、解調,整形電路做在一起,可以將接收到紅外線信號轉化為TTL電平信號。0038K引出三個引腳,分別為地、+5V電源和信號輸出。將0038K輸出的信號輸入PC的音頻輸入端(LINE IN)。在PC上使用COOL EDIT(音頻處理軟件),將波形錄入,顯示在屏幕上。將波形進行3dB衰減,再將波形展寬后,即可讀出遙控器的紅外碼形。紅外發射使用單片機P2口的P2.5、P2.6位來控制,其中,P2.5輸出頻率為38KHz的載頻信號,P2.6輸出紅外脈寬信號,P2.5和P2.6通過或門輸出調制后的信號。P2.6輸出低電平時,或門允許38KHz載波信號通過,P2.6輸出高電平時,或門禁止38KHz載波信號通過。從而產生38KHz的電信號,該信號通過ULN2003芯片放大,經電阻限流后至紅外發射管,發出紅外光信號,控制電器動作。
3 SRWF-1無線網絡的設計
針對本系統數據流量較小,通信距離較近,且強調性價比的特點,選用SRWF-1型微功率無線數傳模塊。
3.1 SRWF-1型微功率無線數傳模塊的數據傳輸
SRWF-1模塊收到單片機發來的第一個數據后自動進行無線網絡連接、數據同步等工作,因此第一個數據將在5個字節時間延遲后從接收方串口輸出。如要傳送1個數據幀,此時間延遲將逐漸減少。當最后一個數據被發送后,模塊將處于等待狀態直到模塊所設置的接收等待時間延遲之后,模塊將自動通知所有接收設備斷開無線網絡連接、轉入空閑狀態。
當發送方最后一個數據被發送后需延遲6-8個字節才能接收空中其他模塊的數據。其他模塊在此時間內也不能向空中發射數據,即使有用戶數據輸入也是被緩沖在模塊中,而沒有發送到無線鏈路中,以避免引起數據通訊混亂。
3.2 SRWF-1家庭無線網絡的總體規劃
圖1所示系統中,服務器、GSM MODEM放置在書房,書房中安裝SRWF-1無線模塊主站,其它各房間中安裝SRWF-1無線模塊從站。
每個SRWF-1模塊都在網絡中擁有唯一的地址。通信的協調完全由主站控制。主站采用帶地址碼的數據幀發送數據。主站發出的數據,所有從站都接收。從站再將接收到的數據包中的地址碼與本地地址碼相比較,若不同則將數據全部丟掉,不做任何響應;若地址碼相同,則證明數據是給本站的。從站根據傳過來的數據進行響應,并將響應的數據發送回去,進行數據校驗。這些工作都由SRWF-1模塊完成,可保證在任何一個瞬間,通信網中只有一個模塊處于發送狀態,避免相互干擾。
將各房間中的單片機控制器連接在SRWF-1模塊上。單片機控制機收到SRWF-1模塊傳來的數據后,根據收到的數據,找到受控電器的紅外發射碼形(此碼形為預先存入單片機中),發出紅外光信號,實現電器的控制;或者打開繼電器,驅動機械裝置,完成操作。
3.3 SRWF-1無線數傳模塊與AT89C51的連接
SRWF-1模塊提供標準RS-232,RS-485和UART(TTL電平)3種接口方式,在本設計中使用TTL的UART方式與AT89C51的串口直接連接。SRWF-1使用+3.6~5.0V直流電源。工作時發射電流≤40mA,接收電流≤20mA,休眠電流≤20uA??珊蛦纹瑱C共用+5V直流電源。電路如圖2所示。
4 GSM模塊的設計
4.1 GSM模塊設計簡介
GSM模塊包含GSM MODEM和PC兩部分。GSM MODEM主要負責建立無線GSM網絡信道,通過GSM網絡接收和發送短消息,它通過串口與PC通信。PC從串口接收GSM MODEM發來的數據,檢驗手機號碼的權限,根據短信的內容生成受控機地址以及控制指令,并通過無線數傳模塊發送給單片機控制系統。GSM MODEM選用WMOi3雙頻集成GSM調制解調器。
4.2 WMOi3的AT短信指令調試
WMOi3支持標準AT指令,調試時可使用Windows自帶的“超級終端”工具。
將WMOi3連接到PC的串口上。硬件連接好以后啟動超級終端。建立串口連接,設置串口(波特率9600,8位數據位,1位停止位,無奇偶校驗,流控制使用Xon /Xoff)。發送AT指令測試設備是否正確連接,能否正常通訊。
4.3 應用短信開發控件SMSControl開發PC端程序
為提高開發速度,本設計中使用了短信開發控件SMSControl。SMSControl以OCX控件的形式提供,支持VB。該控件具有短信發送、短信自動接收、從SIM卡中讀取短信、從SIM卡中刪除短信等功能。PC端程序開發應用VB和SMSControl控件,程序界面如圖3所示。
4.4 程序應用說明
用手機向WMOi3發送一條內容為“打開”的短消息,便可以打開受控電器;如果想關掉受控電器,只要發送“關閉”即可。GSM模塊收到短信后,先檢測發送短信的手機號,若是在程序中設置的手機號碼,則發送控制指令給單片機控制器,若是其他號碼則拒之門外,增強了系統的安全性。
5. 結束語
基于GSM網絡的SMS服務是一種信息在移動網絡上儲存和轉寄的過程,可跨市、跨省、甚至跨國傳送,靈活方便,廉價可靠。本文的創新點就是利用SMS來實現超遠程遙控以及傳輸數據。用戶只要用隨身攜帶的手機向家里的GSM MODEM模塊發一條短消息,即可對家里的電器或防盜報警器進行全球范圍的遙控。由于本系統采用無線方式,不會破壞家庭已有的裝修,有一定的實用性。而且GSM MODEM和紅外線遙控技術成熟完善,因此這是一種可行方案。且本方案成本低、性能高,具有可靠靈活的特點,對家電的控制變得更容易、更快捷、更方便、更安全。
參考文獻
[1]萬福君,潘松峰.單片微機原理系統設計與應用[M].合肥:中國科學技術大學出版社,2002.
[2]李華. MCS-51系列單片機實用接口技術[M].北京:北京航空航天大學出版社,1993.8.
[3]汪曉平,鐘軍.Visual Basic網絡通信協議分析與應用實現[M].北京:人民郵電出版社,2003.1.
[4]薛棟梁.MCS-51/151/251單片機原理與應用[M].北京:中國水利水電出版社,2001.1.
[5]畢愛波,周東輝.以16位單片機實現信息家電連接internet的解決方案[J].北京:微計算機信息,2005,(10):79-81
評論