張慧穎, 田東生
(吉林化工學(xué)院 信息與控制工程學(xué)院,吉林 吉林 132022)
實(shí)驗(yàn)室是實(shí)驗(yàn)和實(shí)踐教學(xué)環(huán)節(jié)順利進(jìn)行的重要場所,也是大學(xué)生鍛煉動手能力的重要基地[1-2]。遵循我校“三三式”實(shí)踐與創(chuàng)新能力培養(yǎng)體系,為更好培養(yǎng)學(xué)生工程實(shí)踐能力和創(chuàng)新能力,我院實(shí)驗(yàn)室采取開放式管理,除了滿足基礎(chǔ)和專業(yè)實(shí)驗(yàn)教學(xué)及實(shí)習(xí)、畢業(yè)設(shè)計等環(huán)節(jié)外,鼓勵學(xué)生組建科技活動小組。因此,我院電類實(shí)驗(yàn)室逐漸成為大學(xué)生創(chuàng)新創(chuàng)業(yè)的孵化基地。為便于實(shí)驗(yàn)室管理,降低實(shí)驗(yàn)室安全隱患,對實(shí)驗(yàn)室環(huán)境信息實(shí)時監(jiān)測具有重要意義。
隨著無線技術(shù)的快速發(fā)展,監(jiān)測手段也逐步向智能化方向發(fā)展。尤其是無線藍(lán)牙通信技術(shù)興起,在短距離內(nèi)取代了傳統(tǒng)有線連接方式,解決布線復(fù)雜等缺點(diǎn)[3-5]。將無線藍(lán)牙技術(shù)應(yīng)用于實(shí)驗(yàn)室管理系統(tǒng),實(shí)時監(jiān)測實(shí)驗(yàn)室內(nèi)各類環(huán)境信息,及時對實(shí)驗(yàn)室內(nèi)異常隱患做出判斷,協(xié)助實(shí)驗(yàn)室管理人員進(jìn)行處理,最大程度地降低環(huán)境等因素對實(shí)驗(yàn)設(shè)備或人員所帶來的傷害,減小直接經(jīng)濟(jì)損失,具有一定的創(chuàng)新性和實(shí)際意義。
實(shí)驗(yàn)室環(huán)境監(jiān)測系統(tǒng)采用藍(lán)牙通信構(gòu)建網(wǎng)絡(luò)模型,以單片機(jī)STM32作為核心控制器,監(jiān)測終端節(jié)點(diǎn)采用溫濕度傳感器、光照強(qiáng)度傳感器及煙霧濃度傳感器實(shí)現(xiàn)室內(nèi)環(huán)境信息采集。采集終點(diǎn)節(jié)點(diǎn)由單片機(jī)、溫濕度模塊SHT11、光照強(qiáng)度模塊BH1750、煙霧濃度模塊MQ2構(gòu)成。其中,煙霧濃度傳感器輸出電壓信號,采用STM32自帶的AD轉(zhuǎn)換轉(zhuǎn)化成數(shù)字信號后進(jìn)行后續(xù)處理。無線數(shù)據(jù)傳輸采用藍(lán)牙模塊HC-05上傳給手機(jī)或工作站等監(jiān)控設(shè)備,實(shí)現(xiàn)遠(yuǎn)程監(jiān)控[6-7]?;谒{(lán)牙技術(shù)的實(shí)驗(yàn)室監(jiān)控系統(tǒng)如圖1所示。系統(tǒng)可完成室內(nèi)環(huán)境參數(shù)測量;實(shí)現(xiàn)室內(nèi)環(huán)境參數(shù)分析處理、設(shè)置及監(jiān)控;實(shí)現(xiàn)采集數(shù)據(jù)實(shí)時無線傳輸,在上位機(jī)上完成相應(yīng)控制操作。
圖1 實(shí)驗(yàn)室監(jiān)測系統(tǒng)框圖
系統(tǒng)由電源電路、光感電路、溫濕度檢測電路、煙霧濃度檢測電路及藍(lán)牙通信電路、串口電路、顯示電路組成。電源電路為系統(tǒng)供電,傳感器采集電路用于采集室內(nèi)溫度、濕度、煙霧濃度和光照強(qiáng)度等信息;顯示電路用于顯示當(dāng)前檢測參數(shù)的數(shù)值;藍(lán)牙電路用于實(shí)現(xiàn)與手持終端或工作站之間的信息數(shù)據(jù)交換。
溫濕度檢測電路采用數(shù)字化溫濕度傳感器SHT11。SHT11具有I2C總線接口,內(nèi)部集成14位AD,設(shè)計溫濕度檢測電路時,將SHT11的數(shù)據(jù)和時鐘引腳(SCK和DATA)與STM32的I/O口相連[8]。采用兩線式串行總線接口的光強(qiáng)度傳感器BH1750FVI設(shè)計光強(qiáng)度檢測電路。BH1750FVI內(nèi)部集成16位AD轉(zhuǎn)換器,將傳感器的時鐘端SCL和數(shù)據(jù)端SDA分別與STM32的I/O口相接實(shí)現(xiàn)室內(nèi)光強(qiáng)的采集。注意BH1750FVI采用3.3V供電。為有效監(jiān)測實(shí)驗(yàn)室火災(zāi)險情發(fā)生,采用煙霧傳感器MQ2設(shè)計煙霧濃度檢測電路,煙霧傳感器檢測出的微弱電壓信號進(jìn)行放大處理,由于STM32自帶AD,放大后的信號與STM32引腳相連,實(shí)現(xiàn)室內(nèi)煙霧濃度采集[9]。傳感器數(shù)據(jù)采集電路如圖2所示。
(a) 溫濕度檢測電路設(shè)計
(b) 光照強(qiáng)度檢測電路設(shè)計
(c) 煙霧檢測電路設(shè)計
無線通信電路采用HC05藍(lán)牙一體模塊。圖3所示為藍(lán)牙模塊接口電路。圖4所示為藍(lán)牙模塊內(nèi)部電路。HC-05的RXD引腳、TXD引腳分別與MCU的TXD引腳、RXD引腳相接。特別注意,藍(lán)牙模塊與單片機(jī)進(jìn)行通訊時,不能通過MAX232電路,由于藍(lán)牙模塊采用的是TTL電平,RS-232電平會導(dǎo)致藍(lán)牙內(nèi)部電路器件損壞。藍(lán)牙模塊正常上電后,指示燈快速閃爍(1 s閃爍2次),表明為可配對狀態(tài);如果指示燈雙閃(1次閃爍2次,間隔2 s再次重復(fù)),表明處于成功配對狀態(tài)[10]。
圖3 藍(lán)牙模塊接口電路
圖4 藍(lán)牙模塊電路
主控芯片采用高性能STM32F407VET6型單片機(jī),具有12位ADC,全雙工I2S,高速USART,可達(dá)10.5 Mbit/s,高速SPI,可達(dá)37.5 Mbit/s。在下位機(jī)上設(shè)置聲光報警電路、LCM12864顯示電路及功能按鍵設(shè)置電路,分別用于超限報警、采集數(shù)據(jù)實(shí)時顯示及設(shè)置閾值等。系統(tǒng)中需要5 V和3.3 V 2種供電電源,分別設(shè)計出5 V和3.3 V直流電源電路。在設(shè)計時,需考慮到抗干擾能力。
監(jiān)測系統(tǒng)軟件完成室內(nèi)參數(shù)信息采集、無線傳輸、實(shí)時顯示、報警等功能。系統(tǒng)程序主要包括:主程序、監(jiān)測節(jié)點(diǎn)子程序、無線通信子程序、顯示子程序、報警子程序及按鍵子程序等[11]。采用模塊化編程思想, C語言進(jìn)行程序編寫。
通電運(yùn)行后,進(jìn)入初始化子程序,通過功能鍵進(jìn)入報警值設(shè)置界面。設(shè)置完成后,每隔5 s,系統(tǒng)采集一次數(shù)據(jù)。為減少功耗,設(shè)置系統(tǒng)工作在低功耗模式。在顯示界面,按下確認(rèn)鍵可查看當(dāng)前設(shè)置的報警值,再次按下確認(rèn)鍵,可以對數(shù)值進(jìn)行重新設(shè)置。在系統(tǒng)運(yùn)行期間,若收到來自手機(jī)的控制指令,系統(tǒng)會根據(jù)指令作出相應(yīng)的應(yīng)答,若接收的數(shù)據(jù)為1,則向手機(jī)發(fā)送當(dāng)前溫度值;若接收的數(shù)據(jù)為2,則向手機(jī)發(fā)送當(dāng)前濕度值;若接收的數(shù)據(jù)為3,則向手機(jī)發(fā)送當(dāng)前光照強(qiáng)度值;若收到數(shù)據(jù)為4,則系統(tǒng)向手機(jī)發(fā)送出當(dāng)前室內(nèi)煙霧濃度值。系統(tǒng)總體流程圖如圖5所示。
圖5 系統(tǒng)總體流程框圖
初始化階段,單片機(jī)先發(fā)送HCI命令,藍(lán)牙設(shè)備先復(fù)位再啟動然后進(jìn)行查詢地址、自動巡檢和跳頻算法等初始化步驟,最后完成與上位機(jī)建立鏈路。藍(lán)牙設(shè)備之間的無線數(shù)據(jù)通信通過HCI分組(包括數(shù)據(jù)分組、命令分組和事件分組)實(shí)現(xiàn)。通過系統(tǒng)的MCU給藍(lán)牙設(shè)備發(fā)送命令進(jìn)行分組。單片機(jī)在發(fā)送HCI命令分組后,接收從藍(lán)牙設(shè)備返回的判斷命令、分析命令執(zhí)行情況、事件分組,直到藍(lán)牙模塊完成初始化操作。在藍(lán)牙手機(jī)助手軟件中,若手機(jī)與單片機(jī)配對完成,向單片機(jī)發(fā)送不同的指令,會收到不同數(shù)據(jù)反饋,藍(lán)牙數(shù)據(jù)處理流程如圖6所示[12-13]。
圖6 藍(lán)牙數(shù)據(jù)處理流程圖
檢測模塊完成實(shí)驗(yàn)室內(nèi)溫濕度、光照強(qiáng)度、室內(nèi)煙霧的采集。先將ADC完成初始化并開啟轉(zhuǎn)換器。ADC從煙霧檢測傳感器模擬輸出端讀出采集到的電壓值,并進(jìn)行可燃?xì)怏w濃度轉(zhuǎn)換。其工作過程如圖7所示[14-15]。
光強(qiáng)檢測模塊通電后,將BH1750先掛起11 ms后進(jìn)入休眠狀態(tài),掛起時不能對模塊發(fā)送任何命令或采集數(shù)據(jù),發(fā)送命令時需要先“啟動傳輸”時序,完成數(shù)據(jù)傳輸初始化。溫度和濕度檢測命令發(fā)出后,單片機(jī)要等待數(shù)據(jù)采集完成,才能執(zhí)行下一條程序。這個過程大約需要20/80/320 ms,分別對應(yīng)8/12/14 bit測量。實(shí)際時間隨單片機(jī)時鐘不同會有一些變化。檢測獲得的數(shù)據(jù)先存儲在STM32單片機(jī)內(nèi)部RAM中,以便單片機(jī)能夠繼續(xù)處理其它任務(wù),在需要的時候取出數(shù)據(jù)。
為驗(yàn)證系統(tǒng)正確性,選取檢測技術(shù)實(shí)驗(yàn)室完成實(shí)驗(yàn)測試。根據(jù)系統(tǒng)設(shè)計指標(biāo)要求,搭建系統(tǒng)實(shí)驗(yàn)測試平臺。一天中選取4個時間段對實(shí)驗(yàn)室內(nèi)的溫濕度、光照強(qiáng)度和室內(nèi)氣體濃度進(jìn)行測試。將高精度溫濕度計、便攜式大氣煙霧濃度檢測儀、智能光度計測試數(shù)據(jù)作為參考值。8:20時,標(biāo)準(zhǔn)儀器測得室內(nèi)溫度為15.4 ℃,濕度為16.3%RH,光照強(qiáng)度為43 lx,煙霧濃度為62 μg/m3。系統(tǒng)測得室內(nèi)環(huán)境為:溫度15.5 ℃,濕度為16.1%RH,光照強(qiáng)度檢測值為50 lx,煙霧濃度為64 μg/m3。10∶00點(diǎn)時,室內(nèi)剛剛有人吸過一根煙。標(biāo)準(zhǔn)儀器測得數(shù)據(jù)為:溫度為20.5 ℃,濕度為39.3%RH,室內(nèi)照度為97 lx,煙霧濃度為502 μg/m3。采用本系統(tǒng)測試環(huán)境數(shù)據(jù)為:室內(nèi)溫度20.7 ℃,濕度為39.5%RH,光照強(qiáng)度檢測值為103 lx,煙霧濃度為480 μg/m3。
(a) 溫濕度檢測流程圖(b) 光照強(qiáng)度檢測流程圖(c) 可燃?xì)怏w濃度檢測流程圖
經(jīng)過多次反復(fù)測量,并與標(biāo)準(zhǔn)測量儀測得值進(jìn)行對比,測得溫度誤差范圍約為±0.5 ℃,濕度誤差范圍約為±0.4%,光照強(qiáng)度誤差范圍為±6 lx,煙霧濃度誤差范圍為±30 μg/m3。對藍(lán)牙通信模塊進(jìn)行測試,分別選取Android系統(tǒng)、iOS系統(tǒng)的配對手機(jī)及工作電腦,結(jié)果表明,該系統(tǒng)均可很好實(shí)現(xiàn)無線通信,并且通信距離可達(dá)10 m左右,無誤碼率及丟包率,通信質(zhì)量良好。由此說明系統(tǒng)設(shè)計方案具有可行性,而且測量誤差范圍較小,滿足設(shè)計要求。
本文設(shè)計了一款基于藍(lán)牙技術(shù)的實(shí)驗(yàn)室環(huán)境監(jiān)測系統(tǒng)。該系統(tǒng)可以完成實(shí)驗(yàn)室內(nèi)溫濕度、光照強(qiáng)度、煙霧濃度等環(huán)境信息的采集,并借助藍(lán)牙模塊完成檢測信息的無線傳輸及遠(yuǎn)程控制。解決了傳統(tǒng)有線網(wǎng)絡(luò)布局的弊端,具有組網(wǎng)靈活、傳輸數(shù)據(jù)準(zhǔn)確、采集數(shù)據(jù)誤差小、低功耗等優(yōu)點(diǎn),便于實(shí)驗(yàn)室管理,具有實(shí)際的應(yīng)用價值。