薩良兵 劉華
摘 要:設(shè)計了一個基于Arduino Mega 2560為主控芯片、以MQ-4甲烷傳感器、MQ-7一氧化碳傳感器、MQ-137氨氣傳感器、
MH-Z14二氧化碳氣體傳感器和DHT11溫濕度傳感器為數(shù)據(jù)采集模塊的室內(nèi)空氣采集系統(tǒng)平臺。該系統(tǒng)可以通過A/D、D/A轉(zhuǎn)換和串口實時讀取空氣中氣體濃度,并能與上位機中的Matlab實現(xiàn)數(shù)據(jù)傳輸?shù)裙δ堋Mㄟ^實驗室測試和調(diào)整,較好地實現(xiàn)了預(yù)期功能。
關(guān)鍵詞:Arduino;氣體傳感器;Matlab
中圖分類號:TP274+.2 文獻標志碼:A 文章編號:2095-2945(2018)26-0051-03
Abstract: An indoor air acquisition system platform based on Arduino Mega 2560 is designed, in which MQ-4 methane sensor, MQ-7 carbon monoxide sensor, MQ-137 ammonia sensor, MH-Z14 carbon dioxide sensor and DHT11 temperature and humidity sensor are used as data acquisition modules. The system can read the gas concentration in the air in real time through A/D, D/A conversion and serial port, and can transmit data with Matlab in the host computer. Through the laboratory test and adjustment, the expected function is achieved.
Keywords: Arduino; gas sensor; Matlab
室內(nèi)空氣采集[1],是指對室內(nèi)某些氣體含量進行檢測并采集,直接反映了室內(nèi)空氣質(zhì)量情況,也體現(xiàn)了空氣中污染物濃度的高低。根據(jù)室內(nèi)空氣質(zhì)量標準(GB/T18883-2002)[2],室內(nèi)空氣質(zhì)量參數(shù)是指室內(nèi)空氣中與人體健康有關(guān)的物理、化學、生物和放射性參數(shù)。
美國估計因室內(nèi)空氣質(zhì)量惡化所造成的損失每年為590億美元[3]。故出于人體健康安全角度考慮,室內(nèi)空氣質(zhì)量檢測具有立竿見影的效果,即可以讓人們隨時清楚的知道室內(nèi)空氣污染物的濃度,采取相應(yīng)的防范措施。
1 系統(tǒng)設(shè)計
本系統(tǒng)邏輯可分為三部分,總體結(jié)構(gòu)框圖如圖1,整體實物圖如圖2:
讀取傳感器數(shù)據(jù):根據(jù)每種傳感器輸出的數(shù)據(jù)類型,利用A/D、PWM波將數(shù)據(jù)采集到核心控制器。
數(shù)據(jù)轉(zhuǎn)換:將控制器所讀取到的數(shù)據(jù)經(jīng)過相應(yīng)的D/A和數(shù)學公式轉(zhuǎn)換成實際的氣體濃度模擬量。
數(shù)據(jù)傳輸:控制器和上位機中Matlab編寫相應(yīng)的程
序,通過串口實現(xiàn)數(shù)據(jù)傳輸,將數(shù)據(jù)保存到Excel中。
2 傳感器
2.1 MQ系列氣體傳感器
MQ-4甲烷傳感器、MQ-7一氧化碳傳感器和MQ-137氨氣傳感器等MQ系列采用的氣敏材料都是二氧化錫(SnO2),因為其電導(dǎo)率較低。采用簡單電路就能把由于氣體濃度的變化導(dǎo)致電導(dǎo)率的變化轉(zhuǎn)化為相應(yīng)的電信號輸出[4]。
由模擬信號轉(zhuǎn)換成對應(yīng)濃度如公式(1)-(3):
2.2 溫濕度傳感器
DHT11(Digital Humidity Temperature)是能夠檢測到溫度和濕度的數(shù)字信號輸出的傳感器,它內(nèi)部含有對數(shù)據(jù)校準的數(shù)字信號。傳感器內(nèi)部包括一個NTC測溫元件和一個電阻式感濕元件,并和一個8位高性能的單片機相連接。
2.3 二氧化碳傳感器
MH-Z14二氧化碳氣體傳感器(以下簡稱MH-Z14傳感器)利用NDIR(非色散紅外)原理對空氣中的CO2進行檢測。它不僅體積小,而且還非常的智能通用,提供3種不同方式的輸出信號(模擬電壓、UART和PWM波),內(nèi)置溫度補償。它還具有很好的選擇性,對氧氣無依賴,壽命長。
MH-Z14傳感器的PWM波輸出的整個周期為1004ms,周期起始段為高電平輸出2ms,周期結(jié)束段為低電平輸出2ms。PWM波輸出見圖10。
PWM轉(zhuǎn)換成濃度如公式(4):
3 系統(tǒng)調(diào)試
3.1 軟件設(shè)計
單片機部分,初始化設(shè)置波特率和引腳等,接著主程序讀取傳感器數(shù)據(jù)并轉(zhuǎn)換,最后將實際數(shù)據(jù)傳輸?shù)酱?,供Matlab讀取,等待一分鐘進行下一次的數(shù)據(jù)讀取。
上位機部分,將傳輸?shù)酱诘臄?shù)據(jù)保存在Matlab的數(shù)組當中,再將數(shù)據(jù)保存在Excel表中。
3.2 數(shù)據(jù)采集
各個傳感器與Mega 2560的接法和輸出的信號形式等如表1所示:
系統(tǒng)調(diào)試成功后,結(jié)果如圖12所示。
由圖12可知當前甲烷濃度為975.68ppm,一氧化碳濃度為168.22ppm,氨氣濃度為41.09ppm,二氧化碳濃度為545.45ppm,溫度為24攝氏度,濕度為18RH。
4 Matlab數(shù)據(jù)處理
4.1 數(shù)據(jù)歸一化
系統(tǒng)連續(xù)工18個小時,記為第一次數(shù)據(jù)采集,原始數(shù)據(jù)如圖13所示。
當數(shù)據(jù)采集完成后,由于數(shù)據(jù)中各種參數(shù)之間的大小范圍或單位都不相同,在作圖時就會導(dǎo)致數(shù)值較大的數(shù)據(jù)掩蓋了數(shù)值較小的數(shù)據(jù)所發(fā)展的趨勢,故首先要對數(shù)據(jù)歸一化處理。選用mapminmax()歸一化函數(shù),它是Matlab軟件中自帶的函數(shù),它能按照一種映射方法將數(shù)據(jù)歸一化到[-1,1]之間,并且不改變原數(shù)據(jù)的規(guī)律。
利用Matlab將數(shù)據(jù)歸一化后如圖14。
4.2 數(shù)據(jù)平滑化
由圖13可以看出,只有數(shù)值較大的CH4和CO2的趨勢較為明顯,數(shù)值較小的溫度和濕度變化趨勢幾乎沒有。而圖14是經(jīng)過歸一化處理后的數(shù)據(jù),就能夠很明顯的看出每種參數(shù)的變化趨勢,但是由于數(shù)據(jù)存在波動問題,因此還要對數(shù)據(jù)平滑化處理。
在Matlab中數(shù)據(jù)的平滑函數(shù)用的是Z=smooth(Y,pan,method)函數(shù)。對于method有moving單純移動平均、lowess線性加權(quán)平滑、loess二次加權(quán)平滑等多種選擇,對數(shù)據(jù)平滑化處理選擇的是pan=12和method為loess方法。
以CH4為例,圖15中紅色曲線是歸一化后的數(shù)據(jù),藍色曲線是平滑化后的數(shù)據(jù)。
4.3 數(shù)據(jù)趨勢分析
第一次室內(nèi)空氣采集系統(tǒng)采集到的數(shù)據(jù),經(jīng)過歸一化和平滑化處理后,結(jié)果如圖16。
以CO2數(shù)據(jù)曲線為例,可見在3個時間段內(nèi)有數(shù)據(jù)波動。第一個時間段位有較大的數(shù)據(jù)波動,實際情況是當時室內(nèi)人數(shù)達到30人左右。以此類推將數(shù)據(jù)波動與實際情況對比發(fā)現(xiàn)都吻合,說明采集到的數(shù)據(jù)真實可靠。
5 設(shè)計總結(jié)
本文搭建了通過以Arduino Mega 2560為主控芯片、以MQ-4甲烷傳感器、MQ-7一氧化碳傳感器、MQ-137氨氣傳感器、MH-Z14二氧化碳氣體傳感器和DHT11溫濕度傳感器為數(shù)據(jù)采集模塊的室內(nèi)空氣采集系統(tǒng)平臺。該系統(tǒng)可以準確的實時讀取室內(nèi)指定的氣體濃度數(shù)據(jù),并通過上位機實現(xiàn)數(shù)據(jù)傳輸與處理。數(shù)據(jù)趨勢分析和準確性的驗證,結(jié)果表明數(shù)據(jù)真實可靠。
參考文獻:
[1]潘小川.室內(nèi)空氣質(zhì)量對人體健康的影響[J].中國科學基金,2005(04):205-208.
[2]GB/T18883-2002.室內(nèi)空氣質(zhì)量標準[S].
[3]呂品.室內(nèi)空氣質(zhì)量控制中關(guān)鍵檢測技術(shù)的研究[D].大連理工大學,2008.
[4]https://wenku.baidu.com/view/450f8c1352d380eb62946d62.html?from=search[EB/OL].