何燕陽
(泉州輕工職業(yè)學(xué)院,福建 泉州 262201)
汽車不再是每個家庭的奢侈品,人們在享受汽車便捷的同時也帶來一定的困擾。汽車內(nèi)部由于空調(diào)老化、不經(jīng)常通風、車體裝修等原因都會造成車內(nèi)空氣質(zhì)量變差,長時間接觸有致癌風險。如果車子停駛時,仍開放空調(diào),發(fā)動機排出的一氧化碳便有可能逐漸聚集在車內(nèi),加之車內(nèi)人員呼吸耗氧而排出二氧化碳,會導(dǎo)致車內(nèi)缺氧。當汽車內(nèi)長時間處于關(guān)窗狀態(tài),車內(nèi)氧氣濃度會下降,當車內(nèi)氧氣濃度會下降到一定值后,車內(nèi)人員會出現(xiàn)頭暈、頭痛等不適感,這將降低駕駛員的反應(yīng)能力,加大汽車事故的發(fā)生[1]。目前,只有在汽車沒有熄火的情況下,通風系統(tǒng)才能工作,為司機和乘客創(chuàng)造一個舒適的車內(nèi)空間;在汽車內(nèi),沒有對有毒氣體進行檢測報警;汽車熄火后,汽車也沒有主動換氣系統(tǒng)。因此研究氣體傳感器和溫度傳感器在汽車換氣系統(tǒng)中的應(yīng)用顯得很有意義,具有較大的實用價值和社會價值。
該系統(tǒng)的硬件設(shè)計包含了STM單片機最小系統(tǒng)、電源模塊電路、甲醛等氣體檢測轉(zhuǎn)換電路、溫度傳感器電路、蜂鳴器報警電路、進氣和排氣兩個風機的換氣電路、指示燈以及液晶顯示電路,硬件結(jié)構(gòu)總框圖如圖1所示。
圖1 系統(tǒng)硬件結(jié)構(gòu)框圖
本系統(tǒng)選用STM32系列的單片機STM32F103R6該型號的內(nèi)核是32位的ARM Cortex-M3,運行速度比傳統(tǒng)的51單片機快很多且功耗低、功能強。芯片上集成了256KB Flash,48KB SRAM,3個12位ADC模數(shù)轉(zhuǎn)換大通道,2個12位DAC,2個IIC,3個SPI,11個定時器,5個串口及51個通用IO口。
氣敏傳感器用于鑒別氣體成分以及濃度,并將濃度轉(zhuǎn)換為電阻值或者電壓值。這次選擇了MQ-138型甲醛,MG811二氧化碳氣體傳感器以及ZE03-O2-(0-25%)VOL氧氣傳感器。該氧氣傳感器的標稱測量氧氣范圍是0-25%,溫度范圍-20℃~50℃,響應(yīng)時間小于15S,靈敏度高,0.1%VOL的分辨率,功耗低穩(wěn)定性好,分別提供兩種輸出方式:UART、模擬電壓信號,用戶可自行選擇。該間接加熱氣敏傳感器,該傳感器由敏感組件和轉(zhuǎn)換電路組成。MQ-138型甲醛氣敏傳感器轉(zhuǎn)換電路如圖2所示。
圖2 氣敏傳感器轉(zhuǎn)換電路
由圖可知,該氣敏傳感器的針狀引腳和電阻串聯(lián),可以實現(xiàn)電壓轉(zhuǎn)換,經(jīng)過電壓比較器后此電壓可以將電壓轉(zhuǎn)化為數(shù)字量。系統(tǒng)工作中,當甲醛濃度大小發(fā)生改變時,甲醛氣體傳感器的電阻發(fā)生相應(yīng)的變化,轉(zhuǎn)換電路將電阻變化轉(zhuǎn)化為電壓的變化,并將此電壓信號輸送至單片機的模數(shù)轉(zhuǎn)換通道,以便單片機判別運算。
常用的數(shù)字溫度傳感器有很多,本系統(tǒng)選用的是DS18B20數(shù)字溫度傳感器,該傳感器有很多優(yōu)點,例如檢測溫度的范圍大,分辨率高等,而且該傳感器在各種各樣比較小的空間內(nèi)一樣可以實施,這主要是因為其體積很小,檢測也比較方便,且僅需采用單向接口就可以實現(xiàn)雙向通訊。
A/D模數(shù)轉(zhuǎn)換器是指對反映數(shù)字信號中甲醛和其他氣體濃度的模擬電壓信號進行轉(zhuǎn)換。本系統(tǒng)采用的單片機STM32f103自帶模數(shù)轉(zhuǎn)換通道,因此單片機外部不需要接A/D模數(shù)轉(zhuǎn)換芯片,可直接讀取模擬量。該設(shè)計將甲醛、二氧化碳以及氧氣傳感器的模擬量電壓通過PA5、PA6、PA7引腳輸入STM單片機進行模數(shù)轉(zhuǎn)換。通道的A/D轉(zhuǎn)換可以按時間、連續(xù)、掃描或間歇方式進行。ADC轉(zhuǎn)換的結(jié)果可以左對齊或右對齊,并存儲在MCU的16位數(shù)據(jù)寄存器中。
為了直觀的實時顯示氣體濃度和溫度,需要選用帶用中文字庫的LCD12864液晶顯示器用來顯示氣體濃度和溫度高低,并顯示氣體濃度和溫度的閡值。運行過程中第一行顯示報警溫度;第二行顯示當前溫度值;第三行顯示報警濃度;第四行顯示當前氣體濃度。由于有多種氣體要檢測,所以液晶顯示可輪流分時顯示這些氣體濃度。
依據(jù)主程序流程圖在Keil編程,選用Proteus軟件實現(xiàn)自動換氣扇系統(tǒng)的軟件調(diào)試,搭建電路模型,如圖模型搭建完畢,點擊單片機添加程序,打開開關(guān)開始調(diào)試。
系統(tǒng)上電后,將溫度以及濕度的設(shè)定值進行采集,如果綠色的指示燈亮,則表示環(huán)境情況正常。此時繼電器不工作,電機不轉(zhuǎn),換氣扇不工作。電路處于正常工作狀態(tài)。系統(tǒng)上電后,調(diào)節(jié)電位器阻值。如果所測試的環(huán)境中的氣體濃度超標,相應(yīng)的紅色指示燈會閃爍,表示車內(nèi)空氣情況異常,同時指示燈閃爍報警,繼電器得電工作,電機得電旋轉(zhuǎn),換氣扇工作,改善車內(nèi)空氣質(zhì)量。再次回調(diào)電位器[6],此時的甲醛和二氧化碳氣體濃度都處于偏低的狀態(tài),即換氣扇停止工作。
同樣當系統(tǒng)上電后,將DS溫度傳感器的溫度進行設(shè)定,一旦出現(xiàn)紅色指示燈閃爍的情況,即表示車內(nèi)溫度情況異常,同時指示燈閃爍報警,繼電器得電工作,電機旋轉(zhuǎn),換氣扇工作,改善居室空氣質(zhì)量。再次回調(diào)DS溫度傳感器,一旦檢測到溫度過低,換氣扇也隨即停止工作。
調(diào)試過程中可根據(jù)個人對氣體濃度和溫度的敏感度和需求,修改氣體濃度和溫度報警值。按下設(shè)置鍵,再按增大減小鍵,可修改報警閡值。
在進入主程序之前,首先要做的就是將系統(tǒng)初始化,系統(tǒng)的初始化必須遵循按照需求而配置的要求。在初始化時[7],需要通過調(diào)控相應(yīng)儲存程序的狀態(tài)來進行調(diào)控,以此來實現(xiàn)系統(tǒng)的功能。
在即將進行初始化工作之前,需要將系統(tǒng)首先調(diào)控在初始化狀態(tài),即程序利用主循環(huán)將時間與檢測的過程進行統(tǒng)一的規(guī)劃,包含采集,調(diào)控相關(guān)的顯示設(shè)備,數(shù)據(jù)處理設(shè)備等。將準備工作做好后,在進行數(shù)據(jù)的處理,即通過主程序,將后續(xù)進行查找并中斷。主程序模塊包含的定義和功能如圖3所示。
圖3 主程序模塊定義及功能
由圖可知,首先需要采用函數(shù)進行數(shù)據(jù)中斷處理,然后利用interrupt賦予初值,進行數(shù)據(jù)采集后來進行模擬信號的處理,最后再將數(shù)據(jù)進行儲存,編程時也需要采用AD變換法,將數(shù)字信號不間斷的讀取出來。
為了測試所設(shè)計的系統(tǒng)是否能實現(xiàn)車內(nèi)氣體濃度大小和溫度高低的檢測識別,以及該系統(tǒng)在進行換氣系統(tǒng)測試時處理數(shù)據(jù)的速度是否優(yōu)于傳統(tǒng)的換氣系統(tǒng),進行了對比實驗,將傳統(tǒng)的換氣檢測系統(tǒng)處理數(shù)據(jù)的時間與所設(shè)計的換氣檢測系統(tǒng)的數(shù)據(jù)處理時間進行對比。
根據(jù)設(shè)計好的系統(tǒng)結(jié)構(gòu)框圖以及硬件電路原理圖制作硬件電路并進行電路的測試,保證硬件電路正確沒問題;接著,根據(jù)程序流程圖分模塊編寫程序,再進行主程序調(diào)用以及程序的調(diào)試;硬軟件調(diào)試完成后,才開始進行測試。測試條件的準備,在實驗室中,我們采用自主設(shè)計的一個密閉的透明空間,將系統(tǒng)置于該空間,通過吹入二氧化碳,加熱等方式來模擬實際情況。
采用傳統(tǒng)的換氣檢測系統(tǒng)與所設(shè)計的換氣檢測系統(tǒng)進行對比,選取五處隨機的換氣處理地點,分別檢測二者處理溫度等數(shù)據(jù)的時間以及數(shù)值,經(jīng)過實驗得知所設(shè)計的換氣檢測系統(tǒng)可以實現(xiàn)車內(nèi)中氣體濃度大小和溫度的識別,具有可行性,同時,五組隨機換氣處理地點的數(shù)據(jù)處理速度均高于傳統(tǒng)的換氣檢測系統(tǒng),因此,具有高效性,有一定的推廣價值。
綜上所述,所設(shè)計的換氣檢測系統(tǒng)符合要求,可以實現(xiàn)對于車內(nèi)的溫度以及其他指標的檢測,且在處理數(shù)據(jù)的時間上遠遠低于傳統(tǒng)的數(shù)據(jù)檢測系統(tǒng),因此具有一定的推廣意義,在后續(xù)的使用中還將不斷完善和更新。