一種ZigBee以太網(wǎng)網(wǎng)關的設計
摘要 基于物聯(lián)網(wǎng)中應用廣泛的ZigBee技術,設計的ZigBee以太網(wǎng)網(wǎng)關為物聯(lián)網(wǎng)和互聯(lián)網(wǎng)之間的數(shù)據(jù)傳輸搭建了橋梁。闡述了網(wǎng)關軟硬件設計和測試過程,測試結果表明,設計的網(wǎng)關具有較強的技術優(yōu)勢和廣闊的市場前景。
關鍵詞 ZigBee;以太網(wǎng);網(wǎng)關;物聯(lián)網(wǎng)
物聯(lián)網(wǎng),即物物相連的網(wǎng)絡,目前已廣泛應用于公共安全、智能交通、智能樓宇和環(huán)境監(jiān)測等眾多領域。ZigBee是一種低速率、低功耗、網(wǎng)絡容量大、節(jié)點間能夠進行群體協(xié)作,網(wǎng)絡具有很強自愈能力的無線通信技術,在物聯(lián)網(wǎng)應用中得到了廣泛使用。隨著物聯(lián)網(wǎng)技術的不斷發(fā)展和推廣,解決物聯(lián)網(wǎng)和互聯(lián)網(wǎng)之間的異構互聯(lián),在物聯(lián)網(wǎng)和互聯(lián)網(wǎng)之間建立一個透明的數(shù)據(jù)傳輸通道,為現(xiàn)場非IP物聯(lián)網(wǎng)設備接入IP網(wǎng)絡提供技術保證,也將成為物聯(lián)網(wǎng)技術研究的熱點和重點。
1 硬件設計
1.1 網(wǎng)關硬件架構
網(wǎng)關硬件架構由LM3S6911微處理器單元、系統(tǒng)電源單元電路、JTAG接口單元電路、RS232接口單元電路、以太網(wǎng)接口單元電路和ZigBee射頻模塊組成,網(wǎng)關硬件架構如圖1所示。由于ZigBee射頻電路需要進行2.4 GHz射頻電路設計,因此把ZigBee射頻電路部分進行了獨立設計,射頻電路板通過排針與主控板相連接。
1.2 主控板電路設計
主控板設計選用高性能、低成本ARM Cortex—M3嵌入式微處理器LM36911,其內置一個完全集成了媒體訪問控制層(MAC)和網(wǎng)絡物理層(PHY)的10/100 MHz以太網(wǎng)控制器,遵循IEEE802.3協(xié)議規(guī)范,MAC層提供以太網(wǎng)幀的發(fā)送和接收處理,PHY層只需要一個雙路1:1隔離變壓器就能夠與以太網(wǎng)線路連接。設計中使用內置磁性隔離變壓器的RJ45以太網(wǎng)連接器HR911105A與LM3S6911處理器的PHY直接相連,使得以太網(wǎng)外圍接口電路簡單、抗干擾能力強,主控板電路設計如圖2所示。
LM3S6911同時提供兩個同步串行接口(SSI)和3個通用異步收發(fā)器(UART),設置SSI0為SPI接口,通過SPI總線與ZigBee射頻模塊相連接。由于ZigBee以太網(wǎng)網(wǎng)關需要對其進行參數(shù)配置后才能正常工作,設計使用LM3S6911的UART0作為配置串行端口。
1.3 射頻模塊電路設計
ZigBee射頻模塊電路選用TI公司的2.4 GHz IEEE802.15.4和ZigBee應用片上系統(tǒng)解決方案專用芯片CC2530,CC2530能夠以較低的成本構建強大的ZigBee無線網(wǎng)絡,內置了性能優(yōu)良的IEE 802.15.4兼容無線射頻收發(fā)器和業(yè)界標準的增強型8051 CPU內核。
為增強ZigBee射頻模塊的發(fā)射功率和接收靈敏度,在射頻電路設計中增加了2.4 GHz射頻前端芯片CC2591,CC2591內置了功率放大器(PA)和低噪聲放大器(LNA),使輸出功率可達22 dBm,接收靈敏度可達-98.8 dBm,擴展了ZigBee無線射頻信號的傳輸距離。
CC2530的RF輸入輸出為高阻抗差分信號,CC2591除了內置PA、LNA和RF開關電路外,還內置了巴倫電路和RF匹配網(wǎng)絡,這使得在配合少量的外圍被動器件,能夠與CC2530進行良好的RF匹配,簡化了無線射頻電路設計,降低了射頻電路中由于被動器件參數(shù)誤差造成的無線信號衰減,射頻模塊電路設計如圖3所示。
為達到最佳射頻性能,CC2591電源引腳AVDD_PA1、AVDD_PA2和AVDD_LNA電源去耦器件C6、C7、C8、L3、L4、TL1、TL2和TL3必須被使用,其中TL1、TL2和TL3為PCB走線感抗等效值,近似值分別為TL1=0.66 nH,TL2=0.87 nH,TL3=2.52 nH,C5對AVDD_BIAS進行去耦。
CC2591的射頻輸出引腳通過L5、C9、C10、C11和L6組成的網(wǎng)絡與外接50 Ω天線進行阻抗匹配,其中L5和C9組成濾波網(wǎng)絡進行濾波,C10起隔直作用,C11進行高頻濾波,L6進行低頻濾波。
ZigBee在24 GHz頻段最大傳輸速率是250kbit·s-1,設計中射頻模塊通過CC2530的SPI接口與主控板相連接,可滿足ZigBee的數(shù)據(jù)傳輸速率要求。
2 軟件設計
2.1 主控板軟件設計
主控板軟件設計在LM3S6911微處理器上移植了μC/OS-Ⅱ嵌入式實時操作系統(tǒng),μC/OS-Ⅱ是一個開放源碼的實時操作系統(tǒng),但它只是一個實時的任務調度及通信內核,缺少對外圍設備和接口的充分支持。為獲得對以太網(wǎng)接口的支持,在其上移植了LwIP(Light Weight IP)TCP/IP協(xié)議棧。LwIP是一套用于嵌入式系統(tǒng)的開放源代碼的TCP/IP協(xié)議棧,實現(xiàn)的重點是在保持TCP協(xié)議主要功能的基礎上減少對RAM的占用,適合在低端嵌入式系統(tǒng)中使用。
在設計中基于μC/OS-Ⅱ操作系統(tǒng),同時編寫了SPI通信驅動程序和串口通信驅動程序,其中SPI驅動程序用于和ZigBee射頻模塊進行通信,串口驅動程序用于提供網(wǎng)關的串口配置功能。主控板軟件工作流程如圖4所示。
其中OSTaskCreate(taskStart,…)為μC/OS-Ⅱ操作系統(tǒng)第一個任務,在其中要進行目標板和TCP/IP的初始化,并建立以太網(wǎng)通信處理任務taskNet、SPI通信處理任務taskSPI和串口通信處理任務taskUART,最后通過OSStart()啟動μC/OS-Ⅱ內核。以太網(wǎng)通信處理任務task Net啟動LwIP協(xié)議棧,完成TCP和UDP相關通信服務;SPI通信處理任務taskSPI完成通過SPI總線與ZigBee射頻模塊的通信;串口通信處理任務taskUART完成網(wǎng)關參數(shù)配置相關工作。
2.2 射頻模塊軟件設計
ZigBee射頻模塊軟件設計是基于CC2530芯片,移植了TI公司的ZigBee協(xié)議棧Z-Stack,Z-Stack協(xié)議棧采用輪轉查詢式操作系統(tǒng),包括系統(tǒng)初始化和操作系統(tǒng)的執(zhí)行,系統(tǒng)初始化完成初始化硬件平臺和軟件架構所需要的各個模塊,為操作系統(tǒng)的運行做好準備工作,系統(tǒng)初始化完成后,就開始執(zhí)行操作系統(tǒng)入口程序。輪轉查詢式操作系統(tǒng)專門分配了存放所有任務事件的tasksEvents[]數(shù)組,每個單元對應存放著每一個任務的所有事件,操作系統(tǒng)通過一個do—while循環(huán)來遍歷tasksEvents[],找到優(yōu)先級最高的任務來處理,射頻模塊軟件工作流程如圖5所示。
2.3 SPI通信協(xié)議設計
ZigBee射頻模塊通過SPI總線和主控板進行通信,網(wǎng)關設計中配置主控板為SPI主機,射頻模塊為SPI從機,主機和從機之閥的雙向通信均采用應答和超時重發(fā)機制。根據(jù)SPI總線傳輸協(xié)議,從機不能主動向主機發(fā)送數(shù)據(jù),所以采用—個主機和從機之間相連的GPI0口,來配合完成從機向主機的數(shù)據(jù)發(fā)送功能,主機到從機通信流程如圖6所示,從機到主機通信流程如圖7所示。
3 網(wǎng)關測試
3.1 測試方法
網(wǎng)關測試使用兩臺ZigBee以太網(wǎng)網(wǎng)關、兩臺電腦和TCP&UDP測試工具軟件進行,在電腦X和電腦Y上分別安裝TCP&UDP測試工具軟件,網(wǎng)關測試如圖8所示。
3.2 測試結果
網(wǎng)關A ZigBee參數(shù)配置:設備類型(協(xié)調器)、通信信道(2.410 GHz)、網(wǎng)絡標識(0x1123)、發(fā)送模式(點對點);網(wǎng)關B ZigBee參數(shù)配置:設備類型(終端)、通信信道(2.410 GHz)、網(wǎng)絡標識(0x1123)、發(fā)送模式(點對點)。
網(wǎng)關A通過其以太網(wǎng)接口和電腦X相連,網(wǎng)關A以太網(wǎng)參數(shù)配置:通信協(xié)議(TCP)、通信模式(服務器);電腦X上運行TCP&UDP測試工具軟件,以太網(wǎng)參數(shù)配置:通信協(xié)議(TCP)、通信模式(客戶端),配置完成后連接網(wǎng)關A。以同樣的方式通過以太網(wǎng)接口連接網(wǎng)關B和電腦Y,并進行參數(shù)配置,之后完成TCP連接工作。
配置和連接工作完成后將網(wǎng)關A和電腦X分別置于一點(M點),將網(wǎng)關B和電腦Y分別置于距離M點視距D米的另一點(N點),在電腦X上通過TCP&UDP測試工具軟件每隔Ts,發(fā)送一次包長為LByte的數(shù)據(jù)包,在電腦Y上進行數(shù)據(jù)接收;反之在電腦Y上發(fā)送數(shù)據(jù)包,在電腦X上接收數(shù)據(jù),通過此種方法進行ZigBee以太網(wǎng)網(wǎng)關數(shù)據(jù)傳輸測試。
從表1中可以看出,在傳輸距離為視距600 m和800 m時,數(shù)據(jù)傳輸丟包率均為O;在視距1 000 m時,由于無線信號衰減,出現(xiàn)了較小的數(shù)據(jù)丟包或者斷包。由測試結果可以得出,設計的ZigBee以太網(wǎng)網(wǎng)關在發(fā)送包長為1 024 Byte的情況下,能夠保證在視距800 m之內進行數(shù)據(jù)可靠傳輸,在視距1 000 m時丟包率很小,在同類產(chǎn)品中具有較好的先進性和技術優(yōu)勢。
4 結束語
以物聯(lián)網(wǎng)實際應用為背景,設計了ZigBee以太網(wǎng)網(wǎng)關解決了廣泛應用于物聯(lián)網(wǎng)領域的ZigBee技術到互聯(lián)網(wǎng)的連接,在ZigBee無線網(wǎng)絡和互聯(lián)網(wǎng)之間搭建了一個透明的數(shù)據(jù)傳輸通道。射頻模塊的單獨設計,從工藝上和技術上,保證了射頻PCB板材的選擇要求和射頻信號特殊處理需求,既降低了產(chǎn)品成本,又提高了產(chǎn)品性能。通過增加射頻前端功放電路,提高了射頻模塊的發(fā)射功率和接收靈敏度,網(wǎng)關測試結果表明設計的網(wǎng)關具有顯著的技術競爭力和市場推廣價值。





