李錦龍,李曉根,于運淥,鄧小寶
(北方工業大學 現場總線技術及自動化北京市重點實驗室,北京100144)
無線傳感器網絡由分布在工作區域內的大量傳感器監控節點組成,通過無線通信方式形成自組織網絡系統[1]。 ZigBee 技術[2]具有低功耗、高度擴充性、自組織網絡功能、網絡自愈功能[3],可嵌入各種設備中;無線傳感器網絡便于擴展,無需布線,非常適合應用于環境中的多點監測[4]。 現階段遠程監測系統在多個領域有著較廣泛的應用,科研方面對此也有較高要求。
目前,高等院校相關專業開設的實驗多為單一性實驗,只針對于某一方面進行實驗設計,造成學生缺乏系統綜合試驗的思路和能力。 在此,綜合運用嵌入式、無線傳感器網絡和4G 網絡,設計了一種可用于教學實驗的空氣質量遠程監測系統。 該系統以STM32 芯片為MCU(microcontroller unit),建立了基于ZigBee 技術的Mesh 網[5],實現了各監測點的空氣質量數據采集[6],由網絡協調器通過4G 傳輸方式將數據統一發送到云平臺,空氣質量遠程監測軟件通過Internet 讀取云平臺的數據。 通過該實驗系統,學生可對無線傳感網絡加深理解,同時可提高學生的綜合試驗及創新能力。
所設計的空氣質量遠程監測系統由空氣質量探測器、網絡協調器[7]和空氣質量遠程監測軟件等三部分組成。 空氣質量探測器負責采集現場的PM2.5 和PM10 數據;網絡協調器部分由ZigBee 協調器和4G 通訊模塊組成, 負責將位于各監測點的空氣質量探測器采集到的數據通過4G 通訊方式發送至云平臺;空氣質量遠程監測軟件通過Internet 訪問云平臺進行數據的讀取,完成數據的解析,將處理后的數據顯示在監測界面上,同時存儲在SQL Server 數據庫中, 并顯示PM2.5 及PM10 數據曲線及報警數據曲線[8]。 系統的整體結構如圖1 所示。

圖1 系統整體結構Fig.1 System overall structure
MCU 采用STM32F103[9],支持多種調試模式,豐富的資源滿足空氣質量探測器的需要。 顯示部分選用尺寸小、分辨率高的龍丘24.4 mm(0.96 英寸)OLED 顯示屏。 ZigBee 通信模塊使用Digi 公司的XBee 和XBee PRO 模塊。該模塊按照固件類型分為協調器、路由器和終端,通過對模塊燒寫不同的固件可以實現不同的功能。 其中,協調器負責組建無線Mesh 網, 路由器和終端上電后自動連接到該網絡。XBee 模塊可以自組網,方便擴容;XBee PRO 模塊的使用方法與XBee 模塊相同, 但傳輸距離可達1.5 km。 ZigBee 通信模塊的原理如圖2 所示。

圖2 ZigBee 通信模塊原理Fig.2 Schematic of ZigBee communication module
PM2.5 和PM10 傳感器使用SDS011,能夠測得空氣中0.3~10 μg 大小的懸浮顆粒物濃度。 該傳感器采用激光散射原理,當激光照射到通過檢測位置的顆粒物時,會產生微弱的光散射,通過不同粒徑的波形分類統計及換算公式可以得到不同粒徑的實時顆粒物濃度數據。 空氣質量探測器硬件結構如圖3 所示。

圖3 空氣質量探測器硬件結構Fig.3 Air quality detector hardware structure
ZigBee 協調器組建無線Mesh 網[10],在各個空氣質量探測器所包含的ZigBee 路由器模塊加入到該網絡后,可查詢各監測點采集到的空氣質量數據[11],集中處理后通過RS232 串口傳輸給4G 通訊模塊。4G 通訊模塊采用映翰通公司的IR900 模塊,該模塊所提供的4G 無線網絡和多種寬帶服務, 以及較完善的互聯網接入等功能滿足網絡協調器部分的需要。 4G 通訊模塊從ZigBee 協調器獲得空氣質量數據,通過4G 通訊方式將該數據傳輸至云平臺。
空氣質量探測器下位機軟件使用C 語言進行編程。 系統工作原理如下:
空氣質量探測器周期性采集PM2.5 和PM10 數據,并顯示在OLED 顯示屏上。 判斷PM2.5 和PM10的值是否超過報警值, 超過報警值則進行聲光報警。空氣質量探測器等待接收來自ZigBee 協調器的查詢命令數據幀[12],對該數據幀進行校驗無誤后,向ZigBee 協調器發送監測到的PM2.5 和PM10 數據。空氣質量探測器下位機軟件主流程如圖4 所示。

圖4 空氣質量探測器下位機軟件主流程Fig.4 Air quality detector lower machine software main flow chart
各監測點的空氣質量數據通過4G 通訊模塊上傳至云平臺, 空氣質量遠程監測軟件通過Internet獲得云平臺上各監測點的PM2.5 和PM10 數據,并顯示在監測界面的相應區域內,還可完成PM2.5 和PM10 報警值的設定。PM2.5 和PM10 數據達到報警值時顯示報警時間及報警點。 空氣質量遠程監測軟件功能結構如圖5 所示。

圖5 空氣質量遠程監測軟件功能結構Fig.5 Functional structure diagram of air quality remote monitoring software
空氣質量遠程監測軟件主要分為5 個模塊:①管理員登錄及通訊設置模塊主要完成管理員注冊、登錄和通信設置;②數據查詢及曲線顯示模塊主要負責啟動PM2.5 和PM10 數據的查詢, 以及歷史曲線和報警曲線的顯示;③空氣質量數據顯示模塊主要完成將多個監測點的PM2.5 和PM10 數據顯示在監測界面上[13];④報警值設定模塊可顯示和設置PM2.5 和PM10 數據的報警值; ⑤網絡通訊模塊主要顯示當前建立網絡連接的IP 地址以及端口號信息。 空氣質量遠程監測軟件主界面如圖6 所示。 數據為實驗室實際采集數據,有些采集點位于無人走動的安靜區域,有些位于正常工作區域,個別采集點附近人為“制造”了一定粉塵。

圖6 空氣質量遠程監測軟件主界面Fig.6 Main interface of air quality remote monitoring software
在SQL Server 數據庫中建立對應的管理員信息數據以及每個監測點的歷史數據和報警數據。利用管理員數據可以保證使用監測軟件的安全性,只有通過管理員驗證的人員才能使用該監測軟件。各監測點采集到的實時數據統一通過4G 模塊發送到云平臺, 空氣質量遠程監測軟件通過Internet 讀取云平臺上的數據并存儲在數據庫中,通過存儲的數據實現歷史曲線及報警曲線功能,便于更好地分析數據。 各監測點數據表包含PM2.5 報警值、PM2.5 實時值、PM10 報警值、PM10 實時值及監測時間數據,2 號監測點的部分空氣質量數據如圖7所示。

圖7 監測點空氣質量數據Fig.7 Monitoring point air quality data
所開發的基于ZigBee 和4G 的空氣質量監測系統使用ZigBee 技術組建無線Mesh 網, 將多個空氣質量探測器采集到的PM2.5 和PM10 數據通過4G通訊的方式傳輸到云平臺上,空氣質量遠程監測軟件通過Internet 讀取云平臺上的數據。 該系統具有成本低、無需布線、監測靈活等優點;從底層數據采集、數據傳輸到監測軟件顯示分析,構成了整套遠程監測實驗系統;可使學生對遠程監測系統進行綜合實驗, 既能幫助學生更好地學習和理解嵌入式、無線傳感網絡及上位機軟件設計,又可增強學生的系統開發能力和綜合創新能力。