王娟 洪銘皓 張爾東 于廣艷
(1.哈爾濱石油學院信息工程學院系 黑龍江省哈爾濱市 150027 2.雞西市礦業集團通信公司 黑龍江省雞西市 158100)
在我國,工業微塵顆粒監測技術還是不太全面,尤其在監測儀器的精確度以及自動化方面都低于國外制造的設備,在價格方面,由于技術不太成熟導致造價偏高,使得大規模的監測成本過高。本設計就是重在用于研究工業微塵濃度測量的設計,根據現在已經有的國產監測儀器,設計出用于監測工業微塵參數的測量系統。該系統最大的優點是對工業微塵濃度進行實時檢測和遠程測量。
Arduino UNO 開發板被用做了數據采集端的基本電路。在實際的工業生產環境中,工業微塵顆粒直徑大小和在空氣中的分布不均勻,必然要導致GP2Y1014AU 傳感器的誤差大,應用的時候需要使用多個GP2Y1014AU 傳感器來減小誤差。對于空氣的溫度和濕度,也是有可能影響工業微塵濃度的,因而裝上了DHT11 溫濕度傳感器,它監測空氣的溫度和濕度還是十分靈敏的。本設計還使用了無線傳輸進行遠距離測量。
本設計的服務器操作系統將使用Ubuntu 系統,服務器的框架則選擇了Django 框架,MySQL 數據庫將用于數據存儲,對于計算本設計將使用卡爾曼濾波算法進行實現,這樣的選擇將會使得服務器更加穩定的執行。
Arduino UNO 開發板也將被作為信號接收端的基本電路,對于數據的接收,本設計采用的是W5100 網絡擴展模塊,LCD 顯示屏用于當前環境的工業微塵溫度和濕度以及濃度的顯示,將使用語音提示的報警。
綜合以上敘述,本設計為了準確的實時監測工業微塵的濃濕度,再利用ESP8266 做成的無線傳輸模塊傳輸至服務器,在服務器接收到信息時候,對這些數據處理,最后利用W5100 網絡通信模塊的通信功能,將數據送到Arduino UNO 開發板判斷分類整理,進而實現顯示數據和報警等功能。
工業微塵濃度的檢測流程:將設備搭建在適合與測試的工業環境下,測量環境中的微塵顆粒濃度和溫度,測試的工業微塵濃度要滿足設定好的工業微塵濃度值,若測量粉塵濃度環境未至期待值時,將重新啟動機器。會將粉塵濃度、溫度和濕度收集并上傳,如果環境粉塵粒子的濃度達到設定的值時,會通過ESP8266 把收集的數據發送給服務器進行一系列分析處理,還會將處理好的數據上傳到數據輸入端,還會在屏幕上顯示出來,還會對粉塵濃度與用戶設定值進行比較,如果超出用戶設定范圍,報警模塊就會被處罰同時提醒用戶。反之系統不會出現異常。本次設計的整體框圖如圖1所示。

圖1:整體設計框圖

圖2:硬件實物圖
GP2Y1014AU 傳感器通過多個模塊的協調運行來進行對外界數據的處理。常用的模塊主要有DHT11 溫度傳感器模塊以及ESP8266 無線傳輸模塊、Arduino UNO 開發板構成。由上述模塊共同組成的該傳感器通過光散射將散射光轉換為信號,從而作為灰塵粒子濃度的輸出值,實現灰塵粒子濃度的收集。其中,溫度傳感器可以獲知所處當前環境的溫度及空氣濕度等信息,而這部分功能是由電阻濕度傳感器和NTC 溫度測量工具來完成的。Arduino UNO板作為間接數據傳輸站,向ESP 8266 發送由GP 2Y1014AU 傳感器和DHT11 溫度及濕度傳感器測量的數據。ESP 8266 無線發送模塊負責從Arduino UNO 開發板向服務器發送數據測量系統的數據采集端。

圖3:總體流程圖
數據傳輸與處理主要是由眾多模塊如Ubuntu 操作系統、Django 物聯服務器、卡爾曼濾波算法以及MySQL 數據庫共同完成的。Ubuntu 在運行云服務框架的同時,有圖形化界面對數據庫表、系統后臺進行管理操作的作用,可以作為服務端操作系統平臺使用,設計中采用Django 得益于Django 可以使代碼重用,而且多個組件可以同時使用,并計算出平均值。MySQL 數據庫是考慮到數據和實時數據的安全性而選擇的數據存儲庫。
信號接收端包括W5100 網絡通信模塊、TFT-LCD 顯示模塊、警示信息設備以及Arduino UNO 開發板。而在這其中,網絡通信模塊可以通過互聯網接口從服務器中收集相關信息,使其可以兼具可快速訪問的服務器以及作為用戶使用軟件的作用;Arduino UNO板作為數據中間轉接站,通過對W5100 網絡通信模塊發布的數據執行邏輯分析,向TFT-LCD 顯示模塊和報警模塊發送請求,TFTLCD 顯示模塊的主要功能是顯示環境中工業灰塵的濃度、溫度和濕度各個值;報警模塊主要用于報警音樂的播放,如果灰塵濃度發到設定值時,Arduino 開發板給出音頻的輸出,提示人們要做好措施。
電路往往是設備開發中設計的難點,本研究主要對各個模塊及組成硬件內的電路進行規劃,同時解釋該電路系統的功能。其中硬件電路系統主要由包括Arduino 單片機、GP2Y1014AU 光學傳感器、ESP8266 無線傳輸模塊、DHT11 溫度和濕度檢測模塊、W5100 網絡通信模塊、TFT-LCD 顯示模塊、警告信息模塊組成。實物圖如圖2所示。
Arduino IDE 軟件用于編寫硬件代碼。作為Atmel 公司為Ardunio 開發環境特別開發軟件,Arduinio 產品不下載代碼就無法運行。此模塊使用的CPU 是Arduino,創建和寫入Arduino 的程序時,使用Arduino IDE。Arduino IDE 有一個簡單的編譯接口。編譯的啟動加載器固件將通過USB 下載線直接寫入Arduino 的AVR 中。總體程序硬件設備初始化,然后傳感器開始檢測,然后底下寫微塵濃度傳感器開始檢測,然后底下寫是否為塵濃度超過閾值,就是超過設定值是的話就開始報警,什么開始報警語音模塊或者蜂鳴器都可以,然后再往下紙否的話,直接拉下來,然后再往下就是開放版收集信息上傳數據總體流程圖如圖3所示。
基于作為服務器的Untu 操作系統,服務器側系統的構建過程、作為服務器的框架的Django、作為數據存儲系統的MySQL 數據庫以及用于計算的卡爾曼濾波算法。
工業微塵不單會影響工業生產,其廢氣排放是世界性的災害問題,對氣候、環境、人類健康造成嚴重影響,因此受到廣泛關注。為了實現工業用灰塵濃度的實時監控,本文將討論工業用灰塵濃度測定系統的設計和實施。設計實現了測量系統整體的部分組成部分,如數據獲取端、服務器端、信號接收端和其他系統等。硬件選擇上,Arduino UNO 被用作測量系統的主控制芯片??苫贏rduino 的優勢來根據需要添加額外的擴展插件來滿足用戶的需要。服務器端基于Ununtu 操作系統設計、采用Django、MySQL 數據庫作為數據存儲系統。實現工業粉塵濃度的實時監視、顯示、報警功能,通過比較溫度和濕度與工業粉塵濃度,調查溫度和濕度對工業粉塵濃度的影響。工業粉塵濃度測定系統的設計和安裝已經完成。使用基于Arduino 平臺的工業用灰塵濃度測定系統,可以實時監視檢測環境中工業用塵埃的濃度,進行有效的數據分析。