王航宇
(西安航空職業技術學院電子工程學院,西安710089)
隨著電子技術與無線通信網絡的飛速發展,數字化家電控制系統已成為未來家電裝飾發展的最新方向。目前日常家用電器,雖已經集成一些定時操控,但功能有限,遙控關機狀態仍有功耗,無法有效切斷電源。階梯電價的實施,對普通用戶來說,家用電器的待機或關機狀態的耗電也是電費來源之一。因此,需設計一套可隨時便捷控制家電工作狀態的控制系統,使能源與電費開支得以有效節約。
常見短距離無線通信有[1-2]:基于 IEEE802.15.4標準的低功耗個域網協議(Zigbee)、射頻識別技術 RFID(Radio Frequency Identification)、藍牙(Bluetooth)、點對點紅外通訊(Infrared Ray)、使用802.11標準協議的局域網(Wi-Fi)和無載波通信UWB(Ultra Wideband)等,這些技術各有千秋,之間又存在著相互競爭,但在某些實際應用領域,它們又相互補充,其有效距離范圍與傳輸速率范圍如圖1所示。

圖1 常見短距離無線通信有效范圍與傳輸速率示意圖
智能手機的普及,使藍牙技術得到了迅速的發展,現已普及到普通家庭,而且普通家庭的住房大小,正好在藍牙的有效傳輸距離內,亦可使藍牙得到充分的利用,目前UWB標準化的工作還沒有完成,需進一步發展,而ZigBee以及Wi-Fi更適用于別墅家庭局域網的組建。因此,本文設計將選取藍牙技術作為室內短距離通訊。
本設計家電控制系統主要分為遠程無線控制,室內短距離無線控制,其拓撲結構如圖2所示。

圖2 家電控制系統網絡結構圖
遠程無線控制的實現,主要依靠用戶手機通過無線移動基站向家電主控制模塊發送命令消息,主控模塊通過室內短距離無線藍牙對用戶命令進行響應;當用戶在戶外時,室內短距離藍牙無線控制,主要響應來自主控模塊操作命令,當用戶在室內時,將響應來自用戶手機藍牙的指令。
家電控制系統中的微處理器的選擇與設計有2種方案:方案1,GSM/GPRS通信模塊與藍牙模塊均以串行方式與微處理器進行通信,故可選擇含有2個串口的微處理器,如STC12C5AXX系列的相關型號;方案2,通信模塊與藍牙模塊同時共用微處理器的一個串口。本文設計,將采用方案2的共用方式,選取STC89C51RC單片機作為信息交互的處理器。
家電控制系統主要包括:遠程GSM/GPRS通信模塊電路,藍牙模塊通信電路以及執行電路。執行電路主要由對繼電器的控制來完成,以下主要闡述通信模塊與藍牙模塊的應用設計。
GSM/GPRS通信模塊選取SIMCOM公司的SIM900A[4]尺寸較小的雙頻無線通訊模塊。該通信模塊電源部分為3.8 V,非典型固定電壓,而且瞬間電流可以達到2 A。本設計選擇可調輸出電壓芯片LM2596,LM2596輸出電壓范圍為1.2 V~37 V,瞬間可以通過最大電流達到3 A,完全符合電路要求。其SIM900A的電源模塊如圖3所示。

圖3 SIM900A電源模塊
微處理器與GSM/GPRS通信模塊示意圖如圖4所示。

圖4 SIM900A通信模塊應用電路圖
GSM/GPRS通信模塊為靜電敏感器件,故電路中需加入靜電防護措施。設計中采用STM公司專為靜電敏感器件設計的ESDA6V1W5芯片,該器件可承受瞬間靜電25 kV,漏電流小于1 μA。
由于所使用的微處理器為5 V接口電壓,而SIM900A接口電壓為2.8 V左右,因此需要在兩者之間加一電平轉換芯片,如圖4所示,本系統采用NL27WZ07芯片,實現 SIM900A與微處理器STC89C51RC之間的電平轉換。
藍牙模塊采用南京國春電氣設備有限公司出品的GC-02藍牙模塊,該CLASS2藍牙模塊設計采用了CSR公司的AUDIO-FLASH藍牙芯片,外圍主要元器件選型采用工業級標準,貼片式設計,自帶高效板載天線,可完全滿足普通家庭基本電器控制的要求。
藍牙模塊接收用戶命令(該命令可由主控藍牙發出也可由用戶智能手機的藍牙發出),并響應指令對電器操控。其接線示意圖如圖5所示。

圖5 藍牙模塊應用電路圖
通過單片機串口向SIM900模塊的串口發送AT命令[4],實現短消息服務,分組數據等應用。AT指令主要有測試、讀、寫、執行命令4個種類,每句AT指令以“AT”開始,以“回車”結束。不區分大小寫。命令發送成功后設備回復響應信號。
SIM900A模塊上電啟動后,自動輸出“RDY”后,才能夠通過AT指令正常通信。
短消息(SMS)格式主要有3種:BLOCK、TEXT和PDU 3種格式,BLOCK現在幾乎被淘汰;TEXT模式是基于ASCⅡ碼字符的一種結構模式,每條命令容易讀懂,實現容易,但不能收發中文短消息。PDU(protocol description unit,協議數據單元)模式被所有手機支持,這也是默認的手機編碼方式。
AT指令多達上百個,涉及到傳真、語音、短消息、分組數據等等,因此只介紹和本系統相關的短消息中常用到的AT控制命令如表1所示。
系統在收到來自用戶的短信指令,并在執行完命令后會回復一條確認信息。PDU字符串的發送和接收,在結構有很大的區別,發送短消息數據格式為:SMSC-PDU-MODE-MR-DA-PID-DCS-VPUDL-UD;接收短消息數據格式為:SMSC-PDUMODE-OA-PID-DCS-SCTS-UDL-UD。

表1 SMS相關控制命令
其中,SMSC,短消息業務中心地址;OA,短消息原發手機地址;DA,短消息的目的地址;PID,遠程設備進行協同工作的標示,需要服務商支持;DCS,表示數據編碼的方法和消息的類別;UDL,用戶數據長度;UD,用戶數據;VP,短消息在接收到短消息后,在沒有發到目的手機前可以保證短消息存在的時間;MR,1個字節,表示移動臺向短消息服務中心提交的短消息序號,一般從0到255;SCTS,服務中心時間戳,告訴目的用戶短消息到達的標準時間。
主控制部分,在藍牙模塊處于待機狀態的時候,當從串口UART接收到了單片機發送過來的“文件發送指令SN”之后,藍牙模塊將向子系統,當子系統允許接收后,將文件內容發到子系統中,發送結束后,返回待機模式,子系統經判斷后對相應的電器進行操作。
普通藍牙手機一般只支持對象交換協議OPP,沒有支持串口通信SPP的應用程序,所以當用戶處于室內時,藍牙模塊與藍牙手機之間將發起基于OPP協議的呼叫。
藍牙模塊GC-02的無線通訊的流程圖如圖6所示。

圖6 藍牙無線通訊流程圖
當主控部分藍牙模塊向子系統藍牙模塊發送信息時,需由主控單片機做進一步判斷——判斷待發的內容長度究竟是大于251 byte、還是小于等于251 byte,因為不同的長度需要以不同的指令格式發送。
假設單片機判斷出待發送內容大于251 byte,那么就先將從最高位開始的251 byte進行一次打包發送,打包發送的目的是為了減少在傳輸過程中的出錯幾率。
數據包的發送指令格式是:
SD<數據包長度251(0xFB)><251 byte數據的內容><結束符(XOR NOT)(單字節)>
各部分含義具體如下:
SD:數據包發送指令特指標識符
數據包長度:由于發送的是大于251 byte的內容,所以直接發送251的十六進制0xFB
結束符:文件發送指令結束符,具體是由整個指令的每一個字節(結束符自己除外)的相互異或之后,再將異或后的結果取反作為結束符。
當藍牙手機成功的收到數據包之后,會返回給藍牙模塊“nextpc”,則藍牙模塊也同時將“nextpc”返回給單片機,表明第一個數據包發送成功,然后單片機就會繼續發送剩下的內容。如果藍牙模塊沒有正確收到數據包,則返回給藍牙模塊“redata”進行重發操作,藍牙模塊同時將“redata”返回給單片機,此時單片機就會將剛才發送的數據包重新發送一次,此過程將一直重復直到藍牙收集正確收到單片機發送的數據包為止。
上述文件發送過程只有一種情況將會自行終止,就是當藍牙手機移出了藍牙模塊的有效通訊范圍之外的時候(一般以10 m為限)。當此情況發生的時候,將由藍牙模塊返回給單片機“discon”,此時單片機收到了“discon”則同藍牙模塊一起終止數據傳輸操作,并一同返回待機狀態。
如果單片機判斷出待發的內容長度小于等于251 byte,則進行最后數據包的發送。最后數據包的發送指令格式是:
SL<數據包長度(單字節)><數據的內容(雙字節)><結束符(XOR NOT)(單字節)>
本文所設計的家電控制系統,成功結合了STC89C51RC微處理器的強大功能、GSM/GPRS網優質的傳輸性能,具有低成本、低功耗、技術成熟、擴展方便等優勢,實現了遠程與室內控制的簡便切換,為普通用戶家電管理,提供了有效途徑,同時對家庭智能化家居控制系統的研究以及日用智能電器遙控統一問題的研究,具有一定的指導意義。
[1]周經凱,麻信洛.智能家居控制系統中的無線技術應用與設計[J].工業控制計算機,2008,21(1):36-37.
[2]黃卉.智能家居控制系統的設計與實現[J].電腦知識與技術,2011,7(2):449-450.
[3]高明明,惠曉威,林森.基于GSM短信的智能家居控制系統的研究[J].微計算機信息,2010,26(34):79-81.
[4]翟順,王衛紅,張衎,等.基于SIM900A的物聯網短信報警系統[J].現代電子技術,2012,35(5):86-89.
[5]趙霄.基于單片機的藍牙接口設計及數據傳輸的實現[D].北京:北京交通大學,2008.
[6]楊瑞.基于藍牙通信的短信平臺設計與實現[J].計算機應用與軟件,2011,(28)2:218-219.
[7]周圓.藍牙家庭網絡家電模擬器及遠程控制系統設計[D].天津:天津大學,2008.
[8]周倩.基于藍牙的數字家庭網絡框架設計研究[D].長沙:長沙理工大學,2010.