吳波濤,孟曉靜,孔金平
(1.中國衛(wèi)星海上測控部 江蘇 江陰214431;2.北京易地斯埃東方環(huán)境景觀設(shè)計研究院有限公司 北京100015)
基于開源硬件的環(huán)境監(jiān)測系統(tǒng)的設(shè)計與實現(xiàn)
吳波濤1,孟曉靜2,孔金平1
(1.中國衛(wèi)星海上測控部 江蘇 江陰214431;2.北京易地斯埃東方環(huán)境景觀設(shè)計研究院有限公司 北京100015)
為實現(xiàn)環(huán)境監(jiān)測的自動化、實時化和網(wǎng)絡(luò)化,設(shè)計了一種基于開源硬件的環(huán)境監(jiān)測系統(tǒng)。將該系統(tǒng)架構(gòu)設(shè)計為三層:感知層、網(wǎng)絡(luò)層和應用層。感知層為基于開源硬件和傳感器技術(shù)開發(fā)的智能終端,負責溫濕度、PM2.5等環(huán)境數(shù)據(jù)的采集、封裝處理和顯示,并具備網(wǎng)絡(luò)連接功能;網(wǎng)絡(luò)層依托以太網(wǎng)傳遞監(jiān)測數(shù)據(jù);應用層采用Apache/Tomcat+Java+MySQL的B/S架構(gòu),實現(xiàn)數(shù)據(jù)的存儲、分析和展示功能。運行結(jié)果表明該系統(tǒng)實時性好、數(shù)據(jù)采集精確、擴展性好,無線連網(wǎng)易于部署,可廣泛應用于工農(nóng)業(yè)、軍事監(jiān)測等領(lǐng)域。
開源硬件;智能終端;環(huán)境監(jiān)測;B/S架構(gòu)
工農(nóng)業(yè)生產(chǎn)、商業(yè)活動和軍事等領(lǐng)域?qū)Νh(huán)境監(jiān)測具有大量的需求。在摩爾定律的推動下,隨著計算能力價格的下降和互聯(lián)網(wǎng)、通信技術(shù)、傳感器技術(shù)的發(fā)展,網(wǎng)絡(luò)化、智能化的監(jiān)測設(shè)備正越來越多地應用于人們的日常生活和工業(yè)生產(chǎn)中[1-3]。環(huán)境監(jiān)測對數(shù)據(jù)的準確性、實時性有較高要求;根據(jù)其應用需求,往往要求監(jiān)測系統(tǒng)的監(jiān)測節(jié)點易于部署,采集的數(shù)據(jù)能夠順暢地傳輸,并且數(shù)據(jù)便于處理、獲取和展示。為此本文開發(fā)智能化、網(wǎng)絡(luò)化的環(huán)境監(jiān)測系統(tǒng),基于開源硬件和傳感器技術(shù)開發(fā)智能終端,實現(xiàn)環(huán)境數(shù)據(jù)的采集和智能終端的網(wǎng)絡(luò)連接功能,便于監(jiān)測節(jié)點的廣泛部署;開發(fā)基于Apache/Tomcat+Java+MySQL的B/S數(shù)據(jù)服務(wù)系統(tǒng),便于數(shù)據(jù)的存儲、分析處理、獲取和展示。
為了降低系統(tǒng)開發(fā)的難度,并使系統(tǒng)具備良好的擴展性和通用性,將系統(tǒng)整體架構(gòu)設(shè)計為3個層級[4-7]:底層感知層—基于開源硬件和傳感器技術(shù)開發(fā)的智能監(jiān)測終端,主要完成環(huán)境數(shù)據(jù)的采集、處理,同時具備網(wǎng)絡(luò)連接功能,為便于監(jiān)測節(jié)點的部署,同時具備有線和無線網(wǎng)絡(luò)連接功能;第二層網(wǎng)絡(luò)層—直接依托互聯(lián)網(wǎng)/以太網(wǎng)傳輸數(shù)據(jù),通過WiFi和以太網(wǎng)技術(shù)實現(xiàn)檢測節(jié)點的泛在接入[8-10];最頂層的應用層—搭建基于Apache/Tomcat+Java+MySQL技術(shù)的B/S架構(gòu)數(shù)據(jù)服務(wù)系統(tǒng),對數(shù)據(jù)進行存儲、分析及展示[11-13]。系統(tǒng)的智能終端和應用層都具備超限報警功能,當監(jiān)測到的環(huán)境數(shù)據(jù)如溫濕度或PM2.5值超過設(shè)定值,則系統(tǒng)將發(fā)出聲光告警,提醒相關(guān)人員及時處理。
系統(tǒng)三層架構(gòu)中的網(wǎng)絡(luò)層依托互聯(lián)網(wǎng)或單位局域網(wǎng)傳遞數(shù)據(jù),因此主要的設(shè)計和開發(fā)工作集中在感知層和應用層。系統(tǒng)感知層、應用層設(shè)計框圖如圖1所示。
圖1 監(jiān)測系統(tǒng)感知層、應用層設(shè)計框圖
感知層以開源硬件Arduino UNO R3和樹莓派為開發(fā)平臺,通過Arduino豐富的硬件接口連接傳感器,采集環(huán)境數(shù)據(jù)并實現(xiàn)數(shù)據(jù)的顯示和聲光告警功能;通過串口連接Arduino板與Raspberry Pi板,將Arduino采集的數(shù)據(jù)傳遞給Raspberry Pi板;Raspberry Pi通過無線網(wǎng)絡(luò)擴展模塊以無線模式經(jīng)以太網(wǎng)上傳數(shù)據(jù)至數(shù)據(jù)庫服務(wù)器或監(jiān)控端。感知層的智能終端可大量部署并通過以太網(wǎng)組網(wǎng),最終形成監(jiān)測網(wǎng)絡(luò)。
應用層部署MySQL數(shù)據(jù)庫服務(wù)器,存儲監(jiān)測數(shù)據(jù);Apache/Tomcat服務(wù)器實現(xiàn)對數(shù)據(jù)的處理、分析,并通過可視化技術(shù)和Ajax技術(shù)實現(xiàn)數(shù)據(jù)的可視化展示,實現(xiàn)數(shù)據(jù)實時展示、歷史數(shù)據(jù)查詢和數(shù)據(jù)分析功能[14-15]。此外,開發(fā)C#或MFC的窗口監(jiān)測終端軟件,同樣實現(xiàn)上述功能和告警信息展示、合成語音告警功能,給用戶更多選擇。
感知層以智能監(jiān)測終端為主體,該監(jiān)測終端主要包含Raspberry Pi和Arduino UNO控制板、DHT11溫濕度傳感器、SHARP GP2Y1010AU0F光學粉塵傳感器、數(shù)字蜂鳴器、LED燈、1602LCD顯示器和WiFi擴展模塊。Arduino與傳感器、LED、LCD及蜂鳴器電路圖如圖2所示,智能終端硬件原型實物圖如圖3所示。Arduino UNO板通過串口轉(zhuǎn)USB與Raspberry Pi板USB口連接,通過串口協(xié)議通信;Raspberry通過網(wǎng)絡(luò)擴展板實現(xiàn)無線網(wǎng)絡(luò)連接功能,同時其本身具有10/100以太網(wǎng)接口。
2.1 控制板
控制板采用Raspberry Pi+Arduino UNO板,其中Raspberry Pi板采用ARM11架構(gòu)CPU,工作頻率達700 MHz,內(nèi)存512 MB,具備強大的計算能力,采用SD卡作為存儲介質(zhì),系統(tǒng)可運行基于Linux的Raspbian操作系統(tǒng),具有圖形化桌面系統(tǒng),方便編程及操作,同時具備多個GPIO、USB接口和10/100以太網(wǎng)接口,可直接接入以太網(wǎng),利用EP-N8508GS無線網(wǎng)絡(luò)模塊可接WiFi。Arduino UNO控制板采用ATMega328控制器,工作頻率16 MHz,擁有GPIO、I2C、SPI、UART等接口,滿足多樣化硬件接入需求,可連接多樣化的傳感器。
圖2 智能監(jiān)測終端數(shù)據(jù)采集部分電路圖
圖3 智能硬件終端原型實物圖
2.2 溫濕度傳感器
文中采用DHT11溫濕度傳感器采集環(huán)境溫濕度數(shù)據(jù)。DHT11集成了溫度、濕度傳感器和一個8位的微控制器,實際使用中接3根引腳(電源引腳、數(shù)據(jù)引腳、接地)即可工作,通過數(shù)據(jù)引腳輸出經(jīng)校準的數(shù)字信號,具備高的可靠性和穩(wěn)定性,采用單總線串行接口與微處理器通訊,系統(tǒng)集成便捷。連線長度小于20 m時可連接5 kΩ上拉電阻。
2.3 光學粉塵傳感器
采用SHARP GP2Y1010AU0F傳感器,檢測空氣粉塵顆粒。該傳感器是光學空氣質(zhì)量傳感器,包含一個紅外發(fā)射二極管和光學傳感器。該傳感器功耗低,根據(jù)空氣中的粉塵密度輸出模擬電壓值,敏感度達0.5 V/0.1 mg/m3。
環(huán)境監(jiān)測系統(tǒng)的軟件部分根據(jù)前文的架構(gòu)設(shè)計可以分為智能終端部分和應用層部分,智能終端部分實現(xiàn)環(huán)境數(shù)據(jù)的采集、解析、顯示、告警、封裝和上傳,應用層部分實現(xiàn)數(shù)據(jù)的存儲、分析和顯示告警等功能。系統(tǒng)總體軟件流程設(shè)計如圖4所示。
3.1 溫濕度傳感器
DHT11傳感器每一次傳遞的數(shù)據(jù)含40位,一次傳輸?shù)臄?shù)據(jù)包括8位濕度值整數(shù)部分、8位濕度小數(shù)部分、8位溫度整數(shù)部分、8位溫度小數(shù)部分、8位校驗和。DHT11傳感器數(shù)據(jù)引腳默認為高電平,Arduino與DHT11傳感器開始通信時,由Arduino向DHT11傳感器發(fā)送一個至少18 ms長的低電平信號作為“開始信號”,之后 Arduino 輸出 20~40 μs的高電平等待DHT11傳感器的響應。DHT11傳感器在檢測到開始信號之后,在數(shù)據(jù)引腳輸出持續(xù)80 μs的低電平信號作為 “響應信號”,之后輸出持續(xù)80 μs的高電平準備發(fā)送數(shù)據(jù)。數(shù)據(jù)傳送期間,每一位數(shù)據(jù)的發(fā)送以50 μs的低電平開始,之后持續(xù)一段時間的高電平。高電平持續(xù)的時間決定該位數(shù)據(jù)是“0”還是“1”。 若高電平持續(xù)時間為 26~28 μs,則數(shù)據(jù)位為“0”;若高電平持續(xù)時間為70 μs,則數(shù)據(jù)位為1。Arduino讀取DHT11數(shù)據(jù)程序設(shè)計如圖5所示。
圖4 系統(tǒng)軟件設(shè)計流程圖
圖5 Arduino讀取DHT11數(shù)據(jù)程序設(shè)計
3.2 粉塵傳感器
每次測量開始后傳感器觸發(fā)紅外管發(fā)光,并由光學傳感器捕獲,如果光被灰塵遮擋則會引起PWM波形的高低變化,經(jīng)過外部220 μF電容平滑方波,形成可被測量模擬波形,傳感器輸出模擬電壓值。由傳感器輸出模擬電壓值與灰塵密度關(guān)系曲線,可擬合出Arduino讀取的模擬電壓voMeasured與灰塵密度的線性關(guān)系式:
calcVoltage=voMeasured*(5.0/1024.0)
dustDensity=0.172*calcVoltage-0.099
dustDensity=0.172*voMeasured*(5.0/1024.0)-0.099
其中,calcVoltage為實際電壓值,由Arduino讀取的模擬電壓值voMeasured轉(zhuǎn)換得到。
應用層客戶端網(wǎng)頁運行效果如圖6所示,可實時展示檢測網(wǎng)絡(luò)各節(jié)點數(shù)據(jù)采集情況和查詢歷史數(shù)據(jù)。
圖6 應用層客戶端網(wǎng)頁運行效果圖
文中設(shè)計了一種基于開源硬件的環(huán)境監(jiān)測系統(tǒng),實現(xiàn)環(huán)境監(jiān)控的自動化、實時化、網(wǎng)絡(luò)化。該系統(tǒng) 分為感知層、網(wǎng)絡(luò)層和應用層,感知層為基于開源硬件和傳感器技術(shù)開發(fā)的智能終端,實現(xiàn)環(huán)境數(shù)據(jù)的采集、上傳、實時顯示和告警功能;應用層采用B/S架構(gòu),實現(xiàn)數(shù)據(jù)的存儲、分析和查詢、展示功能。系統(tǒng)易于網(wǎng)絡(luò)化部署、可擴展性強,可廣泛應用于多個領(lǐng)域的環(huán)境監(jiān)測,實際部署使用效果良好。
[1]雷文禮,任新成,曹新亮.基于單片機的自動氣象監(jiān)測系統(tǒng)的設(shè)計與實現(xiàn)[J].現(xiàn)代電子技術(shù),2015,38(19):121-124.
[2]張冬林,李鑫,戴梅,等.基于 DHT11的低成本蠶室溫濕度自動控制系統(tǒng)的設(shè)計[J].現(xiàn)代農(nóng)業(yè)科技,2010(18):14-15.
[3]曾曉英,姜虹,羅朝斌,等.溫濕度對普通蠶品種吐平面絲成績的影響 [J].貴州農(nóng)業(yè)科學,2009,37(5):126-127.
[4]Chang K D,Chen C Y,Chen J L,et al.Internet of things and cloud computing for future internet[C]//Security-Enriched Urban Computing and Smart Grid.Springer Berlin Heidelberg,2011:1-10.
[5]GUBBI J,BUYYA R,MARUSIC S,et al.Internet of Things (IoT):A vision,architectural elements,and future directions [J].Future Generation Computer Systems,2013,29(7):1645-1660.
[6]黃玉蘭,物聯(lián)網(wǎng)概論[M].北京:人民郵電出版社,2011.
[7]ITU-T Y.Overview of ubiquitous networking and of its support in NGN[J].ITU-T Recommendation,2009.
[8]常英亮.基于嵌入式 Linux的物聯(lián)網(wǎng)網(wǎng)關(guān)研究與實現(xiàn) [D].北京:北京交通大學,2014.
[9]CHEN H,JIA X,LI H.A brief introduction to IoT gateway[C]//IET International Conference on Communication Technology and Application(ICCTA 2011),2011:610-613.
[10]Zahariadis T B,Trakadas P,Leligou H C,et al.Securing wireless sensor networks towards a trusted"Internet of Things"[C]//Future Internet Assembly,2009:47-56.
[11]Song B,Zhang Y,Zhou C S.Implementation on network teaching system based on Java EE architecture [C]//Information Technology and Computer Science (ITCS),2010 Second International Conference on.IEEE,2010:227-231.
[12]Guinard D.A web of things application architecture-Integrating the real-world into the web[D].ETH Zurich,2011.
[13]吳振宇.基于Web的物聯(lián)網(wǎng)應用體系架構(gòu)和關(guān)鍵技術(shù)研究[D].北京:北京郵電大學,2013.
[14]Roalter L,Kranz M,M?ller A.A middleware for intelligent environments and the internet of things[C]//Ubiquitous Intelligence and Computing.Springer Berlin Heidelberg,2010:267-281.
[15]Luo J,Chen L,Chen L.A tactic agent middleware in wireless sensor networks based on associative monitoring scheme[J].International Journal of Digital Content Technology& its Applications,2011,5(11).
Design and implementation of environment monitoring system based on open source hardware
WU Bo-tao1,MENG Xiao-jing2,KONG Jin-ping1
(1.China Satellite Maritime Tracking and Control,Jiangyin 214431,China; 2.Beijing EDSA Orient Ltd.,Beijing 100015,China)
To realize an automatic,real-time and networking environment monitoring system,a monitoring system based on open source hardware is designed,whose architecture contains three layers,sensing domain,network domain and application domain.The sensing domain consists of intelligent terminals based on open source hardware and sensors,which measures environment data of temperature,humidity and PM2.5,and packages,analyzes,displays data,and also has network connection function.The network domain is based on Ethernet to transmit data.The application domain is based on B/S architecture of Apache/Tomcat+Java+MySQL to implement functions of data storage,analysis and display.The system has the feature of real-time,high accuracy of data measuring,good extensibility,and easy for deployment due to its wireless network connection function.The system can be widely applied in environment monitoring of agriculture,industry,military and many other fields.
open source hardware;intelligent terminal; monitoring system; B/S architecture
TN871
:A
:1674-6236(2017)14-0167-05
2016-05-20稿件編號:201605196
吳波濤(1987—),男,江西南城人,碩士,工程師。研究方向:自動控制、物聯(lián)網(wǎng)。