基于ZigBee智能家居控制系統的設計
隨著無線通信技術和物聯網技術的深入發展,將無線通信技術應用在智能家居控制領域今后的發展趨勢。目前智能家居控制系統主要采用的是有線通信方式。包括串口線、以太網、同軸電纜等。有線通信方式的優點是技術成熟、傳輸可靠、速度快,但需要進行大量的布線工作,可擴展性差,成本也高。與其他短距離無線技術相比,基于ZigBee技術的無線傳感網絡以其低復雜度、低成本、低功耗等特點成為了組建智能家居控制網絡的首選方案。本文針對現有的智能家居控制系統的發展現狀,提出了一種基于ZigBee智能家居控制系統的解決方案。
本文引用地址:http://www.j9360.com/article/201610/308316.htm1 ZigBee無線通信技術簡介
ZigBee起初是由IEEE 802.15工作組提出的,并制定規范了IEEE 802.15標準。ZigBee是基于此標準規范的一種近距離、低復雜度、雙向無線通信技術,主要適合于自動控制和遠程控制領域,可以嵌入各種設備中。Zigbee技術有如下主要特點:
1)低功耗:ZigBee由于傳輸速率低,并且支持休眠模式,因此具有低碳節能的效果。經測試,在低耗電休眠模式下,用2節5號干電池可支持1個功能節點工作最長達24個月,由此在相同情況下,藍牙可工作1月左右,而WiFi工作時間僅有幾個小時,這是Zigbee的突出優勢。
2)低成本:由于ZigBee標準協議的大幅簡化,降低了對通信處理器的要求,僅需要8位處理器,主節點需要32 kB的RAM,子功能節點的4 kB的ROM即可,在很大程度上降低了芯片的成本費用。
3)短時延:的響應速度非常快,從休眠狀態喚醒,進入工作狀態僅需15 ms,ZigBee各節點連接,進入網絡只需30 ms。相比較,藍牙需要3~10 s、WiFi需要3 s。
4)數據傳輸速率低:只有10k字節/秒到250k字節/秒,專注于低傳輸應用。
5)網絡容量大:每個ZigBee網絡最多可支持255個設備。
2 系統的總體設計
2.1 系統架構設計
智能家居控制系統的設計主要包括基于ARM處理器網關服務器設計、基于ZigBee無線傳感網絡的組建、控制終端的設計,被控制終端節點的設計。系統的整體架構如圖1所示。

ARM處理器為智能家居控制系統的控制中心,智能手機和LCD觸摸屏作為控制終端,智能手機通過WiFi接入ARM控制中心,智能手機實現遠程控制,LCD觸摸屏實現本地近程
控制。ZigBee無線技術將被控終端組建成一個內部無線局域網。基于ARM家庭內部控制中心(家庭網關)接受來自遠程(智能手機)和本地(LCD觸摸屏)的控制指令,協調處理這些控制指令,來控制底層的家用設備。底層構建的基于ZigBee技術的無線局域網覆蓋燈光控制、窗簾控制、環境參數的采集、常用家電的控制。最終實現智能手機、LCD觸摸屏通過系統控制中心能實時協調控制基于ZigBee技術無線傳感網絡所覆蓋的常用家庭設備和采集環境參數。
2.2 系統組網設計
本系統是采用ZigBee無線技術組建的內部局域網絡。ZigBee定義了兩種物理設備類型全功能設備FFD(Full Function Device)和精簡功能設備RFD(Reduced Function Devi ce)。FFD支持任何拓撲結構,可以充當網絡協調器(Network Coordinator),能和任何設備通信。RFD通常只用于星型網絡拓撲結構中,不能完成網絡協調器功能,且只能與FFD通信,兩個RFD之間不能通信。但它們的內部電路比FFD少,因此實現相對簡單,也更節能。
ZigBee網絡支持3種功能設備:網絡協調器(Network Coordinator)、網絡節點(Network Node)及IEEE節點(IEEENode)。前兩種都是FFD,可以與任何節點通信。IEEE節點是RFD。
ZigBee有3種網絡拓撲結構:星型(star)、簇樹型(Cluster)和網狀網(MESH),具體采用哪種網絡拓撲結構,應考慮家庭網絡的實際情況。由于家庭電器設備分布在不同的房間,屋內墻壁等障礙物多,因此通信信號會受到干擾,在綜合成本、靈活性、可靠性等多因素的考慮,本次智能家居控制系統采用星型(Star)拓撲方式,星型(Star)拓撲具有延時時間短、操作簡單等其他網絡拓撲結構沒有的優點。星型(Star)拓撲結構如圖2所示。

3 系統硬件設計
系統控制中心(ARM處理器)采用Samsung S3C2440處理器,采用外接DM9000以太網卡與USB WIFI模塊來接入以太網與WIFI網絡,通過串口控制ZigBee協調器,同時配置了觸摸屏支持本地觸摸界面操作。被控終端子節點主要由ZigBee子節點模塊、MCU控制單元與被控終端(燈光、窗簾、家電)組成。
Atmega16單片機作為控制單元通過串口接受來自ZigBee子節點的控制指令并產生了相應的控制指令控制被控終端。ZigBee模塊的微控制器是采用TI公司的CC2530,該芯片與控制單元通過串口通信。LED調光驅動芯片采用的是P4115,它是一款連續電感電流導通模式的降壓恒流源,通過DIM引腳輸入占空比可調的PWM,便能輸出大小可調的橫流LED驅動電流,最大輸出電流可達1 A,最大能夠驅動25~30 W的LED。窗簾控制是采用步進電機,家電控制是采用紅外方式,溫度采集是采用ZigBee內部集成的溫度傳感器。系統硬件框圖與被控子節點硬件框圖如圖3所示。

4 系統的軟件設計
4.1 服務器的設計
基于ARM平臺的控制系統移植了Linux操作系統,因此服務器的設計是基于Linux平臺的服務器的設計。由于Linux內核代碼開源、內核可裁剪,因此Linux成為嵌入式平臺操作系統的首先。Linux是類Unix系統,它繼承了Unix強大的功能和極佳的穩定性,并降低了對硬件環境的要求。由于Linux的設計者重新改寫了TCP/IP協議,因此Linux具有更為穩定和靈活的網絡性能。
服務器設計技術有很多,按使用的協議來分有TCP服務器和UDP服務器。按處理方式來分有迭代服務器和并發服務器。一個好的服務器,一般都是并發服務器。本系統也是設計成并發服務器。在客戶端朋艮務器模式中,將請求服務的一方稱為客戶(client),將提供某種服務的一方稱為(server)。本系統就是采用的這種客戶、服務器(C/S)模式。服務器接受來自客戶端的控制指令后通過串口寫相應的指令Zigbee協調器。服務器是應用select模型實現的TCP并發服務器,服務器軟件流程圖如圖4所示。

4.2 被控終端軟件的設計
被控終端主要由ZigBee子節點模塊、MCU控制單元與被控終端組成。控制終端發送控制指令,經過服務器通過Zigbee協調器轉發給相應的Zigbee子節點。Zigbee子節點通過串口寫相應的指令給Atmega16單片機,單片機分別實現特定的功能(控制燈光、家電、窗簾)。控制終端單片機的工作流程圖如圖5所示。

5 系統測試與分析
5.1 基于ZigBee的組網測試
基于ZigBee協議成功組建了一個星型網絡,一個協調器,3個子節點(網絡節點、IEEE節點)。協調器負責組建網絡,子節點接入網絡后實現與協調器之間通信。通過串口助手對協調器與網綹節點之間的數據收發進行了測試。子節點接受數據時網絡通信方式為廣播方式,協調器每隔100 ms發送一字節數據給網絡節點。協調器接受數據時,網絡通信方式為點播方式,節點每隔100 ms向網絡協調器發送一字節數據。測試結果如表1所示。

5.2 系統的聯合測試
啟動Mini2440系統板(系統控制中心)并運行服務器程序和QT界面控制程序,啟動ZigBee協調器和子節點并連接與子節點相連接的被控終端,啟動客戶端程序。整個系統能穩定協調運行。服務器能準確接收來自客戶端所發送的控制指令并寫相應的指令到與Mini2440開發板串口相連接的ZigBee協調器。

服務器運行情況如圖6所示。QT界面程序能實現對常用設備的本地控制,QT控制界面如圖7所示。主控制界面如圖7(a)所示,燈光控制界面如圖7(b)、家電控制界面如圖7(c)
所示。

6 結論
本文基于ZigBee無線通信技術、以ARM處理器為控制中心提出了一種智能家居的整體架構和解決方案。在ARM平臺上搭建一個并發服務器和一個QT界面程序。能協調接受來自智能手機和LCD觸摸屏發來的控制指令并且正確控制相應的被控終端。達到了智能家居控制系統控制智能、方便、可擴展性好等優點。通過實際測試系統比較穩定,人機界面友好,達到了設計要求。由于篇幅有限相關基于安卓平臺的客戶端程序的開發、組網設計、終端設計等技術細節就沒敘述。
評論