隨著時代的發展,人們將更多的注意力放在了生活環境的安全性、舒適性和便利性上,從而出現了智能家居的概念。智能家居控制系統使人們可以對家居內的任意電器進行數字化控制,利用計算機技術、網絡通訊技術將與家居生活有關的各種設備有機地結合在一起,進行集中管理,讓家居生活更加舒適、安全、有效。本文以ZigBee技術對智能家居內部進行無線網絡組網,通過ZigBee無線傳感器網絡節點的設計,實現節點對各種傳感器信息的采集、傳輸和控制功能。
1 Zigbee技術
ZigBee技術是一種強調極低耗電、極低成本的短距離無線網絡技術,遵循IEEE802.15.4標準。它專注于低速率傳輸控制,網絡容量大,時延短,提供數據完整性檢查,加密算法采用AES-128,網絡擴充性強,有效覆蓋范圍為10~75 m,具體依據實際發射功率的大小和各種不同的應用模式而定,基本上能夠覆蓋普通的家庭環境,通信頻率采用2.4 GHz免執照頻段。
ZigBee是一組基于IEEE802.15.4無線標準研制開發的,有關組網、安全和應用軟件方面的技術標準。IEEE802.15.4僅定義了MAC層和物理層協議,而ZigBee聯盟則對其網絡層和應用層進行了標準化。ZigBee聯盟還開發了安全層,以保證這種便攜設備不會意外泄漏其標識,而且這種利用網絡的遠距離傳輸不會被其他節點獲得。
2 系統結構設計
無線傳感器網絡系統主要由傳感器、CC2430無線模塊構成,結構圖如圖1所示。
圖1 系統結構圖
無線傳感器網絡采用樹狀結構,網絡中有一個協調器,負責整個網絡中數據的處理、轉發以及網絡的管理。終端節點(傳感器節點)上電復位后,會搜索協調器節點,當能夠搜索到協調器時,直接申請加入網絡。當終端節點搜索不到協調器時,這時就會通過路由器節點找到協調器來加入網絡。
加入網絡后保持待機狀態,當有數據需要發送時,按照組網時的路徑來收發數據信息。協調器通過串口與PC機相連,利用超級終端實現發送命令或者顯示數據。
3 硬件電路設計
本文設計的無線傳感器網絡系統的硬件結構主要由協調器模塊,路由器模塊,傳感器模塊,串口轉換模塊,供電模塊以及PC機等組成。其中協調器、路由器、傳感器3個模塊作為主要的無線通信模塊,由主控芯片CC2430作為數據處理以及無線收發器。其系統硬件電路結構示意圖如圖2所示。
圖2 系統硬件電路結構示意圖
3.1 主控芯片
選用CC2430芯片作為無線收發器和數據處理及控制器。CC2430在單個芯片上整合了ZigBee射頻前端、內存和微控制器。它采用增強型8051MCU、32/64/128 kB閃存、8 kBSRAM等高性能模塊,還包含模擬數字轉換器、幾個定時器、AES-128協同處理器、看門狗定時器。32 kHz晶振的休眠模式定時器、上電復位電路、掉電檢測電路以及21個可編程I/O引腳。
3.2 無線模塊設計
1)協調器模塊
協調器節點由電壓轉換模塊、按鍵模塊、LCD模塊、LED指示燈、時鐘、處理器CC2430、天線等部分組成。CC2430的工作電壓為3~3.3 V,所以要用電壓轉換模塊把電壓從5 V降低到3.3 V左右;LED指示燈用來顯示協調器節點網絡狀態信息(如是否組網成功);LCD模塊是用戶和傳感器網絡的交互界面,用來顯示功最長能菜單,用戶通過按鍵來選擇功能菜單。其電路圖如圖3所示。
圖3 節點電路圖
2)傳感器模塊與路由器模塊
傳感器模塊亦即是終端節點模塊,由傳感器、處理器CC2430、天線、LED指示燈、時鐘等部分組成。LED指示燈由P1.0、P1.1口控制。傳感器模塊就是在協調器模塊的基礎上去掉了LCD,而加入了傳感器。傳感器選用了DHT11溫濕度傳感器,與P0.0口相連,來負責數據采集。路由器模塊與傳感器模塊的硬件電路相同,只是在編程實現功能上有所不同。
4 無線網絡系統軟件設計
在ZigBee網絡中,只有那些可以成為ZigBee協調器的設備才能建立新網絡。協調器首先執行信道掃描,如果發現了一個合適的信道,協調器就要為新網絡選擇一個PAN ID,然后協調器進入*狀態,隨時響應其他節點的入網請求。
ZigBee網絡有兩種設備類型:全功能節點(FFD)和半功能節點(RFD)。RFD為終端節點,FFD可以作為協調器或路由。軟件設計包括網絡協調器程序以及路由器、終端節點程序。它們均包括初始化程序、協議棧配置、組網方式配置程序、各處理層設置程序以及發射程序和接收程序。初始化程序主要是對CC2430、協議棧、UART串口等進行初始化;發射程序將所采集的數據通過CC2430調制并通過DMA直接送至射頻輸出;接收程序完成數據的接收、遠傳及返回信息處理。主程序流程如圖4所示。
圖4 主程序流程圖
主程序主要分為2部分,網絡協調器程序以及路由器、終端節點程序。
對于網絡協調器主程序,首先初始化CC2430,然后初始化協議棧。之后程序建立一個新的網絡,確定網絡的ID號和頻道號。之后程序開始進入監測狀態。如果有新的設備請求加入網絡,則為其分配網絡地址,批準其加入網絡。同樣,協調器接收終端設備無線發送來的信息,并通過串口發送給上位機,或者從上位機得到命令,發送過終端設備。
對于路由器、終端節點程序,首先初始化CC2430,然后初始化協議棧。之后程序開始搜索網絡,當附近存在網絡時,則申請加入網絡。之后程序進入待機休眠狀態。如果終端傳感器有信息要發送,或者接收到協調器的命令,則喚醒設備,進行無線發送或接受。當事件處理完時,重新進入待機休眠狀態。
5 系統實現
系統的功能主要包括以下幾個方面:建立樹狀網絡拓撲結構;查詢網絡中各節點信息和傳感器數據,如電池電量、節點溫度信息等;控制節點的開關功能。
本系統使用了4個無線網絡節點,這樣能夠組成一個基本的無線網絡。并且根據情況做了多種組網測試:
1)1個協調器節點,3個終端節點;
2)1個協調器節點,1個路由器節點,2個終端節點;
3)1個協調器節點,2個路由器節點,1個終端節點。
在2)和3)情況下,根據節點與協調器節點之間距離、各節點彼此之間距離的不同,又會產生多種組網方式。例如2)情況下,終端節點離協調器近的話,會直接與協調器連接;而當搜索不到協調器時,就會通過路由器來連接。圖5為3)情況下的一種網絡結構。
圖5 節點管理界面
圖5所示為C51RF-WSN網絡監控軟件所截圖,通過此軟件,可以實時查看網絡狀態,并能向各個節點發送命令信息,例如查看網絡狀態,查看信號質量,電池電量,采集數據信息等。
智能家居系統的終端節點可以包括許多內容,從而實現一些子系統。例如:照明系統,調溫系統,報警系統,家電控制系統等。在我們設計的無線網絡系統中,實現了遠程控制燈開關照明;利用DHT11溫濕度傳感器實現終端節點的溫濕度監測,其信息能夠在PC機上很好的顯示出來。
圖6所示為傳感器所測2個路由器節點與1個終端節點的溫濕度信息。
圖6 溫濕度信息
6 結束語
針對我國智能家居快速發展的背景,本文對基于ZigBee技術的智能家居組網進行了軟硬件設計。ZigBee無線傳感器網絡系統以CC2430無線射頻芯片為核心,節省了成本,并且終端節點小巧,放置靈活,功耗極低,提高了監控能力,再加上采用樹狀網絡結構使得通信更加可靠,易于控制,非常方便實用,并且成本低廉。因此,ZigBee技術將會有廣闊的應用前景。