如何實現將無線傳感器網絡升級到 ZigBeePRO
作者:深圳無線龍科技
嵌入式無線高級工程師 吳線
關鍵詞: 無線傳感器網絡 ZigbeePro ZigBee2007 WSN
ZigBee 技術日趨完善
ZigBee 技術是一種工作在 900MHZ 和 2.4GHZ 頻段的新興無線網絡技術,具有中等通訊距離( 10 米 到數百米),比較靈活經濟的通訊速率( 40Kbps 到 250Kbps ),并且有星狀,網狀( MESH ),樹狀等多種網絡拓撲,低的功耗等特點,所以在當今無線通訊技術和無線網絡技術領域,占用重要的一席之地,圖一描述了以監(jiān)視和控制為主要應用方向的 ZigBee 技術,在當今新興無線網絡技術中的位置。
圖 1 ZigBee 在新興無線網絡技術中的位置
ZigBee 技術誕生后,經歷了一個不斷完善的成長過程,其核心技術是軟件協(xié)議棧,從 2004 年 2 月的第一個版本 ZigBee2004 ,到 2007 年開發(fā)完成的 ZigBee2007 , ZigBeePro ,歷時 4 年,不斷完善和不斷改進,在網絡可靠性,網絡容量,低功耗,抗干擾等多個方面,技術日趨完善。
圖 2 是 ZigBee 協(xié)議棧升級的歷史
與ZigBee2004、ZigBee2006相比較, ZigBee2007/Pro進行了如下技術上的完善和改進:
l ZigBee 2007/Pro 是工業(yè)級和商業(yè)級協(xié)議棧
l ZigBee 2007/Pro 適合于大型網絡(超過 1000 個節(jié)點的大型無線傳感器網絡)
l ZigBee 2007/Pro 改進了路由方式,是路由更加可靠,路由表格更加節(jié)省內存。
l ZigBee 2007/Pro 增加了高級跳頻技術,具有超強網絡抗干擾能力。
l ZigBee 2007/Pro 可以分包傳輸長數據包。
l ZigBee 2007/Pro 提供商業(yè)級的加密通訊。
ZigBee2007 規(guī)范定于了兩套高級的功能指令集( feature set ):分別是 ZigBee 功能命令集和 ZigBeePro 功能命令集。( ZigBee2004 和 2006 都沒有和不兼容這兩套新的命令集)。
ZigBee 協(xié)議棧模式 (Stack Profile 1) 是 2006 發(fā)布,目標是消費電子產品和燈光商業(yè)應用環(huán)境,設計簡單,使用在少于 300 個節(jié)點的網絡。
ZigBeePro 協(xié)議棧模式 (Stack Profile 2) 發(fā)布在 2007 年目標是商業(yè)和工業(yè)環(huán)境,支持大型網絡, 1000 個以上網絡節(jié)點,相應更好的安全性。
圖 3 是 ZigBee2007 協(xié)議棧的新結構
升級到 ZigBee 2007/PRO 對無線單片機的硬件要求
ZigBee 無線網絡的基本部件包括協(xié)調者( coordinator )路由器 (router) 和終端節(jié)點 ( end device) ,這些基本部件的核心都是一個完整的,具有 IEEE802.15.4 標準無線收發(fā)器和微處理器(單片機)的片上系統(tǒng) SoC( 也稱為無線單片機 ) ,由于 ZigBee2007 和 ZigBeePro 軟件協(xié)議棧比較復雜,需要較大的內存空間和較大的運算處理能力,所以,需要無線單片機具有這樣的能力,才能升級到 ZigBee 2007/Pro 協(xié)議棧,表一是部分可以升級到 ZigBee2007/Pro 的無線單片機系統(tǒng)。
目前市場上的一些無線單片機由于設計定位和推出時間等原因,不能升級到 ZigBee 2007 和 ZigBeePro ,對于 8051 內核的 8 位無線單片機,如果閃存少于 128K ,一般不能不能升級到 ZigBee 2007 ( 例如 CEL 公司最近推出的具有 8051 內核的 ZIC2410 無線單片機,內存只要 96K ,所以不能升級到 ZigBee2007) , 另外采用 TINY OS 和 CC2420 組成的系統(tǒng),由于缺乏 TI 和 FREESCALE 公司的支持,也很難很快升級到 ZigBeePro 協(xié)議棧。
將無線傳感器網絡升級到 ZigBee PRO 的具體步驟
當你選擇了具有升級能力的 ZigBee 無線單片機系統(tǒng)后,升級你的無線傳感器網絡系統(tǒng)到功能強大的最新 ZigBeePro 協(xié)議棧,是一件不困難的事情,這是因為 FREESCALE 和 TI 公司強大的技術開發(fā)團隊,已經將 ZigBee2007 和 ZigBeePro 的龐大的而且復雜的技術規(guī)范,做成了完整的軟件代碼包和容易使用的 API 命令,各種直觀的表演和測試軟件,讓任何熟悉單片機的工程師,都很容易上手和入門。
下面,讓我們來看看一個典型升級的過程:
第一步,你需要去 Freescale 公司和 TI 公司網站,下載完整的 ZigBeePro 協(xié)議棧包裝,可能有幾十兆的大小,可能需要簡單的注冊,但是都是完全是免費使用的。
第二步,你需要選擇一個具有 ZigBeePro 開發(fā)能力的開發(fā)系統(tǒng),表 1 列出了部分系統(tǒng),使用國產化的開發(fā)系統(tǒng),最大的好處在于可以方便的獲得技術支持和服務。圖四是一個典型的深圳無線龍科技公司生產的 ZigBeePro 開發(fā)系統(tǒng)。
圖 4 典型的 ZigBeePRO 國產化開發(fā)平臺
第三步,你需要下載編譯調試工具,表 1 的列出系統(tǒng)都是使用 IAR 公司的強大開發(fā)平臺,你可以到 IAR 公司網頁下載評估版和快速開始評估系統(tǒng),都是免費的。安裝這些系統(tǒng)是非常容易的事情。
第四步,編譯和調試,從 IAR 編譯調試平臺,打開各種 ZigBeePro 的工程文件,你可以看得各種已經做好的軟件代碼,這些代碼就是神秘的 ZigBeePro 協(xié)議棧和各種應用接口軟件代碼和工程文件,圖五是一個打開文件的實例。
圖 5 典型的 ZigBeePro 工程文件和代碼
然后,你可以隨意在這個源代碼的工程上,添加你的應用代碼,例如:“采集一個節(jié)點的溫度數據 ,通過 ZigBeePro 網絡多跳路由發(fā)送到主機 ”“ 數據鏈因為干擾中斷,立即將網絡跳頻到其他干凈頻段” ….. 等等高級功能,都可以通過軟件代碼輕松和容易的立即實現。
然后你使用開發(fā)系統(tǒng)的在線仿真器,將你修改,編譯的代碼,下載到無線傳感器節(jié)點內部,并采用 IAR 強大的差錯調試功能,進行代碼測試運行和修改。
第五步:將代碼分別下載到你的協(xié)調者( coordinator )路由器 (router) 和終端節(jié)點 ( end device) ,然后開始運行你的應用,可能是開關一個燈泡,也可能是監(jiān)視煙霧報警器,也可能控制一個馬達 ….. ,你會發(fā)現,你可以輕松控制你的無線傳感器網絡內的任何路由器和節(jié)點。
到這里我們祝賀你,你已經完成了 ZigBeePro 無線傳感器網絡的升級過程,過程如此的輕松,并不是像網絡上有些文章講, ZigBee 無線網絡技術這樣的東西太復雜,只適合國外高技術環(huán)境,不適用于國內弱技術環(huán)境。
我們認為,任何熟悉單片機和嵌入式的電子工程師,軟件工程師,都可以借助成熟的 ZigBee 協(xié)議棧和國產化的開發(fā)系統(tǒng),輕松駕馭 ZigBee 網絡技術,也可以很容易將自己的無線傳感器網絡升級到最新的功能強大 ZigBeePro , ZigBee2007 無線傳感器網絡技術。