0 引言
近年來,智能家居這一概念隨著物聯網新技術的推動,逐漸走入人們的視野,市場需求發展空間巨大。這類新技術包括以ZigBee數傳為代表的無線傳感器網絡,在此次智能家居系統里面將看到ZigBee數傳無線傳感器網絡在家庭自動化上的應用。
本設計為了實現上述目標,解決了四個方面的技術問題,一是ZigBee模塊傳感器網絡的組網;二是發揮ARM Cortex-M3的高性能,設計出基于嵌入式多任務技術的智能家居系統的主控制器,內含WebSever 功能;三是實現了基于動態網頁的網頁遠程控制家電形式;四是嵌入GSM 短信模塊,將整個系統與GSM 網絡聯系起來。
1 系統方案
本系統使用TI 公司的ZigBee模塊芯片CC2530 組成樹形拓撲的家庭無線傳感器網絡,每個ZigBee 網路節點接上相應的設備,如LED燈、溫度傳感器、M-Bus智能抄表系統,以及模擬家中開關設備等,ZigBee 各個節點或直接與協調器鏈接,或經由路由器中轉再連接協調器。對上述信息進行ZigBee數據采集,本系統的主控制器使用的是TI 公司的LM3S9B96 微控制器。在實時操作系統的多任務環境下本系統采用了GSM網絡和以太網通信方式。對于GSM短信監控部分,采用的是華為GTM900無線模塊,使用了該模塊的GSM短信功能。
整個系統可以分成三個部分,分別為用戶監控終端、主控制器、ZigBee 無線傳感網絡。
2 ZigBee無線傳感網絡
2.1 技術體系結構
在ZigBee數傳模塊技術中,采用層來量化它的各個簡化標準。每一層負責完成所規定的任務,并且向上層提供服務。這些體系結構主要由物理(PHY)層、媒體接入(MAC)層、網絡/安全(NWK)層以及應用框架(AF)層組成。
2.2 組網形式
在組網形式上,由于本系統只存在終端節點與協調器之間的數據交換,不存在終端節點之間的數據交換,所以本系統采用的網絡拓撲結構為樹形拓撲。
2.3 ZigBee網絡軟件設計
在軟件方面使用的是TI 公司提供的ZigBee 協議棧(ZStack),Z-Stack操作系統像所有的操作系統樣,都要經過系統的初始化和執行操作系統兩個階段。
系統的初始化需要完成初始化硬件平臺和軟件構架所需要的各個模塊,為操作系統的運行做好準備工作。而在執行操作系統部分,由于TI Z-Stack是基于一個輪轉查詢式的操作系統,所以它總是處理當前最高優先級的事件。
Z-Stack 的主函數main()在ZMain.c 中,它完成了系統的初始化后,才開始執行操作系統實體。
(1)協調器建立網絡。ZigBee無線模塊協調器掃描DDEFAULT_CHANLIST參數定制的信道和選擇一個最小能量的信道。如果有兩個或者以上的信道,則協調器會選擇在ZigBee 無線傳感器網絡中存在的序號最小的信道。ZigBee無線模塊協調器將根據自身的IEEE 地址和DZDAPP_CONFIG_PAN_ID 建立網絡。
(2)路由器和傳感器節點設備加入網絡。路由和傳感器節點設備啟動后,將掃描DDEFAULT_CHANLIST 指定的信道,發現并調用NLME_NetworkDiscoveryRequest 函數來發現網絡,該函數要求網絡層去發現鄰居路由器節點,并且在進行網絡掃描之前調用。發現網絡存在后,調用NMME_OrphanJoinRequest()函數來加入網絡。
(3)綁定。要允許綁定,首先要將ZigBee模塊目標設備設置為zb_Allow-Bind()發出的允許綁定狀態,然后在源設備處調用zb_BindDevice()函數進行綁定操作。同樣,解除綁定的請求函數也是zb_BindDevice(),只是第一個參數不同,若為TRUE,則表示建立綁定;若為FALSE,則表示解除綁定。
(4)數據傳輸。無論發送什么數據,均要調用AF_DataRequest()函數。在協調器中,當其接收到傳感器節點發送的ZigBee數據采集信息后,將出發SYS_EVENT_MSG 事件,對AF_INCOMING_MSG_CMD信息做出處理。
3 系統硬件設計
(1)主控制器硬件設計。圖1 顯示的是整個系統的硬件部分設計,整個示意圖與實際的硬件連接相符。主控制器的核心是一塊LM3S9B96 開發板。開發板提供一個RJ45 網口,用網線可以講開發板連入互聯網。

圖1 連接示意圖
(2)ZigBee 無線模塊傳感器網絡硬件設計。在ZigBee 無線模塊傳感器網絡的硬件方面,本系統采用SK-CC2530ZDK,其硬件開發平臺包含了SKSmartRF05EB評估底板和SK-SmartRF05BB 的電池底板,此外還提供了SK-CC2530EM評估模塊和SK-CCDebugger多功能仿真器。
4 評測與結論
目前,本系統已基本完成,所有軟硬件均已調試通過。本系統的測試分三部分,一是網頁監測控制測試,二是GSM 短信監測控制測試,三是對ZigBee 樹形結構進行演示。
(1)網頁監測控制測試。首先將主控制器開發板連接入局域網,在一臺電腦上的瀏覽器里輸入WEB 服務器的IP 地址。
在該網頁上點擊更新設置按鈕,ZigBee數據采集的LED燈、電機、水表、溫度的狀態和數據都會出現在“當前值”欄里面。當選擇了電機控制或LED燈控制的相應選項后,在ZigBee網絡中的對應設備會立即響應控制的動作。
(2)GSM 短信監測控制測試。GSM 短信測試則直接用手機向系統發送控制命令和查詢命令的短信,ZigBee數傳模塊網絡的設備在接收到主控制器的信息后會立即做出響應。短信報警部分,人為將溫度提升到預設的溫度(35.5 攝氏度)之上,系統會向用戶發送一條報警短信。在手機終端會有這條短信的顯示。
(3)對ZigBee 樹形結構進行演示。另外測試的過程中還對ZigBee 樹形拓撲結構進行了演示。在房間的拐角放置一個ZigBee路由設備,然后將一個子節點放在房間的另一端,由路由器路由子節點和協調器的通信。實驗結果顯示這種拓撲結構能夠適應家居環境。