陸銳,周圣雅,王姍
(成都理工大學信息科學與技術學院,四川成都,610059)
隨著“智慧地球”的潮流,物聯網網關在實現信息交流上的作用越來越突出。目前市場上廣泛應用的物聯網網關多是基于嵌入式的,但物聯網網關嵌入式處理器基本都不是本國的處理器。本文設計了一種基于國產自主芯片龍芯1B的物聯網網關,從芯片級做到了信息安全自主可控,對國民經濟發展以及國家安全保障有著重大的現實意義和深遠的戰略意義。
物聯網的基本體系架構可分為感知層、網絡層(傳輸層)和應用層[1]。網關主要體現在匯聚層,實現把ZigBee節點采集到的數據進行匯聚存儲、數據格式轉換,再按照TCP/IP協議標準對數據重新進行封裝并通過以太網發送出去[2]。系統的硬件平臺主要由龍芯1B控制器、ZigBee模塊、RS232串口通信以及其他外圍電路等幾部分組成。
軟件的設計基于嵌入式Linux操作系統和Z-Stack協議棧,它們都提供了串口驅動,調用相應的串口API即可實現對串口的讀寫等操作,方便開發[2]。
龍芯1B支持處理器從 SPI Flash 啟動,上電后自動執行存儲在SPI ROM 中的PMON,PMON程序會初始化串口、網口等外圍設備,引導Linux內核啟動。
ZigBee網絡內部有終端節點、路由器、協調器三種節點[2],ZigBee支持星型、樹型和網狀型3種拓撲結構[3]。本文以協調器為中心,組建星型網絡。協調器負責ZigBee無線傳感網絡的組建。
網關主控模塊和ZigBee模塊通過串口連接,獲取ZigBee采集到的數據。串口通信滿足嵌入式系統低功耗、高帶寬利用率的基本硬件要求[2]。
網關與因特網通信模塊的實現,一方面,網關通過RJ45與因特網連接,另一方面,通過串口線與PC機連接。本設計中采用了基于TCP協議的流式socket。采用C/S模型達到IP網絡與物聯網網關客戶端的命令和數據交互。Client先將用戶的需求提交給Server,再將Server返回的結果以特定形式提供給用戶。

圖1 網關功能測試圖
網關主控模塊負責接收ZigBee模塊通過串口傳送的數據,解析并發送到IP網絡客戶端,最終通過網頁顯示。此處以溫濕度為例,網關IP地址配置為192.168.1.110, 客戶端IP地址為192.168.1.120。IP網絡客戶端解析接收到的數據解析后得到的結果如圖 1所示。
其中,橫軸為測量時間,縱軸為傳感器采集到的數據。
以上結果表明,本設計方案的網關能夠將ZigBee節點采集的數據正確地上傳至IP網絡PC客戶端并通過網頁顯示,實現ZigBee網絡與IP網絡的互聯互通。
本系統利用龍芯1B控制器,提出了一種基于嵌入式Linux系統和Z-Stack協議棧的ZigBee網關設計,將ZigBee收集到的相關信息通過網關上傳到IP 網絡、PC客戶端。實現了用戶的遠程瀏覽訪問,同時實現了ZigBee網絡的管理、協議轉換、數據收發等功能,達到了兩種異構網絡之間通信的目的,驗證了網關基本功能的有效性。
[1]關輝.物聯網RFID系統的安全問題及策略[J].福建電腦,2013,29(08):72-73+104.
[2]張藝粟,李鴻彬,賈軍營,于波.物聯網ZigBee網關的設計與實現[J].計算機系統應用,2013,22(06):34-38.
[3]周嶺松,余春暄.基于ZigBee技術的溫、濕度控制系統[J].電子測量技術,2011,34(06):47-50.