肖正洪
摘要:物聯網網關發揮著連接傳統信息網絡與感知網絡的重要作用,本設計提出了一種嵌入式智能網關的實現方案,該網關硬件上集成了多種協議的數據收發模塊,在軟件的控制下能夠實現不同類型感知網絡的同時接入,可應用于多種場合。
關鍵詞:物聯網;網關;嵌入式
物聯網就是物物相連的互聯網,物聯網網關則是聯系它們之間的主要橋梁,而且在整個物聯網體系當中具有不可替代的作用。本文將對物聯網網關進行介紹、對物聯網網關硬件的設計以及物聯網網關軟件的設計進行研究。
一、物聯網系統的分析
物聯網網關作為物聯網的基礎,其作用不容忽視,具備感知網絡接入、互通不同網絡、遠程監控三種能力。
感知網絡,感知網絡是由多個功能傳感器網絡組成,比如:攝像頭、讀卡器等,由于這些傳感器所獲得的信息不同,導致它們沒有固定的方式接入,目前主要有有線與無線的區別。就目前的情況來看,有線接入相對比無線接入速度慢,無線接入目前使用的藍牙、無線網絡都能夠進行快速的傳送,特別是無線網絡已經廣泛的用于手機等設備中,應用范圍十分廣闊,因此,隨著無線網絡發展的越來越好,日后也必將能成為主要的接入方式。
異構網絡互通,由于傳感器的不同,感知的信息也不同,那么就造成了數據之間的分離,交流數據就會相對麻煩,因此,就要求設置一個協議網絡在中間發揮作用,目前比較常用的協議網絡主要是Modbus協議網絡,在許多領域都得到了有效的利用。
檢測控制管理,物聯網當中的檢測控制管理主要是對數據信息進行監控和管理,首先是網關中的不同功能模塊,能夠進行更加靈活的控制,實現操作簡單、人機友好;其次是對網絡連接的集中管理。因此,檢測控制管理不僅僅是對自身的監控,還能夠對來自外來的網絡進行控制和管理。
二、網關硬件設計
為實現上述物聯網網關的基本功能,需要先構建一個嵌入式的最小系統,在此系統上運行嵌入式操作系統作為實現上層功能的基礎,然后擴展出各通信協議對應的硬件通信模塊,實現網關與互聯網和傳感網的數據信息交互。
在本智能網關的設計中,采用AT91SAM9X35微處理器,DDRAM、時鐘電路、NANDFLASH構建核心最小系統處理電路,其中AT91SAM9X35是基于ARM926EJ-STM的微處理器,內部集成了UART控制器,Can控制器,以太網適配器和RS485等控制器的功能,具有較好的處理能力。在外圍電路中,擴展接入了各協議的數據收發芯片,從而在微處理器的控制下進行各類信號的傳輸工作。設計中采用DM9161A芯片實現以太網數據通信,通過串口接入CC2430模塊,實現Zigbee通信,通過TJA1050收發芯片和ADM2483收發芯片分別實現Can和RS485的數據通信。硬件結構如下圖所示。
三、網關軟件系統實現
網關系統軟件除了協調硬件實現數據的收發功能外,還要實現數據的解析和處理,轉發和存儲,遠程交互和安全訪問控制等功能。為了更好的分塊實現這些功能,本設計將網關分為Web服務器部分和傳感網服務器部分,這兩大部分都屬于應用層軟件的范疇,建立在嵌入式Linux操作系統之上。
(一)操作系統層軟件
選用嵌入式Linux系統,其特點是代碼開放,性能優異,軟件易于移植。將Linux操作系統移植到網關硬件電路的關鍵步驟,就是對各硬件設備的驅動進行相應的移植。物聯網網關中用到的設備驅動主要有以太網驅動,串口驅動以及Can和485總線驅動等,這些驅動程序為上層應用軟件對硬件收發器的控制提供了良好的支持。嵌入式Linux下開發的應用程序可以比較容易的移植到運行Linux的其他嵌入式系統中,這非常利于物聯網網關設備的推廣。
(二)Web服務器
Web服務器部分實現網關與上層傳輸網絡的通信,為遠程應用終端監控傳感網節點設備提供良好的交互界面。互聯網遠程終端通過Web網頁可以查詢傳感網節點設備的狀態信息,對該節點發出控制命令,也可以通過Web網頁查看設備列表并管理設備。程序流程如下,接收終端通過瀏覽器發來的8080端口請求,該請求通過TCP協議傳輸,調用CGI模塊,該模塊進程是Web服務器的子進程,通過環境變量獲取瀏覽器請求中的相關信息,然后與傳感網服務器通信,獲取相應數據,再將結果處理成HTML網頁格式的數據發回給瀏覽器。在CGI模塊中,設置了用戶登陸認證模塊,該模塊使得只有網關認可的用戶才有資格對傳感網的結點設備進行查詢和控制操作,從而提高了網關的安全性。
(三)傳感網服務器
傳感網服務器是實現網關與傳感網通信功能的部分,各傳感網網絡的數據在此處匯聚。其結構如下,數據傳輸功能由多線程程序實現,一個線程負責一種傳輸協議。Web服務器或專門編寫的客戶端程序可以通過TCP協議與傳感網服務器通信,通信端口設為8088端口。傳感網服務器在接收到命令請求后,會將接收的命令先放入命令緩沖池排隊等待處理,命令緩沖池中命令的存入和提取處理通過生產消費者原理模型實現。傳感網節點上傳的數據存儲在設備信息表的數據數組中,供其它程序調取處理。
(四)安全防護措施
Web服務器部分設置了用戶認證模塊,可有效的防止非法用戶通過物聯網網關對傳感網節點的操作。傳感網服務器工作中會接收Web服務器或客戶端軟件的命令,為防止他人非法向傳感網服務器發送命令請求,特別設置安全密匙KEY機制,Web服務器和客戶端軟件內設置了與傳感網服務器相同的KEY信息,每次命令的收發都要驗證KEY值,驗證失敗時傳感網服務器將拒絕接受命令,從而在高效數據通信的同時也保證了網關的安全性。
綜上所述,物聯網網關的開發與設計主要采取嵌入式系統,能夠滿足人們生產和生活的需要。隨著社會的進步和科學水平的不斷提升,相信在不久的將來,物聯網系統會更加完善。
參考文獻
[1]何立民.從嵌入式系統視角看物聯網[J].單片機與嵌入式系統應用,2010(10)
[2]楊輝,王毅.物聯網與嵌入式系統的關系研究[J].計算機與現代化,2011(8)