張金 王文清
摘 要:針對現(xiàn)有工廠多環(huán)境參數(shù)監(jiān)測系統(tǒng)結(jié)構(gòu)復雜、功耗大、成本高等問題,設計了一套基于FPGA技術(shù)的多環(huán)境參數(shù)在線監(jiān)測系統(tǒng),實現(xiàn)了對工廠NO2氣體濃度、溫濕度、空氣懸浮顆粒物濃度的遠程在線監(jiān)測。系統(tǒng)以FPGA作為核心控制器,通過ESP8266無線通信模塊將監(jiān)測數(shù)據(jù)上傳至ONENET云平臺,可實現(xiàn)對化工廠內(nèi)溫濕度、和PM2.5、PM10濃度、NO2濃度等環(huán)境參量的實時上報。實驗結(jié)果表明,通過FPGA多通道并行傳輸與處理的方式可實現(xiàn)對大氣多參數(shù)的實時同步監(jiān)測,同時增加了系統(tǒng)的靈活性,有利于系統(tǒng)的拆裝和擴展,且在硬件結(jié)構(gòu)、體積、采集速率、數(shù)據(jù)實時性方面有所改善。
關(guān)鍵詞:FPGA;環(huán)境監(jiān)測;ESP8266無線通信;ONENET平臺
Abstract:Aiming at the problems of complex structure, high power consumption and high cost of the existing factory multi-environmental parameter monitoring system, a set of on-line monitoring system for multi-environmental parameters based on FPGA technology was designed, which realized the remote on-line monitoring of NO2 gas concentration, temperature and humidity and airborne particulate matter concentration in the factory. With FPGA as the core controller, the system uploads the monitoring data to ONENET cloud platform through ESP8266 wireless communication module, which can realize real-time reporting of temperature and humidity in chemical plants, and environmental parameters such as PM2.5, PM10 concentration and NO2 concentration. The experimental results show that the real-time synchronous monitoring of atmospheric multi-parameters can be realized by FPGA multi-channel parallel transmission and processing, which increases the flexibility of the system, facilitates the disassembly and expansion of the system, and improves the hardware structure, volume, acquisition rate and real-time data.
Key words:FPGA;environmental monitoring;ESP8266 wireless communication;ONENET cloud platform
1 緒論
中國工業(yè)化生產(chǎn)的發(fā)展非常迅速,但是與此同時也造成了很大的環(huán)境污染和人員的健康威脅。比如某些氣體的泄漏會造成廠區(qū)爆炸和人員的傷亡或者引起呼吸道慢性病。傳統(tǒng)的環(huán)境檢測方式一般采用人員檢測,這樣就會使監(jiān)測人員存在未知的安全隱患;目前市場還有采用機器車進行監(jiān)測,但這種監(jiān)測方式成本較高,不適合盈利性工廠的理念。
針對目前環(huán)境監(jiān)測市場存在的諸多問題,設計了一款基于FPGA的多環(huán)境參數(shù)監(jiān)測系統(tǒng),整個系統(tǒng)包括監(jiān)測終端設備、云平臺以及作為他們兩者之間數(shù)據(jù)交互橋梁的無線通信模塊。將監(jiān)測終端設備放到需要監(jiān)測的廠區(qū),這樣無線通信模塊就能將監(jiān)測終端監(jiān)測的環(huán)境數(shù)據(jù)上傳至云平臺,這樣監(jiān)管人員只需要對云平臺的數(shù)據(jù)進行查看,即可了解到監(jiān)測區(qū)域的環(huán)境狀況。
本系統(tǒng)終端設備的主控芯片選用的是FPGA,F(xiàn)PGA芯片引腳數(shù)目多,而且因為其強大充分的內(nèi)部資源,所以FPGA具有編程配置靈活的特點。相比于ARM芯片而言,F(xiàn)PGA采用的是純硬件編程思維,具有并行處理的能力;而且FPGA有抗干擾能力強、功耗低等優(yōu)點[1-2]。本系統(tǒng)根據(jù)FPGA并行處理數(shù)據(jù)的能力,在監(jiān)測終端接入了多個傳感器,多個傳感器可采集多種環(huán)境參數(shù),這樣使監(jiān)測的效率大大提高。而且對系統(tǒng)采集數(shù)據(jù)通過無線傳輸模塊進行無線傳輸,實現(xiàn)了環(huán)境數(shù)據(jù)的遠程實時同步采集。
本設計采用的云平臺為中移物聯(lián)網(wǎng)云平臺,這款云平臺不僅開發(fā)簡單,而且功能強大,具有數(shù)據(jù)接收存儲和命令下發(fā)的功能,這個平臺可以接入多個設備和數(shù)據(jù)流[3-4],這樣就和本系統(tǒng)設計的多種環(huán)境數(shù)據(jù)監(jiān)測的理念相一致。在此平臺上可以設計數(shù)據(jù)流顯示界面,這樣監(jiān)管人員可以很方便地對數(shù)據(jù)進行查看分析及操作。
2 系統(tǒng)整體結(jié)構(gòu)設計
本系統(tǒng)整體結(jié)構(gòu)設計包含了監(jiān)測節(jié)點終端、Wi-Fi無線通信模塊、云平臺和遠程終端這四個部分。系統(tǒng)整體實現(xiàn)的功能就是將監(jiān)測終端采集的傳感器信息上傳至云服務器,最后用戶可通過遠程終端對終端采集的數(shù)據(jù)進行實時查看。系統(tǒng)整體結(jié)構(gòu)框圖1所示。
3 系統(tǒng)硬件設計
系統(tǒng)監(jiān)測終端硬件設計采用模塊化設計原理。硬件模塊主要包括:主控模塊、電源模塊、FLASH存儲、無線通信模塊、溫濕度監(jiān)測模塊、空氣懸浮顆粒物監(jiān)測模塊、NO2氣體傳感器模塊、電機控制模塊(空氣泵)等。各模塊的連接如圖2所示。
3.1 主控模塊
本系統(tǒng)提出以現(xiàn)場可編程門陣列(FPGA)作為主控芯片,將接口通信功能、控制功能、數(shù)據(jù)緩存功能、數(shù)據(jù)處理功能集成在芯片內(nèi)部,通過多通道并行傳輸與處理的方式實現(xiàn)對大氣多參數(shù)的實時同步監(jiān)測。本系統(tǒng)的主控芯片選取的是Xilinx公司的Spartan6系列的FPGA,其內(nèi)部資源足以完成本設計功能實現(xiàn)。通過FPGA控制各路傳感器和空氣泵的工作與否,實現(xiàn)了多環(huán)境參數(shù)的采集、傳輸與存儲。
3.2 電源模塊
電源模塊為整個系統(tǒng)的各個硬件電路模塊提供供電支持,對系統(tǒng)的穩(wěn)定性有著至關(guān)重要的作用。所以在設計電源模塊的電路時,得首先對其他模塊的電壓及功耗進行考慮,從而設計整個系統(tǒng)的供電模塊。本系統(tǒng)電源模塊是使用12V 4800mA聚合物鋰電池作為供電電源,然后通過穩(wěn)壓降壓電路實現(xiàn)12V電壓到5V和3.3V的電壓轉(zhuǎn)換,從而滿足了整個系統(tǒng)供電需求。
3.3 傳感器模塊
因為需要監(jiān)測的環(huán)境參數(shù)有NO2濃度、溫濕度及PM2.5、PM10的濃度。因此本系統(tǒng)采用了三個傳感器對這幾個環(huán)境參數(shù)進行采集。一個是圣凱安公司成產(chǎn)的二氧化氮傳感器;還有PMSA003空氣懸浮顆粒物傳感器,其用來監(jiān)測PM2.5和PM10的濃度;最后一個是DHT11傳感器,用于采集環(huán)境的溫度和濕度。其中NO2傳感器與PMSA003使用串口輸出方式,DHT11使用單總線串口傳輸方式[5]。
3.4 電機控制模塊
空氣泵控制電路用于實現(xiàn)空氣泵的開關(guān)控制。其控制電路如圖3所示。其中繼電器選用SRD-05VDC,吸合電壓為5V,光耦EL817C845對FPGA芯片與控制電路進行光電隔離,從而實現(xiàn)了對主控芯片進行保護,增強了主控芯片的穩(wěn)定性。
3.5 無線通信模塊
本系統(tǒng)是要將監(jiān)測終端的監(jiān)測數(shù)據(jù)上傳至云平臺進行數(shù)據(jù)分析與查看,所以對于這種遠距離的監(jiān)測任務,我們需要使用無線傳輸模塊進行數(shù)據(jù)傳輸,對市面上常用的無線傳輸模塊性價比進行對比分析后,最終選擇了ESP8266這款無線通信模塊作為監(jiān)測終端和云平臺的橋梁。
4 系統(tǒng)軟件設計
系統(tǒng)軟件的設計是在系統(tǒng)硬件設計和ONENET云平臺通信協(xié)議的基礎上進行的。環(huán)境監(jiān)測系統(tǒng)軟件設計根據(jù)系統(tǒng)的總體結(jié)構(gòu)分為環(huán)境監(jiān)測終端數(shù)據(jù)采集程序設計、監(jiān)測終端與云平臺通信主程序設計和ONENET云平臺上位機軟件的設計三個部分。如圖4所示為系統(tǒng)軟件設計的總體架構(gòu)。
4.1 數(shù)據(jù)采集部分軟件設計
FPGA數(shù)據(jù)采集這部分的軟件設計,首先按系統(tǒng)功能進行模塊劃分。主要分為系統(tǒng)同步時鐘模塊、信號收發(fā)模塊、指令解析模塊、傳感器模塊、數(shù)據(jù)打包模塊和數(shù)據(jù)緩存處理模塊等。數(shù)據(jù)采集部分總體框架如圖5所示。
信號收發(fā)模塊system_uart_top包括串口時序配置模塊,cmd_receive命令接收模塊、和data_send數(shù)據(jù)發(fā)送模塊。接收到上位機傳來的請求信號后,system_uart_top將請求信號發(fā)送給信號解析模塊cmd_decode進行解析。
cmd_decode模塊將請求信號解析后經(jīng)判斷確認上位機需要哪些傳感器數(shù)據(jù),并將使能信號發(fā)送給相應傳感器模塊。傳感器模塊com1-com6中相應傳感器接收到使能信號后,進行對所對應的氣體數(shù)據(jù)進行采集,并將數(shù)據(jù)發(fā)送給數(shù)據(jù)打包模塊data_encode。data_encode數(shù)據(jù)打包模塊從傳感器模塊處接收信息,根據(jù)之前確定的氣體監(jiān)測通信協(xié)議,將傳感器采集到的氣體數(shù)據(jù)處理為特定格式的信號,并進行打包發(fā)送給信號收發(fā)模塊system_uart_top。
最后再由信號收發(fā)模塊system_uart_top將打包好的氣體數(shù)據(jù)發(fā)送給上位機。
4.2 監(jiān)測終端與云平臺通信部分軟件設計
ESP8266無線通信模塊上電后,首先對ESP8266模塊進行信息配置,接著搜索并連接Wi-Fi。連接成功后,將ESP8266無線模塊接入終端設備。因為ESP8266與云平臺建立TCP連接,需要發(fā)送AT指令,所以在這部分軟件設計中,F(xiàn)PGA將需要發(fā)送的AT指令通過串口發(fā)送給無線模塊,從而成功的建立ESP8266模塊云平臺的連接。ESP8266無線通信模塊工作流程如圖6所示。
4.3 ONENET云平臺上位機設計部分
要實現(xiàn)整個系統(tǒng)的搭建,就需要將前面設計的監(jiān)測終端接入云平臺。這樣就可以將監(jiān)測終端采集的監(jiān)測數(shù)據(jù)進行有效的展示。本系統(tǒng)采用的云平臺是ONENET云平臺。使用ONENET云平臺,首先需要在此云平臺進行用戶注冊,建立開發(fā)者的開發(fā)平臺。在注冊和登錄完成后,在“開發(fā)者中心”創(chuàng)建產(chǎn)品并進行設備綁定。
ONENET基本開發(fā)流程如圖7所示。
5 實驗結(jié)果
用戶登錄ONENET云平臺成功后,可以看到產(chǎn)品概況、產(chǎn)品id、tcp透傳方式以及設備在線等信息界面;在產(chǎn)品操作界面點擊設備列表,就可以看到用戶創(chuàng)建的溫度、濕度、PM2.5、NO2等設備;此外還可以看到設備所在的地圖位置信息。
將監(jiān)測設備放置化工廠房內(nèi),監(jiān)測的數(shù)據(jù)信息在ONENET云平臺上的展示如圖8所示。
6 結(jié)語
傳統(tǒng)環(huán)境監(jiān)測系統(tǒng)的硬件需要擴展外圍電路,而且數(shù)據(jù)采集過程也存在著實時性差的情況。本設計是采用FPGA作為主控芯片,F(xiàn)PGA具有并行處理數(shù)據(jù)的能力,對于本設計的多路傳感器數(shù)據(jù)采集具有很大的優(yōu)勢[6]。在FPGA內(nèi)部,根據(jù)其內(nèi)部充分的資源,能夠?qū)崿F(xiàn)本設計多環(huán)境參數(shù)數(shù)據(jù)的采集與存儲。而且在FPGA內(nèi)部對于采集的傳感器數(shù)據(jù)可以進行有效處理,使得整個系統(tǒng)具有很強的可靠性和實用性。本設計的整體設計方案采用以FPGA作為核心控制器,不同于以往的基于ARM的數(shù)據(jù)采集。就是利用了FPGA對于多通道數(shù)據(jù)采集的強大優(yōu)勢。這樣是整個系統(tǒng)非常具有針對性和普適性。
本系統(tǒng)是將獲取的多種環(huán)境數(shù)據(jù)在中移物聯(lián)網(wǎng)這個免費的云平上進行展示,由于ONENET云平臺是一個免費的開發(fā)平臺,這樣就降低了項目的開發(fā)成本。而且在此平臺上的數(shù)據(jù)具有實時性及開放性的特點,使得監(jiān)管人員能夠隨時隨地的對被監(jiān)測區(qū)域的環(huán)境進行有效查看與分析。這種將終端數(shù)據(jù)上傳至云平臺進行數(shù)據(jù)查看的方式,很符合社會現(xiàn)在環(huán)境監(jiān)測系統(tǒng)越來越自動化的發(fā)展趨勢。
參考文獻:
[1]夏宇聞.Verilog數(shù)字系統(tǒng)設計教程[M].北京:北京航空航天大學出版社,2005.
[2]王建中,楊璐.高速實時系統(tǒng)數(shù)據(jù)采集與傳輸[J].計算機科學,2016,43(S2):604-606.
[3]丁飛,吳飛,艾成萬,等.基于OneNET平臺的環(huán)境監(jiān)測系統(tǒng)設計與實現(xiàn)[J].南京郵電大學學報(自然科學版),2018,38(04):24-29.
[4]尤琦涵,陳兆仕,張沁.OneNET云平臺Wi-Fi遠程控制的智能教室系統(tǒng)[J].單片機與嵌入式系統(tǒng)應用,2017,17(10):69-73.
[5]林倩.DHT11數(shù)字溫濕度傳感器通信協(xié)議的IO模擬[J].信息通信,2017(01):206-207.
[6]易志強,韓賓,江虹,等.基于FPGA的多通道同步實時高速數(shù)據(jù)采集系統(tǒng)設計[J].電子技術(shù)用,2019,45(06):70-74.
作者簡介:張金(1995— ),女,漢族,陜西渭南人,碩士,研究方向:現(xiàn)代傳感與信息處理;王文清(1995— ),男,漢族,云南曲靖人,碩士,研究方向:現(xiàn)代傳感與信息處理。