基于ZigBee的無線智能家庭網(wǎng)關(guān)控制技術(shù)研究
摘要:設(shè)計一種新型的基于ZigBee技術(shù)的智能無線網(wǎng)關(guān)控制系統(tǒng),以S3C2410為平臺,采用Linux操作系統(tǒng),實現(xiàn)智能家庭網(wǎng)關(guān)與終端設(shè)備的無線連接;重點研究了該系統(tǒng)的組成、系統(tǒng)的軟硬件設(shè)計,以及利用ZigBee技術(shù)實現(xiàn)對終端設(shè)備的控制。
關(guān)鍵詞:家庭網(wǎng)關(guān);無線;ZigBee;Linux操作系統(tǒng)
引言
隨著網(wǎng)絡(luò)技術(shù)和現(xiàn)代通信技術(shù)的發(fā)展,家庭網(wǎng)絡(luò)化已經(jīng)成為家庭現(xiàn)代化的趨勢。家庭網(wǎng)絡(luò)可視為一種分布式網(wǎng)絡(luò),通過無線家庭網(wǎng)關(guān)實現(xiàn)對普通家電終端的遠(yuǎn)程控制是未來的發(fā)展趨勢,岡此無線家庭網(wǎng)關(guān)是整個家庭網(wǎng)絡(luò)的核心,它主要實現(xiàn)網(wǎng)絡(luò)接入、遠(yuǎn)程控制以及無線連接家庭內(nèi)部異構(gòu)子網(wǎng)等功能。其中無線網(wǎng)關(guān)控制技術(shù)是一個需要解決的關(guān)鍵問題。
目前無線控制技術(shù)主要有IrDA、ZigBee、無線USB、藍(lán)牙、Z-Wave。在以上技術(shù)中,IrDA技術(shù)最具有成本優(yōu)勢且協(xié)議簡單,但傳輸方向單一,不能組網(wǎng)。WirelessUSB的成本較高,主要用于傳輸高速多媒體數(shù)據(jù),不適合智能家庭的控制應(yīng)用。藍(lán)牙技術(shù)主要用于傳輸語音,如果將其應(yīng)用在智能家庭網(wǎng)關(guān)控制,將帶來傳輸距離受限和控制協(xié)議復(fù)雜等問題。Z-Wave是從ZigBee標(biāo)準(zhǔn)中精簡而來,但該技術(shù)目前尚不支持全球通用的2.4 GHz頻段。ZigBee技術(shù)在傳輸距離、可靠性以及組網(wǎng)能力方面都極具優(yōu)勢,本文利用ZigBee技術(shù)對智能無線家庭網(wǎng)關(guān)控制技術(shù)進(jìn)行研究。
1 無線智能家庭網(wǎng)關(guān)控制技術(shù)的結(jié)構(gòu)設(shè)計
1.1 家庭網(wǎng)關(guān)組網(wǎng)技術(shù)的選擇
ZigBee技術(shù)是一種新興的遠(yuǎn)距離、低復(fù)雜度、低功耗、低數(shù)據(jù)速率、低成本的雙向無線通信技術(shù)。ZigBee技術(shù)的低數(shù)據(jù)速率特點,適合于承載數(shù)據(jù)流量較小和QoS的要求不高的業(yè)務(wù),因此,ZigBee技術(shù)是最適合智能家居系統(tǒng)的組網(wǎng)技術(shù)。對于智能家居系統(tǒng)來說,該網(wǎng)絡(luò)自身是一個動態(tài)系統(tǒng),不斷與外界環(huán)境相互影響,網(wǎng)絡(luò)中傳輸?shù)臄?shù)據(jù)量不大,網(wǎng)絡(luò)節(jié)點多,要求低功耗,因此家庭無線網(wǎng)關(guān)利用ZigBee技術(shù),其拓?fù)浣Y(jié)構(gòu)采用星型結(jié)構(gòu)組網(wǎng)。
1.2 家庭網(wǎng)關(guān)的無線組網(wǎng)設(shè)計
基于ZigBee技術(shù)的家庭網(wǎng)關(guān)系統(tǒng)結(jié)構(gòu)框圖如圖1所示,家庭網(wǎng)關(guān)和若干個無線通信ZigBee節(jié)點模塊組成星形結(jié)構(gòu)的家庭傳輸網(wǎng)絡(luò)。家庭網(wǎng)關(guān)是網(wǎng)絡(luò)協(xié)調(diào)器,它主導(dǎo)網(wǎng)絡(luò)的建立,監(jiān)督網(wǎng)絡(luò)的正常運行,配置存儲空間,實現(xiàn)網(wǎng)絡(luò)初始化、數(shù)據(jù)采集、設(shè)備控制等功能。另外,它配置16位本地地址給設(shè)備以節(jié)省帶寬。其他的無線通信ZigBee模塊只能與家庭網(wǎng)關(guān)之間進(jìn)行通信,實現(xiàn)狀態(tài)采集、查詢響應(yīng)、設(shè)備控制等。智能家庭網(wǎng)關(guān)是一個智能的嵌入式網(wǎng)絡(luò)系統(tǒng),包括硬件和軟件兩部分。
1.3 智能家庭網(wǎng)關(guān)硬件結(jié)構(gòu)設(shè)計方案
硬件部分需要提供多種多樣的網(wǎng)絡(luò)接口類型與控制接口,主要由主控制器、GPRS模塊和ZigBee射頻通信模塊3部分組成,其結(jié)構(gòu)框圖如圖2所示。
主控制器CPU控制各種各樣的接口,包括以太網(wǎng)接口、USB接口、ADSL接口、WLAN接口等。主控制器采用三星公司的ARM9微處理器S3C24-10X,它具有外圍擴(kuò)展功能模塊,能夠?qū)崿F(xiàn)高速處理。GPRS模塊采用Siemens公司的TC35終端,通過串口與CPU相連,實現(xiàn)與Internet。的連接。ZigBee射頻收發(fā)模塊采用Chipcon AS公司的CC2420芯片.控制家庭網(wǎng)內(nèi)具備ZigBee標(biāo)準(zhǔn)接口的家用電器。在家電控制器上加載ZigBee無線通信模塊成為家庭分布式網(wǎng)絡(luò)的終端設(shè)備。
2 無線智能家庭網(wǎng)關(guān)控制技術(shù)的實現(xiàn)
在選定了家庭網(wǎng)關(guān)的硬件平臺后,家庭網(wǎng)關(guān)便有了自己的物理載體,但僅僅是硬件部分,并不能實現(xiàn)家庭網(wǎng)關(guān)所應(yīng)具有的功能,還需要有建立在硬件平臺之上的軟件控制系統(tǒng)。
2.1 智能家庭網(wǎng)關(guān)系統(tǒng)的選用
家庭網(wǎng)關(guān)采用嵌入式Linux操作系統(tǒng)進(jìn)行開發(fā),包括與硬件相關(guān)的底層驅(qū)動軟件、系統(tǒng)內(nèi)核、設(shè)備驅(qū)動接口、通信協(xié)議、圖形界面等。操作系統(tǒng)主要實現(xiàn)以下功能:
①建立交叉編譯環(huán)境。
②引導(dǎo)裝載程序(Bootloader),能實現(xiàn)系統(tǒng)的快速引導(dǎo),提供瞬間開機(jī)功能;負(fù)責(zé)將Linux內(nèi)核加載到內(nèi)存,并將控制權(quán)交給內(nèi)核初始化程序。
③Linux內(nèi)核(kernel)的移植與裁減。Linux內(nèi)核采用模塊化的組織結(jié)構(gòu),通過增減內(nèi)核模塊的方式來增減系統(tǒng)的功能,正確合理地設(shè)置內(nèi)核的功能模塊,只編譯系統(tǒng)所需功能的代碼,以獲得更高的運行速度。
④裝載文件系統(tǒng)(file system)。嵌入式系統(tǒng)一般不具備硬盤等大容量存儲體,而用Flash為主存儲器,其文件系統(tǒng)也具有特殊性。
⑤開發(fā)圖形用戶界面(GUI)。
⑥選擇上層應(yīng)用程序(applieation)。
2.2 智能家庭網(wǎng)關(guān)軟件結(jié)構(gòu)的設(shè)計
智能家庭網(wǎng)關(guān)采用分層軟件設(shè)計結(jié)構(gòu),如圖3所示。在整個軟件框架中,位于底層的是各類硬件驅(qū)動程序,通過嵌人式Linux操作系統(tǒng)實現(xiàn)底層硬件設(shè)備的驅(qū)動與管理。嵌入式Linux操作系統(tǒng)之上是針對設(shè)計需要而移植的TCP/IP協(xié)議與ZigBee通信協(xié)議。協(xié)議層之上為應(yīng)用程序?qū)樱渲邪╓eb、CGI程序與嵌入式用戶圖形系統(tǒng)QT和一些其他的嵌入式應(yīng)用程序。其中嵌入式web服務(wù)器,提供了全中文的Web管理界面,用于家庭網(wǎng)關(guān)的遠(yuǎn)程訪問和管理,QT是基于本地LCD的一個強(qiáng)大的圖形界面系統(tǒng),實現(xiàn)在家庭內(nèi)部通過ZigBee對家電終端的訪問和控制。
2.3 ZigBee通信控制的實現(xiàn)
(1)智能家庭網(wǎng)關(guān)與終端設(shè)備通信連接的建立
在家庭網(wǎng)關(guān)硬件平臺的ZigBee適配器與終端設(shè)備之間建立的無線通信連接,是基于無線替代有線而建立的無線信道連接,它與實際的串行連接并沒有太大的差別。這樣,在Linux下利用先前移植的ZigBee工具包,完成家庭網(wǎng)關(guān)硬件平臺上無線適配器與終端設(shè)備之間的配對與連接后,就可以以操作設(shè)備文件的方式對這條無線信道的串行連接進(jìn)行操作,在本地實現(xiàn)對終端設(shè)備的通信和控制。主要包括兩個方面的內(nèi)容:一個是網(wǎng)關(guān)發(fā)送的控制指令要通過ZigBee發(fā)送到終端設(shè)備,另一個是終端設(shè)備反饋給家庭網(wǎng)關(guān)的狀態(tài)數(shù)據(jù)也要通過ZigBee的方式發(fā)送給家庭網(wǎng)關(guān)。通信過程的結(jié)構(gòu)框圖如圖4所示。
按照需求編寫相應(yīng)通信控制程序、編譯并下載到目標(biāo)系統(tǒng)。這些程序要遵循通信協(xié)議。
(2)通信連接過程的部分實現(xiàn)代碼
3 總結(jié)
本文利用ZigBee技術(shù),以S3C2410為平臺,采用Linux操作系統(tǒng),對無線智能家庭網(wǎng)關(guān)與設(shè)備終端之間控制技術(shù)進(jìn)行分析,并對硬件結(jié)構(gòu)和軟件實現(xiàn)進(jìn)行了設(shè)計。該智能家庭無線網(wǎng)絡(luò)控制系統(tǒng)具有穩(wěn)定性好,實時性強(qiáng),控制距離遠(yuǎn),協(xié)議簡單等特點,克服了目前家庭網(wǎng)關(guān)的一些缺點。