肖 凡 馬婭婕 余 湧 萬 勇
(武漢科技大學信息科學與工程學院,湖北 武漢 430081)
PM2.5 是指環境空氣中空氣動力學當量直徑小于等于2.5 μm 的顆粒物,也稱可入肺顆粒物。雖然PM2.5 只是地球大氣成分中含量很少的組分,但它對空氣質量和能見度等有重要的影響,已經成為空氣污染的罪魁禍首[1]。
在實際監測工作中已有很多PM2.5 監測系統,這些系統使用ZigBee 節點和粉塵顆粒物傳感器組建的無線傳感器網絡作為監測網絡,并通過GPRS 無線傳輸方式傳輸數據的PM2.5 監測系統[2]。也有使用Arduino 單片機的系統,只是數據處理通過Raspberry Pi 傳輸到Yeelink 平臺[3]。隨著監測項目的增多,監測范圍的擴大及點位的密布,價格昂貴、實時性差、系統運行維護費用高等缺點逐漸表現出來。為了解決上述種種問題,本文提出了基于Arduino 和樂聯網的PM2.5 實時監測的設計方案,方案具有很好的網絡拓展性能。
PM2.5 實時監測系統可以按照功能分為三部分:數據采集與傳輸、數據融合與分析[4]、數據查詢,如圖1 所示。

圖1 PM2.5 實時監測系統結構Fig.1 Structure of PM2.5 real-time monitoring system
數據采集與傳輸:是本系統中的底層硬件,這層包含了系統中所有的硬件管理,包括硬件的設計,硬件拓撲結構的布置,PM2.5 的采集、存儲及傳輸等。各個粉塵顆粒物傳感器進行監測時,都會對相關信息進行記錄保存,這些信息最終會實時存入樂聯網平臺,用戶可以通過多種途徑登錄樂聯網查看實時的PM2.5 值。
數據融合與分析:是本系統中進行數據處理、分析的核心層。這層主要對下位機采集的數據進行管理,并在曲線圖中實時體現出來。同時,通過發送新浪微博或者微信的方式告知用戶,可以對下位機進行配置與管理等。
數據查詢:用戶只需要登錄樂聯網平臺,即可在用戶中心獲取需要的實時數據,根據已有的PM2.5 曲線圖直觀地了解最近一段時間PM2.5 的變化情況。
PM2.5 實時監測系統的硬件結構如圖2 所示,設計共分為3 個部分:Arduino Uno、Ethernet W5100 與Sharp GP2Y1010AU0F 傳感器組建的傳感器網絡、樂聯網平臺和遠程監測用戶。系統中數據采集與傳輸部分即傳感器網絡,用于實現各個監測點數據的采集、存儲,并將數據傳輸至樂聯網平臺;樂聯網平臺用于接收存儲、分析處理數據;遠程監測用戶通過手機、計算機,可以訪問樂聯網平臺、新浪微博或微信,根據需求獲取相關數據。

圖2 系統硬件結構圖Fig.2 Structure of system hardware
傳感器網絡由Sharp GP2Y1010AU0F 粉塵顆粒物傳感器監測節點、Arduino Uno 單片機與Ethernet W5100 網絡控制模塊、路由器3 部分組成。其中第二部分是整個傳感器網絡的核心,負責管理運行整個傳感器網絡。
(1)傳感器監測節點:GP2Y1010AU0F 是一種基于光學傳感系統的粉塵顆粒傳感器。在傳感器內部布置了一個紅外發光二極管和一個光電子躍遷材料晶體管。它能夠有效檢測非常細小的顆粒物,將濃度值轉換成脈沖電壓。傳感器內部電路結構如圖3 所示。

圖3 傳感器節點硬件結構圖Fig.3 Hardware structure of sensor node
其中:①號為V-LED,接5 V 電壓供電;②號為LED-GND,接地;③號為LED,接Arduino 數字I/O 口的2 端口;④號為S-GND,接地;④號為Vo,接Arduino模擬I/O 口的0 端口;⑥號為Vcc,接5 V 電壓供電。①~③號接口,主要是保證紅外發光二極管能夠正常工作;④~⑥號接口,主要是保證整個粉塵顆粒物傳感器能夠正常工作。
在整個PM2.5 實時監測系統中,傳感器監測節點主要負責采集所在地的實時PM2.5 值,按照網口傳輸協議發送給路由器,然后再由各子路由器匯總發送給總路由器。通過單片機給③號接口發送周期為10 ms的脈沖波,高電平時間在0.32 ms 左右。觸發紅外發光二極管工作發光,當顆粒物通過粉塵顆粒物傳感器時,光會產生折射、散射,在到達光電子躍遷材料晶體管時光強度會發生變化,然后轉換成變化的電壓值,通過這樣的工作原理反映顆粒物的濃度值[5]。
(2)單片機與網絡模塊:Arduino Uno 是一個開放源代碼的硬件項目平臺,該平臺包括一塊具備簡單I/O功能的電路板以及一套程序開發軟件[6]。在本系統中,將傳感器的3 號接口與Arduino 數字I/O 口的0 端口連接,通過單片機向LED 接口發送周期為10 ms的脈沖波。將傳感器的5 號接口與Arduino 模擬I/O口的2 端口連接,使得單片機接收來自傳感器的輸出脈沖電壓信號,并通過一定的函數關系將電壓值轉換成為對應的粉塵顆粒物濃度值即PM2. 5。Ethernet W5100 網絡擴展模塊只需要插入Arduino Uno 主控板的相應接口,就可以讀取Arduino 模擬I/O 口的2 端口數據。網絡擴展模塊上的RJ45 接口通過網線與無線路由器相連[7],傳感器采集的數據就可以通過網口發送至樂聯網平臺。硬件結構如圖4 所示。

圖4 單片機與網絡模塊硬件結構圖Fig.4 Hardware structure of single chip computer and network module
(3)路由器:本系統采用多路無線路由器相連,即將總路由器的WAN 口連接貓,這個無線路由設定連接撥號并且充當所有連接的網關。其他所有的子路由通過LAN 口與總路由的LAN 口互聯。這樣可以將多個子路由連接到總路由,這些子路由的網關IP 要與總路由的網關IP 不一致。總路由的網關IP 為192.168.1.1,子路由可以依次設置為192.168.1.2 等。同時總路由設定IP 地址DHCP 獲取,子路由禁用DHCP[8]。任何地方無線連接時統一連接到總路由的網關,所有子路由全部當作局域網交換機及無線連接接收器使用。路由器結構如圖5 所示。

圖5 路由器結構圖Fig.5 Hardware structure of router
樂聯網是一個迅速實現物聯網應用的平臺。不需要繁瑣的編程和開發就可以把測量設備或者傳感器連接到樂聯網應用平臺上,并在該平臺上存儲、查詢和分析測量數據。該平臺提供了網絡轉接功能模塊,可以讓所有測量設備都具備聯網功能,集中監控和管理設備。同時方便用戶在網上或者手機APP 上查看所有測量設備的測量數據,實現遠程讀數。該平臺還提供數據查詢、分析、對比和警告提醒等基本功能,根據用戶的實際需求還可以定時發送新浪微博或者微信。本系統中直接在計算機上登錄樂聯網平臺,注冊、添加設備和傳感器之后就可以在網頁上查看PM2.5 的實時監測值[9]。
軟件設計是整個系統設計的重要組成部分,粉塵顆粒物傳感器數據的采集、傳輸、分析和處理等功能都離不開軟件的支持,完善的軟件設計可以保證整個系統的正常運作。
系統程序設計主要采用Arduino 自帶的編程語言。該編程語言的語法與C/C + + 相類似,并且將Arduino 單片機相關的一些參數設置模塊化,包括EEPROM、Ethernet、步進電機、時鐘等程序庫,所以并不需要開發者考慮底層硬件的實現原理,可以提高程序開發的效率[10]。PM2.5 實時監測系統的監測端供電后,首先進行網絡及硬件的初始化,在使用DHCP對Ethernet 的連接配置成功后,使用HTTP 協議主動與樂聯網平臺的服務器建立連接。如果網絡連接不成功,并且最后一次的連接時間超過30 ms,那么立即重新與服務器建立連接。如果網絡連接成功,GP2Y1010AU0F 粉塵顆粒物傳感器開始采集環境中的PM2.5 濃度,并通過Ethernet W5100 網絡擴展模塊上的RJ45 接口將數據發送給服務器。數據發送成功后將繼續循環采集、發送數據,如果在數據發送過程中出現故障,可以選擇重啟系統。程序流程圖如圖6 所示。

圖6 系統程序流程圖Fig.6 Flowchart of system program
粉塵顆粒物傳感器采集的數據,在上傳至樂聯網后會經過分析處理,與時間、地點等信息打包后在動態曲線上直觀地顯示出來。使用個人計算機登錄樂聯網或者在微信中關注樂聯網,就可以查看實時的PM2.5變化曲線,如圖7 所示。

圖7 測試結果Fig.7 Test results
本次測試只截取了2014 年6 月22 日11:30 ~21:00 青山區的PM2.5 歷史值,采集的單位時間間隔15 min。將測試結果與環境監測總站更新的數據進行對比,發現兩者顯示的PM2.5 的變化趨勢一致。相同時間對應的測量值非常近似,達到了預期的效果,能夠合理地體現一天中測量的PM2.5 的變化情況。用戶可以根據需要,查看自己所在地的PM2.5 濃度,合理地安排自己的出行。
經過實際的運行,本系統可以全天候地采集監測終端所在地的PM2.5 濃度數據,并通過傳感器網絡和多路路由器互聯技術發送至樂聯網平臺,為環境中PM2.5 的監測提供了一種低成本、穩定、實時性好、網絡拓展性強的解決方案,具有良好的實用價值。隨著物聯網的逐漸普及、智能家居等新技術的興起,本系統的應用范圍也會更加廣泛。
[1]王瑋,湯大鋼,劉紅杰,等.中國PM2.5 污染狀況和污染特征的研究[J].環境科學研究,2000,13(1):5 -9.
[2] 史麗娟,包亞萍,田峰.基于GPRS 和Zigbee 的礦井無線監測系統的設計[J].煤炭技術,2010,29(3):44 -45.
[3] 秦華,孫曉松. 基于Arduino/Android 的環境狀況監測系統設計[J].無線互聯科技,2013(1):59 -61.
[4] 胡向東,魏琴芳,唐慧.物聯網中數據融合的信譽度模型與仿真[J].儀器儀表學報,2010,31(11):2637 -2639.
[5] 李楠,湯東,陳烈.柴油機車載診斷系統新型顆粒物傳感器的研究[J].儀表技術與傳感器,2013(6):1 -3.
[6] 玄兆燕,唐佳明,陳學斌,等.農田環境信息采集系統設計與實現[J].自動化儀表,2014(11):42.
[7] 白云州.基于W5100 的網絡化溫室大棚環境監測系統[J]. 制造業自動化,2011,33(3):20 -21.
[8] 黃劉生,李虹,徐宏力,等.無線傳感器網絡中基于負載平衡的多路路由[J].中國科學技術大學學報,2006,36(8):888-890.
[9] 鄭平燕.簡易智能家居物聯網的研究與設計[J]. 科教導刊,2013(19):9 -10.
[10]崔才豪,張玉華,楊樹財.利用Arduino 控制板的光引導運動小車設計[J].自動化儀表,2011,32(9):6 -7.