摘要: 目前市面上的空氣質(zhì)量檢測(cè)儀通常只能檢測(cè)少數(shù)幾種氣體,面對(duì)空氣中多種有害氣體,就要使用不同的檢測(cè)儀器。針對(duì)現(xiàn)有檢測(cè)系統(tǒng)功能不全等問(wèn)題,開(kāi)發(fā)了由STM32單片機(jī)、各類傳感器、LCD顯示屏和WiFi通信模塊組成的多功能檢測(cè)系統(tǒng),并利用機(jī)智云物聯(lián)網(wǎng)平臺(tái)傳輸數(shù)據(jù)到用戶終端。該檢測(cè)系統(tǒng)能夠?qū)崿F(xiàn)對(duì)空氣中的CO、CO2、PM2.5、TVOC、甲醛的含量以及溫濕度進(jìn)行實(shí)時(shí)監(jiān)測(cè),并具有超標(biāo)報(bào)警功能。
1引言
空氣中的有害物質(zhì)直接影響人們的心身健康,室內(nèi)空氣的危害氣體主要有CO、CO2、PM2.5、甲醛等[1]。溫濕度對(duì)人的舒適度有較大影響,低濕度環(huán)境對(duì)人有多種不利影響[2-4]。因此,對(duì)空氣中的有害氣體及環(huán)境的溫濕度進(jìn)行檢測(cè)是必要的,對(duì)人員密集、活動(dòng)頻繁的室內(nèi)公共場(chǎng)所進(jìn)行空氣質(zhì)量檢測(cè)尤為重要??諝赓|(zhì)量檢測(cè)方法可以根據(jù)檢測(cè)內(nèi)容的不同進(jìn)行設(shè)計(jì)。采用STC系列單片機(jī)可設(shè)計(jì)出室內(nèi)溫濕度、PM2.5顆粒物濃度檢測(cè)方法[5]。
利用STM32單片機(jī)能實(shí)現(xiàn)對(duì)室內(nèi)溫濕度、PM2.5以及甲醛濃度檢測(cè),數(shù)據(jù)可采用藍(lán)牙通信方式傳輸?shù)?a target="_blank">手機(jī)[8],也可利用網(wǎng)絡(luò)和Lo Ra(Long Range)無(wú)線通信技術(shù)實(shí)時(shí)地將檢測(cè)結(jié)果上傳至上位機(jī)[9]。上述方法對(duì)空氣質(zhì)量的檢測(cè)主要對(duì)象是溫濕度、PM2.5、CO、CO2甲醛濃度等,而且一臺(tái)檢測(cè)設(shè)備也難以完成這些目標(biāo)的同時(shí)檢測(cè)。在數(shù)據(jù)傳輸方面,藍(lán)牙通信距離短、可靠性不高,Lo Ra無(wú)線通信技術(shù)系統(tǒng)較復(fù)雜,成本相對(duì)高。
實(shí)際上,空氣中的有毒有害氣體比較多,例如空氣中的TVOC(TotalVolatile Organic Compounds總揮發(fā)性有機(jī)物,簡(jiǎn)稱TVOC)對(duì)空氣質(zhì)量影響大,引起了人們的高度重視。因此,針對(duì)目前空氣質(zhì)量檢測(cè)系統(tǒng)功能少的現(xiàn)狀提出了一個(gè)新的設(shè)計(jì)方案,系統(tǒng)設(shè)計(jì)以STM32單片機(jī)為主控器,由有關(guān)功能傳感器和Wi Fi無(wú)線通信模塊組成,利用機(jī)智云和Wi Fi無(wú)線通信技術(shù)將數(shù)據(jù)傳輸?shù)接脩艚K端,實(shí)現(xiàn)數(shù)據(jù)共享。該方案可完成多種有害氣體的檢測(cè),同時(shí)能對(duì)溫濕度進(jìn)行監(jiān)測(cè)。
2 系統(tǒng)設(shè)計(jì)方案
空氣質(zhì)量檢測(cè)系統(tǒng)可檢測(cè)多種有害氣體,對(duì)環(huán)境的溫度、濕度能進(jìn)行監(jiān)測(cè),檢測(cè)到的數(shù)據(jù)信息可上傳到機(jī)智云物聯(lián)網(wǎng)云平臺(tái),并發(fā)送到用戶終端,設(shè)計(jì)目標(biāo)和技術(shù)指標(biāo)如下:
2.1 設(shè)計(jì)目標(biāo)與技術(shù)指標(biāo)
2.1.1 設(shè)計(jì)目標(biāo)
(1) 具有能夠檢測(cè)CO、CO2、甲醛、TVOC、PM2.5和溫濕度檢測(cè)功能。
(2) 能夠在LCD屏上實(shí)時(shí)的顯示相關(guān)檢測(cè)數(shù)據(jù)。
(3) 利用Wi Fi無(wú)線通信技術(shù)上傳數(shù)據(jù)到機(jī)智云物聯(lián)網(wǎng)云平臺(tái)。
(4) 能將數(shù)據(jù)發(fā)送到用戶終端,實(shí)現(xiàn)用戶手機(jī)及電腦等設(shè)備遠(yuǎn)距離傳輸。
(5) 具有對(duì)有害氣體超標(biāo)提示與報(bào)警功能。
2.1.2 主要技術(shù)指標(biāo)
系統(tǒng)設(shè)計(jì)的技術(shù)指標(biāo)如表1所示:
表1技術(shù)指標(biāo)要求
2.2 系統(tǒng)組成與模塊選型
2.2.1 系統(tǒng)組成
根據(jù)設(shè)計(jì)目標(biāo)構(gòu)建系統(tǒng)組成,如圖1所示,系統(tǒng)主控制器為STM32,數(shù)據(jù)采集部分由二氧化碳(TVOC、溫濕度)傳感器模塊、甲醛傳感器模塊、PM2.5采集模塊以及一氧化碳采集模塊構(gòu)成,此外還有顯示、報(bào)警以及Wi Fi無(wú)線通信模塊。
圖1 空氣質(zhì)量檢測(cè)系統(tǒng)組成框圖
2.2.2 功能模塊的選擇
(1)系統(tǒng)主控制芯片的選擇
控制器是系統(tǒng)的主要器件,在滿足功能要求的情況下主要考慮性價(jià)比,通過(guò)對(duì)目前市面上比較流行的幾大主流單片機(jī)芯片對(duì)比分析,系統(tǒng)設(shè)計(jì)宜選用STM32F407ZGT6單片機(jī),該芯片具多個(gè)串口,主時(shí)鐘頻率達(dá)到168MHz。
(2)PM2.5傳感器的選擇
PM2.5傳感器種類多,有普通傳感器,也有激光傳感器,可根據(jù)精度要求和價(jià)格進(jìn)行選擇,相對(duì)于普通傳感器,激光PM2.5傳感器精度高但價(jià)格貴許多,本次設(shè)計(jì)選用價(jià)格低的夏普GP2Y1014AU作為PM2.5傳感器。
(3)二氧化碳(TVOC)與溫濕度傳感器選擇
考慮到系統(tǒng)功能需求,采用CCS811傳感器,它既可檢測(cè)二氧化碳,又能作為T(mén)VOC傳感器使用。溫濕度傳感器選用HDC1080模塊,它與二氧化碳(TVOC)傳感器集成在一起,采用IIC總線傳輸數(shù)據(jù),體積小。IIC總線類型的傳感器結(jié)合在一起有利于節(jié)省I/O口資源。
(4)一氧化碳以及甲醛傳感器模塊的選擇
一氧化碳(CO)與甲醛屬于高危氣體,考慮到安全性要求,CO傳感器選用ZET07-CO模塊,甲醛傳感器采用英國(guó)達(dá)特SMT8404數(shù)字式模塊,主要是因?yàn)檫@兩款傳感器是以串口方式傳輸信號(hào),而且數(shù)字信號(hào)傳輸不易受到外界干擾。
3 系統(tǒng)硬件設(shè)計(jì)
系統(tǒng)硬件設(shè)計(jì)主要是對(duì)各種傳感器、Wi Fi無(wú)線通信模塊等功能器件與STM32單片機(jī)的接口電路設(shè)計(jì)。功能單一的傳感器接口電路簡(jiǎn)單,下面介紹主要的模塊接口電路。
3.1 CJMCU-8118傳感器模塊采集電路設(shè)計(jì)
CJMCU-8118模塊就是CCS811二氧化碳(TVOC)傳感器與HDC1080溫濕度傳感器組合體,采用IIC總線,CJMCU-8118模塊與STM32單片機(jī)的連接方式如圖2所示,其中SCL是IIC數(shù)據(jù)傳輸?shù)?a href="http://srfitnesspt.com/tags/時(shí)鐘/" target="_blank">時(shí)鐘,SDA為IIC的數(shù)據(jù)線,WAK是一個(gè)使能信號(hào)線。
3.2 串口數(shù)據(jù)傳輸器件電路設(shè)計(jì)
系統(tǒng)設(shè)計(jì)使用四個(gè)串口類型的數(shù)據(jù)傳輸器件,分別是CO傳感器模塊、甲醛傳感器模塊、串口LCD屏幕以及Wi Fi8266模塊。這四個(gè)串口類型模塊與STM32單片機(jī)的連接方式如圖3所示。采用5V供電電壓,其中CO模塊連接的是單片機(jī)的串口P4,甲醛模塊連接的是單片機(jī)的串口P3,LCD屏幕連接的是單片機(jī)的串口P2,Wi Fi8633模塊連接單片機(jī)時(shí),需要GBC_LED與GBC_KEY作為控制信號(hào)設(shè)置Wi Fi8266模塊的工作模式。
圖2 CJMCM-8118與STM32接口電路
圖3串口類模塊與單片機(jī)連接圖
4 系統(tǒng)軟件設(shè)計(jì)
4.1 主控程序設(shè)計(jì)
在系統(tǒng)運(yùn)行時(shí)可能會(huì)出現(xiàn)外界的干擾,為了防止系統(tǒng)在遇到干擾時(shí)無(wú)法正常運(yùn)行,系統(tǒng)在軟件設(shè)計(jì)上加入了看門(mén)狗程序,保障系統(tǒng)運(yùn)行不出差錯(cuò),程序流程圖如圖4所示。STM32F4的中斷系統(tǒng)可配置16個(gè)不同優(yōu)先級(jí)別的中斷,并且中斷之間還可以嵌套中斷。首先對(duì)單片機(jī)初始化,進(jìn)行優(yōu)先級(jí)分組,在此配置兩個(gè)響應(yīng)優(yōu)先級(jí)和兩個(gè)搶斷優(yōu)先級(jí)。
統(tǒng)滴答計(jì)時(shí)器的初始化是為了做精準(zhǔn)的延時(shí)而準(zhǔn)備的,延時(shí)函數(shù)在每個(gè)模塊基本上都有調(diào)用。最后對(duì)各個(gè)模塊初始化,主要是對(duì)STM32F4最小系統(tǒng)I/O口的參數(shù)以及模式進(jìn)行配置,主要有串口的配置、ADC、IIC、PWM的功能配置。完成了初始化后,系統(tǒng)開(kāi)始檢測(cè)Wi Fi模塊有沒(méi)有成功連接路由器。在Wi Fi成功連接之后開(kāi)始接收數(shù)據(jù),與設(shè)定數(shù)據(jù)進(jìn)行比較,是否有CO、甲醛超標(biāo),有超標(biāo)則蜂鳴器警報(bào),并通過(guò)通信方式向手機(jī)APP或者PC端發(fā)送警報(bào)。沒(méi)有超標(biāo)將會(huì)繼續(xù)判斷CO2、TVOC、溫濕度、PM2.5是否超標(biāo),如果有超標(biāo),系統(tǒng)顯示屏將會(huì)紅色提示,否則,顯示屏將會(huì)是藍(lán)色,表示正常。
圖4主程序流程圖
4.2 WiFi模塊程序設(shè)計(jì)
在對(duì)Wi Fi模塊進(jìn)行編程之前,先要對(duì)WiFi模塊進(jìn)行固件庫(kù)改寫(xiě),在固件庫(kù)改寫(xiě)成功之后才能進(jìn)行編程,程序流程圖如圖5所示。圖中的喂狗就是上一節(jié)提到的看門(mén)狗程序,協(xié)議處理可直接調(diào)用庫(kù)函數(shù)實(shí)現(xiàn)。WiFi設(shè)備通過(guò)配置入網(wǎng),可由按鍵啟動(dòng)相應(yīng)的連接模式,并對(duì)配置好的路由器進(jìn)行連接。
WiFi設(shè)備與機(jī)智云服務(wù)器是雙向通信,APP端的操作信息通過(guò)機(jī)智云服務(wù)器發(fā)送到Wi Fi設(shè)備,WiFi設(shè)備接收完成后,單片機(jī)(MCU)將會(huì)收到協(xié)議幀格式的數(shù)據(jù),緩沖區(qū)將會(huì)儲(chǔ)存數(shù)據(jù)。每隔一段時(shí)間都會(huì)進(jìn)行一次抓包,然后將數(shù)據(jù)進(jìn)行解析,解析后的數(shù)據(jù)能被MCU識(shí)別從而發(fā)起事件處理。傳感器采集的數(shù)據(jù)能夠被MCU儲(chǔ)存,然后這些數(shù)據(jù)通過(guò)協(xié)議封裝成數(shù)據(jù)幀發(fā)送到WiFi設(shè)備,WiFi設(shè)備將數(shù)據(jù)輸送至機(jī)智云平臺(tái)的云端服務(wù)器,再傳輸?shù)接脩艚K端。
圖5 WiFi模塊工作流程圖
4.3 傳感器模塊程序設(shè)計(jì)
4.3.1 PM2.5傳感器模塊程序設(shè)計(jì)
PM2.5傳感器主要用到了ADC變換以及PWM脈沖信號(hào)配合才能得到采集的數(shù)據(jù)。采樣程序是根據(jù)夏普官方說(shuō)明書(shū)中提到要接入一個(gè)280us低電平和9720us高電平的PWM信號(hào)作為啟動(dòng)信號(hào)。通過(guò)計(jì)算PWM的周期能達(dá)到10ms,PM2.5模塊只有在PWM低電平280us后才開(kāi)啟轉(zhuǎn)換,因此這時(shí)候的ADC采樣才是有效的。程序設(shè)計(jì)時(shí)ADC的初始化是通過(guò)配置寄存器把管腳功能復(fù)用為ADC,PWM初始化是配置PA4管腳相關(guān)參數(shù)。
根據(jù)夏普PM2.5官方提供的典型粉塵電壓轉(zhuǎn)換圖,如圖6所示,可計(jì)算粉塵濃度。但是由于起始電壓的典型值在不同的地區(qū)會(huì)有不一樣的取值,實(shí)際上在很多地區(qū)的無(wú)塵電壓為0V。由圖6可知,電壓變化范圍在0.0V~3.5V時(shí),粉塵濃度與電壓呈線性關(guān)系。
圖6粉塵電壓轉(zhuǎn)換圖
電壓值的轉(zhuǎn)換計(jì)算:
粉塵轉(zhuǎn)換計(jì)算:
由公式(1)(2)得出總的計(jì)算公式:
注:因ADC是12位,212的值是4096,但計(jì)算機(jī)中12位的非負(fù)數(shù)補(bǔ)碼最大值是4095,公式(3)需要進(jìn)行修正,修正值為500/4095=0.12,因此,公式(3)要減去0.12,這樣實(shí)際測(cè)量值更準(zhǔn)確。
4.3.2 CJMCU-8118模塊程序設(shè)計(jì)
CJMCU-8118模塊的信息采集是通過(guò)IIC總線進(jìn)行的,IIC協(xié)議啟動(dòng)、停止、等待ACK到來(lái)的時(shí)序都是通用時(shí)序。在IIC總線的通信中要求時(shí)鐘速度不能過(guò)快,否則將會(huì)丟失數(shù)據(jù),導(dǎo)致無(wú)法進(jìn)行數(shù)據(jù)的采集。IIC協(xié)議內(nèi)容也相對(duì)比較簡(jiǎn)單,在使用時(shí)可以直接調(diào)用相應(yīng)的庫(kù)函數(shù)。IIC總線中規(guī)定讀取寄存器數(shù)據(jù)必須選擇對(duì)應(yīng)的地址,寫(xiě)入信息之后停止,重新啟動(dòng)才能真正開(kāi)始讀取儲(chǔ)存器的數(shù)值。
要讀取相應(yīng)的CO2、TVOC、溫濕度大小必須將其地址寫(xiě)入傳感器,才能獲取相應(yīng)的轉(zhuǎn)化值。寫(xiě)入地址信息以及配置好模塊的模式之后,要用IIC的讀數(shù)據(jù)方式。讀完數(shù)據(jù)之后沒(méi)有應(yīng)答信號(hào),結(jié)束一次數(shù)據(jù)的讀取。程序設(shè)計(jì)時(shí)二氧化碳與TVOC直接是16位的ADC轉(zhuǎn)換值,溫濕度計(jì)算轉(zhuǎn)換根據(jù)官方資料提供的公式。
溫度計(jì)算公式:
濕度計(jì)算公式:
4.3.3 甲醛與一氧化碳模塊程序設(shè)計(jì)
這兩個(gè)傳感器使用的傳輸方式都是串口方式,并且在數(shù)據(jù)傳輸上是一致性,所以兩個(gè)模塊的程序設(shè)計(jì)方法相同。串口通信(USART)初始化是配置好相應(yīng)的復(fù)用功能,串口采用中斷接收的方式,下一步就是要對(duì)中斷服務(wù)函數(shù)初始化。在中斷數(shù)據(jù)接收中判斷數(shù)據(jù)是否為0xff的16進(jìn)制編碼,如果是則進(jìn)一步開(kāi)始保存相應(yīng)的數(shù)據(jù),當(dāng)數(shù)據(jù)達(dá)到8位的時(shí)候停止接收。經(jīng)過(guò)這一個(gè)流程就能完成一次數(shù)據(jù)的接收。程序設(shè)計(jì)時(shí)根據(jù)表2計(jì)算CO濃度與甲醛濃度,具體計(jì)算公式如下:
表2 串口通信數(shù)據(jù)傳輸表
甲醛濃度計(jì)算公式:
甲醛濃度(ug/m3)=(高位×256+低位)/10(6)
CO濃度計(jì)算公式:
5 系統(tǒng)集成與測(cè)試
各功能模塊設(shè)計(jì)、調(diào)試完成后,集成為一個(gè)系統(tǒng),再進(jìn)行系統(tǒng)功能測(cè)試。根據(jù)實(shí)際測(cè)量得到的粉塵濃度數(shù)據(jù)如圖7所示。圖中數(shù)據(jù)是在高濃度的粉塵下進(jìn)行的測(cè)試,該測(cè)試結(jié)果能夠驗(yàn)證公式(3)計(jì)算的正確性。圖8是系統(tǒng)集成圖,圖中所示信息是在一個(gè)VR室測(cè)試的空氣質(zhì)量數(shù)據(jù),測(cè)試結(jié)果說(shuō)明了系統(tǒng)實(shí)現(xiàn)了相關(guān)功能。
圖7實(shí)際測(cè)量粉塵濃度與電壓關(guān)系圖
圖8VR室的實(shí)際檢測(cè)數(shù)據(jù)效果圖
6 結(jié)語(yǔ)
項(xiàng)目系統(tǒng)硬件設(shè)計(jì)了多種不同功能傳感器、WiFi無(wú)線通信模塊與主控制器STM32芯片的接口電路。根據(jù)傳感器的工作原理設(shè)計(jì)了相關(guān)程序,并以機(jī)智云物聯(lián)網(wǎng)平臺(tái)和WiFi無(wú)線通信模塊原理編寫(xiě)了通信程序。實(shí)現(xiàn)了對(duì)室內(nèi)空氣中的CO、CO2、PM2.5、TVOC、甲醛的含量以及溫濕度的實(shí)時(shí)監(jiān)測(cè),檢測(cè)到的數(shù)據(jù)可在LCD液晶屏顯示,同時(shí)通過(guò)WiFi無(wú)線通信技術(shù)和機(jī)智云物聯(lián)網(wǎng)平臺(tái)傳輸?shù)接脩艚K端,并具有超標(biāo)報(bào)警功能。該空氣質(zhì)量檢測(cè)系統(tǒng)在VR室得到測(cè)試,性能穩(wěn)定,數(shù)據(jù)準(zhǔn)確,具有實(shí)際應(yīng)用價(jià)值。
-
WIFI
+關(guān)注
關(guān)注
81文章
5272瀏覽量
202840
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論