王蕭宇,李 夢,馮永睿,汪 源
(三亞學(xué)院 理工學(xué)院,海南 三亞 572022)
隨著科技發(fā)展的日新月異,人們對實驗室環(huán)境的需求不再局限在安全舒適性方面,還增加了智能化的需求,利用手機對實驗室環(huán)境進行實時監(jiān)控已經(jīng)成為現(xiàn)實。發(fā)達國家從20世紀(jì)70年代開始就展開了對實驗室環(huán)境監(jiān)測的研究,對人們的工作環(huán)境也非常重視。
我國在20世紀(jì)80年代開始關(guān)注實驗室空氣質(zhì)量監(jiān)測,由于幾種全球性傳染性疾病的肆虐,實驗室環(huán)境質(zhì)量問題也引起了人們的高度重視,給實驗室環(huán)境監(jiān)測技術(shù)的快速發(fā)展帶來了一個契機[1]。如何將物聯(lián)網(wǎng)技術(shù)和無線傳輸數(shù)據(jù)技術(shù)融合到實驗室環(huán)境監(jiān)測,成為了實驗室現(xiàn)代化管理的關(guān)鍵[2-3]。
本文以物聯(lián)網(wǎng)技術(shù)作為核心,利用STM32 單片機作為數(shù)據(jù)處理模塊,利用溫濕度、光照、CO 等傳感器來實現(xiàn)環(huán)境數(shù)據(jù)的實時監(jiān)測,通過WiFi 模塊將結(jié)果上傳到阿里云平臺數(shù)據(jù)庫,并用手機APP 實時顯示。監(jiān)測結(jié)果一旦超過設(shè)定安全值,系統(tǒng)將發(fā)出報警,實現(xiàn)實驗室環(huán)境實時監(jiān)測的效果。
本文設(shè)計的是基于STM32 的新能源汽車實驗室環(huán)境監(jiān)測報警系統(tǒng),為了實現(xiàn)該系統(tǒng)的功能,設(shè)計了傳感器陣列模塊、ESP8266 無線WiFi 模塊[4]、OLED 顯示模塊及蜂鳴器報警模塊。傳感器模塊使用聲音分貝傳感器、DHT11 溫濕度傳感器、BH1750 光照強度傳感器、MQ-7 一氧化碳傳感器。該系統(tǒng)研究所需要實現(xiàn)的功能為:(1)實現(xiàn)對實驗室環(huán)境的監(jiān)測,用OLED 屏顯示光照度、溫濕度、一氧化碳等數(shù)據(jù)的具體信息;(2)通過ESP8266 連接熱點將上述參數(shù)數(shù)據(jù)發(fā)送到阿里云平臺數(shù)據(jù)庫[5]進行保存,使用手機APP 通過MQTT協(xié)議[6]實現(xiàn)對實驗室參數(shù)的遠程監(jiān)控;(3)判斷是否達到溫度、一氧化碳所設(shè)最高值,如果達到最高值,蜂鳴器則報警提醒。系統(tǒng)總體功能框架如圖1所示。

圖1 系統(tǒng)總體功能框架
系統(tǒng)的硬件電路主要包括STM32 單片機核心控制模塊、電源電路、降壓電路、無線傳輸模塊、OLED 顯示模塊、光照強度傳感器模塊、噪聲傳感器模塊、溫濕度傳感器模塊、一氧化碳傳感器模塊、報警模塊。
系統(tǒng)核心控制板采用的單片機為STM32F103C8T6。STM32F103C8T6 是STM32 系列的中等容量增強型MCU,是一個32 位的ARM 微控制器,存儲容量為64 KB,工作頻率的最高值為72 MHz,它還包含USB、CAN、7 個定時器、2 個12 位模數(shù)轉(zhuǎn)換器、7 通道的DMA 控制器、多達37 個I/O 端口及9 個通信接口,電壓為2~3.6 V,支持SWD 和USB 接口,工作溫度為-40~85 ℃。
通信模塊選用的是WiFi 模塊ESP8266,該芯片采用串行通信模式,能夠通過串行接口直接與單片機進行數(shù)據(jù)交流,也可以進行數(shù)據(jù)透傳,操作非常簡單、方便,具有價格便宜、功耗較低、功能強大的優(yōu)點。
光照強度監(jiān)測選用BH1750 傳感器,它的尺寸為21 mm×16 mm×3.3 mm,使用I2C 總線進行接口交流,能夠直接輸出數(shù)字信號。該傳感器的供電電壓為3~5 V,量程和精度的范圍為1~65 535 lx,具有功耗低、測量誤差較小等優(yōu)點。
環(huán)境氣體監(jiān)測選用ZPH01 傳感器,它的尺寸為59.47 mm×44.5 mm×20 mm,用來監(jiān)測空氣中的粉塵顆粒物PM2.5。該傳感器有兩個輸出方式:PWM 信號輸出及UART 數(shù)字串口輸出。它的工作電壓為5 V 左右,對粉塵最小粒子的檢出能力是1 μm,具有重量輕、易安裝的優(yōu)點。
環(huán)境溫濕度監(jiān)測選用傳感器DHT11,它是四引腳的,安裝方便。該傳感器既能測量濕度,也能測量溫度。工作時的電壓為3.3~5 V,輸出的是數(shù)字電壓。該傳感器的測量范圍分別為20%~90%RH、0~50 ℃,測濕精度為±5%RH,測溫精度為±2 ℃,分辨率為1,封裝為4 針單排直插。DHT11 溫濕度傳感器對溫濕度的測量分辨率都為8 bit,具有功耗低、體積小、穩(wěn)定性強的特點。
系統(tǒng)主程序設(shè)計包括初始化模塊程序設(shè)計、傳感器模塊程序設(shè)計、顯示模塊程序設(shè)計、無線模塊程序設(shè)計、報警模塊程序設(shè)計。本次設(shè)計的總工作流程如圖2所示,首先將使用的所有傳感器、STM32 單片機、無線模塊ESP8266、OLED 屏都進行初始化[7],然后利用傳感器采集信號,將數(shù)據(jù)信號直接通過STM32 單片機的端口輸出數(shù)字量,得到實驗室環(huán)境參數(shù)的數(shù)據(jù)。WiFi 模塊ESP8266 會將單片機STM32 收集到的數(shù)據(jù)發(fā)送到阿里云的數(shù)據(jù)庫進行保存,然后發(fā)送到手機APP 進行遠程監(jiān)控。與此同時,傳感器讀取的數(shù)據(jù)也會在OLED 屏上顯示出來。當(dāng)溫度、一氧化碳的數(shù)據(jù)值一旦被判斷超過設(shè)定的最高值,報警模塊就會實現(xiàn)其相對應(yīng)的功能,通過蜂鳴器發(fā)出響聲進行報警。如果被判斷沒有超過設(shè)定的最高值,就會再次進行初始化,重復(fù)上述相應(yīng)步驟。

圖2 主程序設(shè)計流程
先對OLED 屏進行初始化,再寫入一個字符串,寫入一個字節(jié),這時就可以進行寫入命令到OLED 中、寫入數(shù)據(jù)到OLED 中這一步驟,然后收集通過STM32 單片機的控制得到的實驗室環(huán)境參數(shù)數(shù)據(jù),將這些數(shù)據(jù)進行轉(zhuǎn)換,就可以得到能夠顯示的具體字符圖形,最后通過指針定位在OLED 屏上進行顯示。
把WiFi 模塊ESP8266 初始化,設(shè)置其工作模式為STA 模式,并加入WiFi 熱點進行用戶信息確認。接著連接MQTT 服務(wù)器(阿里云平臺數(shù)據(jù)庫),連接成功后,將通過STM32 單片機的控制進行AD 轉(zhuǎn)換,得到實驗室環(huán)境參數(shù)數(shù)據(jù)并由WiFi 模塊ESP8266 發(fā)送到服務(wù)器進行保存。最后MQTT 客戶端(手機APP)[8-10]開始提出訂閱主題和退訂的請求,服務(wù)器會向該客戶端推送所需要的消息內(nèi)容。
以溫濕度傳感器為例進行說明,其他傳感器程序設(shè)計類似。首先把DHT11 溫濕度傳感器初始化,然后該傳感器先采集實驗室溫濕度的數(shù)據(jù),因為直接與單片機的端口相連,所以直接向單片機輸出數(shù)字量,然后進行數(shù)據(jù)顯示。最后查看溫度的數(shù)值是否超過所設(shè)溫度最高值,如果超過,蜂鳴器就會發(fā)出聲音報警;反之,則返回重新采集數(shù)據(jù)。
使用充電寶提供電源,把實物與充電寶用數(shù)據(jù)線進行連接。當(dāng)裝置上電后,CO、CH2O 兩個傳感器以及STM32 單片機的指示燈全部亮起,系統(tǒng)開始工作并采集環(huán)境數(shù)據(jù)。通過調(diào)試WiFi 模塊ESP8266 連接阿里云并將數(shù)據(jù)發(fā)送到云端,并可以打開手機APP 進行監(jiān)測。當(dāng)溫濕度模塊所測量的實驗室溫度大于60 ℃,或一氧化碳傳感器所測量的實驗室一氧化碳的含量大于30 ppm,蜂鳴器都會發(fā)出響聲進行報警,同時手機顯示的火災(zāi)報警區(qū)域顯示“火災(zāi)險情”。測試時系統(tǒng)硬件如圖3所示。

圖3 系統(tǒng)實物測試
以上的實驗結(jié)果證明了該裝置能夠很好地對實驗室環(huán)境進行監(jiān)測;溫度、一氧化碳超過所設(shè)的最高值時,設(shè)備會自動報警;也能夠用手機APP 進行遠程監(jiān)控,實現(xiàn)對實驗室環(huán)境的實時監(jiān)測。因此,本實物的調(diào)試是成功的,完美地實現(xiàn)了該系統(tǒng)的全部功能。
本文利用物聯(lián)網(wǎng)技術(shù)、無線通信技術(shù)設(shè)計了一款新能源汽車實驗室環(huán)境監(jiān)測系統(tǒng)。利用各種傳感器模塊實現(xiàn)新能源汽車實驗室環(huán)境數(shù)據(jù)的獲取,并將數(shù)據(jù)傳輸?shù)絊TM32最小系統(tǒng)單片機,然后STM32 最小系統(tǒng)單片機接收到數(shù)據(jù)后進行數(shù)據(jù)的提取和處理,再將處理的數(shù)據(jù)通過WiFi 模塊ESP8266 上傳到云平臺,還可在手機APP 和本地的顯示屏上進行實時顯示;當(dāng)環(huán)境數(shù)據(jù)超出設(shè)定范圍時,系統(tǒng)會報警。
注:本文通訊作者為汪源。