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