陳小龍,鄭煒超,朱春望
(江蘇科技大學 計算機科學與工程學院,江蘇 鎮江 212003)
隨著網絡技術和通信技術的不斷進步,物聯網一詞走入了人們的視線。隨之而來的智能家居系統也成為時下的熱門[1]。智能家居在發展的過程中也出現了一些難題,主要表現為以下兩方面:一是現在的智能家居系統大多采用無線通信的方式,無法對現有的家居設備進行直接控制,特別是現有的紅外設備種類繁多,無法集中式管理。二是現在的智能家居很少注重對資源的節儉,紅外設備的待機資源浪費尤為明顯。本文提出的基于CC2530的智能無線裝置不但可以很好的對現有的紅外設備進行集中式的管理而且可以避免待機資源浪費。
TI公司的推出的CC2530是第二代的Zigbee RF收發器.主要用于2.4 GHz的ISM頻段。其集成了1個高性能的RF收發器和1個優化的低功耗的8051微控制器內核。具有優秀的接收器靈敏度和優越的抗干擾性。同時,CC2530可以配備TI的Remo TI,ZStack或Simplici TI等專有或標準兼容的網絡協議棧來簡化開發[2]。CC2530作為處理器不僅可以方便的進行Zigbee通信,將其IO口擴展還可以連接其他通信模塊,可以實現多種無線方式對其控制。
智能無線裝置由CC2530、Zigbee外接天線、WiFi模塊、藍牙模塊、紅外收發模塊、傳感器組、繼電器插座和擴展模塊組成。監控前端的硬件模塊設計如圖1所示,WiFi模塊采用了ESP8266模塊,通過UART連接至CC2530。藍牙模塊使用CC2540模塊,CC2540模塊沒有使用USB轉接,直接通過UART連接至處理器。紅外收發模塊,通過GPIO連接至處理器,紅外發射通過三極管開關電路[3],控制紅外發光二極管兩端的電壓發射紅外信號,紅外接收采用了VS1838紅外一體化接收頭。傳感器組是采用的SHT11溫濕度傳感器,通過IIC連接至CC2530。繼電器插座,通過GPIO連接至處理器,繼電器插座能有效防止待機資源耗費,監控前端通過繼電器插座相連,當設備處于待機狀態時,可以通過GPIO直接關閉電源,防止了待機資源的耗費。

圖1 智能無線裝置總體設計Fig.1 The overall design of intelligent wireless device
智能無線裝置的處理器和Zigbee天線電路圖,如圖2所示。本系統用匹配CC2530芯片的2450BM15A0002代替傳統CC2530芯片天線電路,2450BM15A0002體積小,功耗低且易焊接,使用2450BM15A0002能更好保證天線抗干擾性和穩定性[4]。CC2530芯片外接了32M和32.768 K的晶振,32M的晶振是用于CPU及外設使用,32.768 K的晶振是專門用于內部ZigBee天線。因為智能無線裝置的無線通信模塊、紅外收發模塊、傳感器模塊和繼電器插座均采用外接的形式,所以CC2530的剩余管腳需要全部引出,其中紅外收發模塊和繼電器插座采用普通管腳即可,而無線通信模塊和傳感器組需要專有的管腳進行控制,如:UART、IIC、SPI等功能的管腳。

圖2 處理器及Zigbee電路Fig.2 Circuit of MCU and zigbee
紅外收發模塊如圖3所示,采用8050三極管發射驅動電路,8050三極管為硅三極管,比普通的三極管更加耐大電流。考慮到紅外發射模塊的發射距離和功耗問題,紅外發射模塊采用發射極鉗制輸出電路[5],通過串聯兩個二極管使8050三極管的基極電壓保持不變,使紅外發光二極管中的電流保持不變從而使紅外控制距離保持不變。

圖3 紅外發射和接收電路Fig.3 Circuit of IR transmitter and receiver circuit
紅外接收模塊采用VS1838一體化紅外接收頭,紅外接收模塊主要用于少量紅外學習編碼和紅外收發調試,紅外接收模塊的距離可達到20米左右。
智能無線裝置的軟件關鍵是實現通信功能,需要負責接收來自前端的命令控制紅外設備,當傳感器監測到周圍異常,需要將信號反饋給前端。其次智能無線裝置需要通過GPIO切斷紅外設備電源,防止紅外設備待機資源浪費。
如圖4所示,智能無線裝置接收到前端的命令時,初始化后對接收到的信號種類進行判斷,通過后智能無線裝置對接收到信號進行解析,對比指令表判斷是否為有效信號,如果為有效信號則發送信號給紅外設備。
智能無線裝置需要將傳感器信息反饋給前端。如圖5所示,智能無線裝置接收傳感器信號后直接對傳感器數據進行解析,如果是有效信號即通過無線模塊給前端發送反饋信號。傳感器模塊可能會檢測到周圍異常情況,這就要求監控前端必須要將信息反饋給前端。傳感器模塊可能會檢測到周圍異常情況,這就要求監控前端必須要實時將信息反饋給前端,所以最后會做出發射成功的判斷。

圖4 軟件控制流程Fig.4 Flow of software control

圖5 軟件反饋流程Fig.5 Flow of software feedback
紅外設備采用了自主設計以紅外方式控制的電燈,首先通過房間、電器的查找,找到紅外控制燈的模擬遙控器,模擬遙控器上有燈的開關和燈光強弱控制,通過控制模擬遙控器開關即可控制燈的開關,起始狀態紅外燈的狀態為關閉狀態。點擊開燈按鍵,電燈很快被打開,如圖6所示,開燈狀態。
通過智能手機能夠查看到傳感器數據,如圖7所示,智能手機可以查看到智能無線裝置中緩存的溫度和濕度的數據。

圖6 開燈狀態Fig.6 Lights status

圖7 溫濕度數據Fig.7 Data of temperature and humidity
基于CC2530的智能無線裝置可以對紅外設備進行統一控制,前端裝置也可以接收到智能無線裝置上傳感器監測的信息。對于防止紅外設備待機資源的浪費,智能無線裝置通過GPIO口與繼電器插座相連,通過控制IO口就可以直接切斷紅外設備電源,防止了待機資源的浪費。后期非紅外設備也可以插入智能無線裝置上的繼電器插座中,這樣前端裝置也可以控制非紅外設備的開關。
[1]邵振,章勇,劉培培,等.應用于智能家居中的學習型紅外模塊設計[J].中國電子商情:通信市場,2012,(4):27-32.
[2]任志健,莫偉健,萬智萍,等.基于CC2530的Zigbee2007/PRO協議的無線溫濕度系統設計 [J].電子設計工程,2012,20(10):40-43,48.
[3]官飛.三極管的開關電路[J].河南科技,2013(6):2-3.
[4]王江曼.無線通信中的智能天線技術研究[D].上海:華東師范大學,2011.
[5]張科.基于ZigBee智能家居控制系統的研究與設計 [D].鎮江:江蘇科技大學,2013.
[6]楊玉昆.基于Android平臺的交通調查數據采集方法的研究[D].廣州:華南理工大學,2014.