基于Zigbee技術的室內照明系統(tǒng)設計研究
1. 引言
隨著科技的進步,人們對通信技術的要求也不斷增長,短距離無線通信技術也隨之產生。
如今,各種短距離無線通信技術層出不窮,其中較為成功并且應用比較廣泛的有Bluetooth(藍牙)、ZigBee、Wi-Fi、WiMAX、無線USB 和UWB 等。
ZigBee 的協(xié)議構架是建立在IEEE 802.15.4 標準基礎之上的。IEEE 802.15.4 標準定義了ZigBee 物理層(PHY)和媒體訪問控制層(MAC);ZigBee 聯(lián)盟則定義了ZigBee 協(xié)議的網絡層(ZWK)、應用層(APL)和安全服務規(guī)范。作為一種新興的低速率無線通信技術,ZigBee 技術擁有著速率低、功耗小、成本低、免許可無線通信頻段、近距離通信、時延短、數據傳輸可靠和組網方式多樣等多種技術特點,這些特點使ZigBee 技術很適合應用到工業(yè)控制、智能家居、醫(yī)療護理、智能農業(yè)、消費類電子和遠程控制等領域。目前,藍牙技術復雜,應用系統(tǒng)費用較高,功耗高,電池供電壽命短,在其無法突破價格瓶頸的情況下,ZigBee 技術將擁有更加廣闊的應用前景。
本文按照ZigBee 協(xié)議規(guī)范的要求,設計了一套適用于智能家居網絡的室內照明自動控制系統(tǒng)。該系統(tǒng)能夠準確地實現(xiàn)對室內各照明器件的遠程控制,并可通過監(jiān)測室內光線的變化調整電燈的開斷,實現(xiàn)對照明的智能控制,同時也使控制系統(tǒng)的可靠性和靈活性得到提高。
2. 基于Microchip ZigBee 協(xié)議棧的室內照明自動控制系統(tǒng)結構
本文所介紹的室內照明自動控制系統(tǒng)是 ZigBee 技術在智能家居中的一種典型應用。
Microchip ZigBee 協(xié)議棧是在ZigBee 無線協(xié)議規(guī)范的基礎上定義的,但它不完全符合ZigBee 協(xié)議,不支持群集和點對點網絡,沒有安全和訪問控制功能,沒有路由器功能,也不支持一對多綁定。使用Microchip ZigBee 協(xié)議棧設計ZigBee 節(jié)點,需要具備的硬件條件至少要包括一個帶有SPI 串口的PIC18F 單片機,一個帶有所需外部元件的RF 收發(fā)器,一根天線,可以是PCB 上的引線形成的天線或單極天線。
系統(tǒng)構建的是一個星狀網絡,即由一個協(xié)調器節(jié)點和若干終端節(jié)點構成的主從網絡。最先啟動的FFD(全功能設備)自任PAN 協(xié)調器,并選擇一個和其覆蓋區(qū)域內的其它PAN不同的標識符作為自己的PAN 標識符。通常在其工作區(qū)域內不存在其它PAN 時,PAN 標志符設置為0。協(xié)調器可以允許其它FFD 和RFD(精簡功能設備)加入網絡。在星狀網絡中,協(xié)調器節(jié)點和終端節(jié)點之間可以相互發(fā)送或者接收數據,但兩個終端節(jié)點之間不能進行直接通信,如果一個終端節(jié)點要向另一個終端節(jié)點發(fā)送數據,只能通過協(xié)調器這個中間媒介完成。
依照Microchip ZigBee 協(xié)議棧的開發(fā)要求,我們設計了一個可以移植Microchip ZigBee協(xié)議棧的室內照明自動控制系統(tǒng),系統(tǒng)的結構框圖如圖1 所示。
其中協(xié)調器節(jié)點和所有終端節(jié)點共同構成了ZigBee 無線通信網絡。協(xié)調器節(jié)點的作用是建立一個網絡,并為加人到網絡中的節(jié)點分派網絡地址,同時還負責通過串口和上位機進行通信,各個終端節(jié)點則是為了實現(xiàn)具體的開關電燈的功能,并將工作的結果反饋給協(xié)調器節(jié)點。上位機除了實時監(jiān)控網絡工作狀況外還起到家庭網關的作用,即可以提供各種遠程智能控制接口,在家庭內部的ZigBee 網絡和Internet 之間建立起一種連接,使用戶可以用一臺連接到Internet 上的PC 機控制家里的電器設備。
圖1照明控制系統(tǒng)結構示意圖
3. 系統(tǒng)節(jié)點的硬件設計
設計選用 Microchip 公司的PIC18LF4620 單片機作為控制器,射頻收發(fā)器部分采用TI公司的CC2420 射頻模塊。控制器通過SPI 總線和一些離散控制信號與射頻模塊相連,控制器充當SPI 主器件,而射頻模塊充當從器件??刂破鲗崿F(xiàn)了IEEE 802.15.4 MAC 層和ZigBee協(xié)議層,射頻模塊CC2420 則實現(xiàn)了IEEE 802.15.4 物理層和一些MAC 層功能。圖2 為終端節(jié)點的結構框圖:圖3 為協(xié)調器節(jié)點的結構框圖:
圖2 終端節(jié)點的結構框圖
圖3 協(xié)調器節(jié)點結構框圖
PIC18LF4620 單片機和CC2420 射頻模塊的接口電路如圖4 所示:
圖4 PIC 單片機與射頻模塊接口電路
終端節(jié)點控制器通過CC2420 射頻模塊接收來自協(xié)調器節(jié)點的數據,并按照協(xié)調器節(jié)點的指示,完成對繼電器控制,從而實現(xiàn)室內各個電燈開關狀態(tài)的轉換。
終端節(jié)點可以通過光敏電阻監(jiān)視室內光線的變化,當光線亮度超過某一特定值時,控制器將檢測到來自于光敏電阻的輸出信號的變化,并將這種變化告訴協(xié)調器。協(xié)調器收到信號后會重復前面的操作完成對電燈的開關動作。這種設計適用于墻角落地燈。
協(xié)調器節(jié)點通過鍵盤上的按鍵發(fā)送控制信號,開斷相應終端節(jié)點上的繼電器從而控制電燈的亮滅,并通過RS232 串口將收到的從節(jié)點信號反饋給主節(jié)點。液晶顯示屏用來顯示各個終端節(jié)點的工作狀態(tài)。
4. 系統(tǒng)節(jié)點的軟件設計
這里涉及到一個端點綁定的概念。一個ZigBee 節(jié)點最多可以支持32 個端點(編號0~31)和8 個接口(編號0~7)。端點0 被保留用于設備配置,而端點31 被保留僅用于廣播。剩下的30 個端點被用于應用。每個端點總共有8 個接口,這樣應用在一個物理信道中最多能有240 條虛擬信道。協(xié)調器節(jié)點負責建立并維護一個描述各個端點之間邏輯鏈路的綁定表,并通過源端點和群集ID 來唯一定義一條數據鏈路。在本照明系統(tǒng)中,我們給每一個終端節(jié)點上的繼電器和協(xié)調器上的按鍵都分配一個在節(jié)點內唯一的端點號,并用這個端點號來對這些應用對象進行標記,通過端點綁定的方法在終端節(jié)點中的繼電器和協(xié)調器上的不同按鍵之間建立聯(lián)系,協(xié)調器節(jié)點將各個開關端點發(fā)送的數據包發(fā)送到相應的端點,從而實現(xiàn)協(xié)調器節(jié)點對分布在室內的各個電燈的控制。
4.1 終端節(jié)點軟件設計
終端節(jié)點的任務主要是接收來自協(xié)調器的數據并根據這些數據對相應的電燈執(zhí)行開關操作,并將操作的結果反饋給協(xié)調器節(jié)點。終端節(jié)點上點電后掃描所有可用信道來尋找臨近協(xié)調器,申請加入此網絡。由于選用電池供電,因此要保證終端節(jié)點的低功耗,設計中采用定時喚醒的方式連接服務器,接收和發(fā)送數據,其它時間則進入休眠模式,以達到終端節(jié)點的功耗最低。終端節(jié)點的程序流程圖如圖5 所示。
圖5 終端節(jié)點系統(tǒng)流程圖
4.2 協(xié)調器節(jié)點軟件設計
作為網絡協(xié)調器,其功能主要分為兩個部分,即建立網絡和進行網絡管理。ZigBee 協(xié)調器主要負責建立ZigBee 網絡,分配網絡地址和維護綁定列表。協(xié)調器通過掃描一個空閑信道來創(chuàng)建一個新網絡,維護一個目前連接設備的網絡列表,支持獨立掃描程序來確保以前的連接設備能夠重新加入網絡
評論