基于Zigbee協(xié)議的OSGi無線家庭網關設計
摘要:設計基于OSGi標準和Zigbee無線通信協(xié)議的分布式家庭網關.首先提出基于Zigbee家庭網絡的無線組網方案 同時提出無線家庭網關的硬件實現方案,并給出基于OSGI標準的軟件開發(fā)的步驟。最后分析了家庭網關的實際應用。
1 引言
隨著internet的普及和數字家庭的深人人心.消費電子、計算機、通信3c一體化趨勢日益明顯,家庭網絡化已經成為家庭現代化的潮流。家庭網絡可看作當作一種分布式網絡,普通家電通過嵌入網絡接口和能實現本地控制的I/O口,成了網絡用具(Internet Personal Appliances),通過家庭網關實現網絡用具的遠程控制.采用基于IEEE802.15.4標準的Zigbee協(xié)議,真正實現寬帶網絡家庭的最后一公尺延伸,使家庭組網更加便捷。
2 家庭網絡總體設計
2.1家庭網絡的結構
圖1是家庭網絡的總體結構。其中家庭網關是家庭網絡的核心,是連接家庭中彼此孤立分散的子網或網絡用具、實現信息的交互和共享,并將家庭內網和外部網連接,實現內外網絡互通和鑒權的設備。
實現家庭內部組網方面,本系統(tǒng)采用Zigbee無線通信標準。網關采用GPRS無線方式連接外部網絡,同時預留RJ45接口。網關全部采用無線通信方式,可以避免家庭布線的繁瑣,方便了網關在家庭中的布置,同時使這種網關不僅能夠應用于家庭,也能應用在車載等移動系統(tǒng)。
2.2 Zigbee協(xié)議概述
Zigbee是基于802.15.4標準開發(fā)的關于組網、安全和應用軟件方面的技術標準。Zigbee協(xié)議包括高層應用規(guī)范(profile)、匯聚層、網絡層、數據鏈路層和物理層。其中數據鏈路層和物理層標準由IEEE802.15.4負責制定,網絡層以上由Zigbee聯(lián)盟制定。
Zigbee技術一開始就是被設計用來構建包括恒溫裝置、安全裝置、家用電表等小型設備的無線網絡。作為家庭網絡的組網節(jié)點,覆蓋范圍在10m~75m,具有低功耗特性,同時協(xié)議實現簡單且免收專利費,工作頻段為免執(zhí)照頻段等。Zigbee技術的這些特點彌補了低成本、低功耗和低速率無線通信市場的空缺,豐富和便捷的應用為家庭網絡化提供了很好的實現手段。值得一提的是,低能耗和極低的時延是藍牙等無線技術所不能比擬的。
2.3 網絡用具
對于網絡用具,目前還沒有統(tǒng)一的標準,IETF草案中按功能把它分成胖網絡用具(fat IPA)和瘦網絡用具(thin IPA)。功能較復雜的胖網絡用具定義為:IPA=[network interface][application control][I/O control],即具備網絡接口和本地系統(tǒng)控制的I/O端口,同時具備嵌入式應用程序的家用設備.如網絡冰箱、網絡空調、家庭多媒體系統(tǒng)等需要實現復雜控制功能;如燈、門等實現相對簡單的控制功能,需網絡接口和I/O控制端口.屬于瘦網絡用具。網絡用具和普通家用設備的區(qū)別主要在于有沒有網絡接口.能否實現網絡控制。
3 家庭網關的設計
設計家庭網關是本系統(tǒng)的關鍵。特別地.作為家庭網絡建設的核心.家庭網關的設計思路已經提了不少.本節(jié)將主要從j個方面作一些探討。
3.1基于OSGi的分布式網關模型
開放服務網關起始(OSGi)是OSGi組織制定的一個面向網絡開放服務的規(guī)范(specification).基于這個規(guī)范開發(fā)的OSGi框架(Framework)可以部署在嵌入式設備中.框架是具有管理服務和升級服務等功能的網關設備軟件平臺。它的實現是以java技術為基礎.具備了java平臺獨立等各種優(yōu)點,可以獨立于不同的制造商.通過API整合不同的標準.具有跨平臺和良好的兼容性,為實現不同通信技術并存和支持多種設備互連奠定基礎。本系統(tǒng)網關系統(tǒng)構架設計部署如下圖2:
OSGi框架是OSGi服務平臺的核心.是通過java類和java API實現的一些功能集,它負責實現各種服務集(bundles)的實時部署、管理和維護工作.通過對服務集的控制來實現網關的各種功能。服務集是服務的實現載體,OSGi框架和其它所有的功能都是以服務集的方式通過java類和API實現。通過UPnP(Universal Plug and Play)技術可使網絡用具的部署變得非常方便。當網絡用具和家庭網關在物理層連接后,OSGi框架的設備管理器就會檢測到設備服務注冊,然后借助驅動定位器和驅動選擇器從網絡或本地下載能跟設備匹配的驅動程序。這樣.當用戶想在家里添置網絡設備時,無需手動安裝驅動程序就可以實現設備的“網絡即插即用”把家庭網絡設計成分布式,具有很多優(yōu)勢.外部網絡只要訪問家庭網關,就可以透明地訪問不帶IP的家庭網絡用具,同時也解決了家庭網絡用具之問互操作性問題。
3.2網關硬件實現方案
無線家庭網關由微控制器、GPRS模塊和Zigbee射頻通信模塊三部分組成.硬件模塊連接如下圖3。
控制器采用三星公司的ARM9微處理器S3C2410X為主CPU.它是Samsung公司推出的基于ARM9TDMI核.精簡指令系統(tǒng)的16/32位高速微處理器。以S3C2410X為核心.外圍擴展一系列功能模塊,GPRS模塊采用Siemens公司的TC35終端,通過串口與CPU相連.實現與internet連接。外部網絡可以通過web方式訪問家庭網絡.查詢和控制家庭內部網,同時也通過RJ45網絡有線連接外網:Zigbee射頻收發(fā)模塊采用Chipcon AS公司的CC2420芯片.控制家庭網內具備Zigbee標準接口的家庭用具。在家電控制器上加載Zigbee無線模塊.通過UPnP技術.網絡用具就成為家庭分布式網絡的一個節(jié)點。
3.3軟件平臺軟件開發(fā)步驟
S3C2410X集成了內存管理單元.可以嵌入多種主流操作系統(tǒng)。在這個系統(tǒng)中.家庭網關采用免費的嵌入式Linux操作系統(tǒng)。Linux源代碼的開放性對程序開發(fā)者來說很容易實現系統(tǒng)的裁減和再開發(fā).也方便java技術的移植,可以大大地提高系統(tǒng)開發(fā)的效率。
系統(tǒng)開發(fā)和部署如下:
(1)在主機上安裝Linux嵌入式編譯和開發(fā)環(huán)境.如安裝交叉編譯工具鏈.采用eclipse作為IDE;
(2)下載CDC及其profile.本系統(tǒng)采用Personal Profile;同時下載OSGi Framework.本系統(tǒng)選用基于OSGi R3的Oscar框架;
(3)裁減Linux嵌入式操作系統(tǒng).并修改相應的配置文件.交叉編譯Linux的內核和組件.生成操作系統(tǒng)鏡像文件.通過bootloader把鏡像文件下載到目標系統(tǒng)中;
(4)在PC上交叉編譯CVM和OSGi Framework,然后通過ftp把編譯文件移植到目標板;
(5)按照需求編寫相應的bundle服務應用程序、圖形用戶管理程序等.編譯并下載到目標系統(tǒng)。
當然.根據具體的應用還可以添加一些服務程序??傮w來說.嵌入式系統(tǒng)的裁減移植和bundle的實現是重點和難點.在開發(fā)過程當中需要仔細的調試和分析測試。下面介紹一下http bundle的部分偽代碼實現:
package org.osgi.service.http;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse
……
//定義HttpContext接口,servlet和資源通過這個接口進行注冊
public abstract interface HttpContext{
public abstract boolean handleSecurity(HttpServletRequest
request,HttpServletResponse response)
throws IOException;
//定義接口方法和屬性等
}
//定義HttpService,其它bundle的資源和servlet
都是通過這個接口被動態(tài)注冊和加載到OSGi
public abstract interface HttpService{
//定義servlet和資源注冊處理方法和屬性
……
}
在開發(fā)完成后,還應該對系統(tǒng)總體進行規(guī)劃,去除不必要的程序模塊,對硬件進行制板封裝。
4 應用前景
家庭網關的應用將是大量的.它可以應用于家庭網、樓宇自動化、車載系統(tǒng)、小型辦公室等,具有布置美觀方便,無須專業(yè)人員維護等優(yōu)點,必將在未來社會信息化進程中發(fā)揮獨特的作用。有調查研究表明,一個家庭擁有幾臺電腦將會普遍存在,這樣家庭網關將發(fā)揮不可替代的作用,家庭網關式的Internet的家庭寬帶接人和家庭設備共享將成為主流。另外,家庭網關在車載系統(tǒng)等方面的應用前景也廣闊的,它可以應用于車載導航、監(jiān)控、多媒體等,例如BMW 公司的X5系列汽車采用OSGi實現了導航,MP3音樂下載等各種功能,駕駛者可透過無線通訊技術與PDA結合,可以享受上網瀏覽或是接收郵件等服務。
5 結束語
采用Zigbee協(xié)議組建無線局域網絡具有很大的優(yōu)勢,利用CC2420芯片開發(fā)短距離射頻傳輸模塊成本低、功耗小,并配合基于Java技術的OSGi框架,使網絡用具對家庭網絡即插即用,同時家庭外部網絡訪問內部網絡具有透明性。
評論