王 博
(西安電子科技大學電子工程學院,陜西西安 710071)
基于ZigBee技術的智能家居系統內部組網
王 博
(西安電子科技大學電子工程學院,陜西西安 710071)
為了提高智能家居系統的快速部署能力、降低構建成本,提出了一種利用ZigBee無線組網技術,構建智能家居系統內部基礎網絡的設計方案。該方案采用無線射頻收發CC2430芯片和外圍電路設計終端設備與中心協調器的硬件電路。根據ZigBee協議棧使用C語言編寫終端設備和中心協調器的通信應用軟件。
ZigBee協議;CC2430;中心協調器;智能家居系統
世界上第一幢智能建筑1984年在美國出現后[1],家居環境智能化已成為當前的社會主流,隨著人們生活節奏的加快和生活壓力的加大,智能家居成為人們追求舒適生活的必要途徑。智能家居網絡是指在家庭內部通過一定的傳輸介質(如電力線、雙絞線、同軸電纜、無線電、紅外等)將各種電氣設備和電氣子系統連接起來,采用統一的通信協議,對內實現資源控制,對外能通過網關設備與外部互連進行信息交換的網絡系統[2]。文中提出了通過ZigBee無線組網技術構建智能家居系統底層網絡的方案。目的在于使智能家居系統的底層網絡構建變得簡單快速,進而使整個智能家居系統具備快速部署和易擴展的特性。
文中設計的智能家居系統基層網絡采用ZigBee無線組網技術實現家居系統內部網絡,基礎網絡結構采用星型拓撲結構。通過ZigBee無線通訊模塊與智能家電以及傳感器構成家居內部網絡的終端設備;使用FFD(Full Function Device)設備為家居內部ZigBee網絡的中心協調器,負責建立和維護網絡;在中心協調器與中央控制服務器之間使用RS232串口通信實現連接,并通過PC機與互聯網相連,系統結構如圖1所示。作為智能家居系統的底層基礎網絡,家居內部ZigBee無線網絡可以實現的功能有:(1)收集家庭環境內部的數據和信息。(2)對于終端設備上傳的簡單情況做初步的預處理。(3)匯總基礎網絡信息,通過RS232串口通訊協議將數據上傳到中央控制服務器。

圖1 系統結構圖
ZigBee是基于IEEE802.15.4標準制定的一種短距離、低功耗的無線個人網絡通信協議[3],具有近距離、低復雜度、自組織、低功耗、低數據速率、低成本的特點。ZigBee協議棧是以OSI(Open Systems Interconnection)七層結構為參考建立起來的,為簡化協議棧,ZigBee協議棧由4個層結構組成,即物理層、MAC層、網絡層和應用層,ZigBee協議棧結構如圖2所示。

圖2 ZigBee協議棧結構圖
(1)物理層:主要功能是啟動和關閉無線電收發機、當前頻道內的能量監測、接收包連接質量指示、為CSMA-CA確認清除頻道、頻道頻率選擇、數據傳輸和接收。
(2)介質接入控制層(MAC層):MAC層負責維護物理無線電頻道的接口,任務包括:對于協調器要負責產生網絡信標、對網絡信標進行同步、維護個人局域網的加入和離開、維護設備安全、利用CSMA-CA機制進行頻道管理、處理與維護GTS機制、在MAC實體內部保證可靠的連接等。
(3)網絡層:ZigBee網絡層由ZigBee聯盟自行定義,負責為無線網絡提供建立、加入和離開網絡,進行路由轉發等功能。
(4)應用層:由用戶根據需要來自行開發,概括來說,應用層要實現的功能為:維持節點功能,發現該節點附近的其他工作節點,維護和管理多個節點之間的通信。
系統ZigBee基礎網絡的數傳模塊采用的芯片為CC2430射頻芯片,CC2430是無線 SOC(System On Chip)設計,系統所需的一般電路都已集成在芯片內部,只需簡單外圍電路就能實現信號收發功能。CC2430應用電路如圖3所示。

圖3 CC2430應用電路
電路使用非平衡天線。其中非平衡變壓器由電容C341和電感L341、L321、L331以及一個印制板微波傳輸線組成,整個結構滿足射頻輸入、輸出匹配電阻50 Ω的要求;R221和 R261為偏置電阻,電阻 R221主要用來為32 MHz的晶振提供合適的工作電流;XTAL1為32 MHz晶振,用1個32 MHz的石英諧振器和2個電容(C191和C211)構成一個32 MHz的晶振電路;XTAL2為32.768 kHz晶振,用1個32.768 kHz的石英諧振器和2個電容(C441和C431)構成一個32.768 kHz的晶振電路;電壓調節器為所有要求1.8 V電壓的引腳和內部電源供電,電容C241和C421為去耦合電容,用來電源濾波,以提高芯片工作的穩定性。本系統在終端設備和中心協調器的設計中都采用標準的10芯調試接口。調試接口使用CC2430的P2_1作為調試數據IO,P2_2作為調試時鐘,在非調試模式下這兩個IO可作為GPIO。調試接口允許片上的Flash編程,且能訪問存儲器和寄存器、設置斷點、單步運行和修改寄存器內容。當RESET_N輸入保持低電平時,如果強制調試時鐘連續經歷兩個上升沿,系統便進入調試模式。
終端設備是智能家居環境內部數據來源以及控制命令的具體執行者,如圖4所示,其主要由智能家電模塊、信號調制模塊和ZigBee數傳模塊組成。一方面,終端設備通過智能家電模塊中的傳感器單元收集家居環境的內部數據信息,通過信號調制模塊得到有用信號,然后借助無線數傳模塊將信息上傳;另一方面,終端設備可通過無線數傳模塊接收控制命令,并傳達給智能家電模塊的命令執行單元進行命令執行。

圖4 終端設備結構
中心協調器是智能家居無線內部網絡的核心,負責建立和維護網絡,并通過串口向PC機發送終端設備上傳來的數據信息,同時將控制中心傳達的命令傳達到正確的終端設備,具體結構如圖5所示。與終端設備的不同之處在于中心協調器不包含智能家電模塊和信號調制模塊,為偵聽串口接收中斷,在中心協調器硬件平臺上擴展了RS232串口。

圖5 中心協調器結構
通過 ZigBee協議棧中的 MAC_RADIO_SET_CHANEL(x)可以配置智能家居系統無線ZigBee網絡的無線信道,其中形參x為信道編號,缺省值為11頻道。在mac_radio_defs.h文件中可定義MAC_RADIO_SET_CHANEL(x)函數。
原語來啟動智能家居系統網絡的建立。由于文中采用星型網絡,所以在智能家居系統中只允許中心協調器進行初始的網絡建立。
具體過程:應用層通過 NLME_NETWORK_FORMATION.request開啟網絡建立過程。網絡層接收命令后,隨即要求MAC層進行信道掃描;MAC層完成第一次掃描后,將掃描結果回饋到網絡層,網絡層管理實體對接收到的信道按照能量值進行排序,并進一步處理,找到一條合適的信道;隨后網絡層會為這個網絡配置一個PAN標識符和一個16位的網絡地址來啟動網絡。
首先,終端設備通過NLME_NETWORK_DISCOVERY.request原語,啟動加入網絡流程。網絡層隨后發送MLME_SCAN.request,要求MAC層執行信道掃描。當MAC完成掃描后就會向網絡層管理實體回饋掃描信息。網絡層管理實體隨后發送網絡發現確認原語,將掃描到的ZigBee版本號、堆棧結構、各域網標識符、邏輯信道以及是否允許連接等信息上傳應用層。應用層決定是否加入并通過發送加入原語申請加入。此時中心協調器在收到終端設備的申請加入請求后,中心協調器通過NLME_NETWORK_JOINING.request原語向MAC層下達允許加入的命令,并通過NLME_PERMIT_JOINING.confirm原語反饋命令執行情況。加入請求原語中的PermitDuration參數是ZigBee協調器允許終端設備的連接時間,有效值范圍0x00~0xFF。當PermitDuration參數被設定在0x01到0xFE之間時,網絡層管理實體就會設定一個定時器,用來計時,以此進行連接的時間限制。在智能家居系統中通常不需要對終端設備與中心協調器的連接進行時間限制,所以這一參數通常設定為0xFF。
終端設備,通過傳感器模塊收集信息,并借助ZigBee模塊將收集來的信息上傳,當ZigBee模塊接收到控制命令時,控制模塊負責根據命令執行操作。程序流程如下:開啟電源啟動終端設備,初始化終端設備的硬件資源、并啟動協議棧、加入網絡。當設備成功加入網絡后,開始設置循環采集時鐘,當有數據包被收到后,終端設備隨即解讀數據信息,并執行命令。沒有數據包接收就進入采集過程,當發現采集數據超過限制時,按預定程序進入處理程序并向上傳達報警數據包報警,當到達循環采樣點時,系統將該時刻的采集數據上傳。
中心協調器由ZigBee模塊接收終端設備上傳來的數據信息,并通過串口線連接PC機器,將收集來的信息傳輸給中央控制服務器。流程如下:開啟電源開關啟動中心協調器,其主程序啟動。通過halBoardInit()函數初始化設備的硬件設備,系統進入網絡建立過程。當網絡建立完成之后,中心協調器進入一個無限的循環工作狀態:如果有無線電數據,就進入無線電接收數據過程,接收完成后還需要將接收來的信息,上傳到控制中心;如果沒有無線電數據接入,則判斷串口控制命令,協調器隨即開始解析命令,并向下傳達。當這兩個過程完成時,系統回到判斷是否有無線電數據的判斷過程,系統進入再一次循環。

圖6 終端設備程序流程圖
以ZigBee無線組網技術構建智能家居系統的底層基礎網絡,通過構建一種成本低廉、部署快捷的基礎無線網絡,進而降低智能家居系統的搭建成本和構建難度。此外,以此為基礎的智能家居系統還具有良好的擴展性,可根據具體的應用需求,在不同的智能家電模塊與無線數傳模塊之間實現連接,使之接入智能家居系統。

圖7 中心協調器程序流程圖
[1]侯海濤.國內外智能家居發展現狀[J].建材發展導向,2004(5):92-93.
[2]潘維琴.智能社區及家庭網絡技術研究[D].遼寧:大連理工大學,2005.
[3]高守瑋,吳燦陽.ZigBee技術實踐教程[M].北京:北京航空航天大學出版社,2008.
[4]Texas Instruments Inc.Z - Stack HAL Porting Guide[M].USA:Texas Instruments Inc,2007.
[5]Texas Instruments Inc.Z - Stack Developer's Guide[J].USA:Texas Instruments Inc,2007.
[6]Texas Instruments Inc.CC2430芯片使用手冊A Truo Seystem - on - Chipsolution for 2.4 GHz IEEE 802.15.4/Zig-Bee[M].USA:Texas Instruments Inc,2005.
Smart Home System Internal Network Based on Zigbee Technology
WANG Bo
(School of Electronic Engineering,Xidian University,Xi'an 710071,China)
In order to enhance the rapid deployment of the intelligent household system and to reduce the cost of construction,this paper presents a design scheme of the intelligent household system,in which the Zigbee wireless networking technology has been used to construct the basic internal network.On the basis of CC2430 radio chip and in virtue of some peripheral circuits,the scheme designs the hardware circuit of the terminal device and the Center Coordinator;according to the Zigbee stack,C language is used to design the communication application software for the terminal device and the Center Coordinator.
ZigBee stack;CC2430;center coordinator;intelligent household system
TN926
A
1007-7820(2012)08-114-04
2012-01-07
王博(1986—),男,碩士研究生。研究方向:物聯網。