孫昌祥,周 威,徐素莉
(河南科技大學(xué)信息工程學(xué)院,河南 洛陽 471009)
隨著社會(huì)經(jīng)濟(jì)的發(fā)展,人們的生活水平不斷提高,對空氣的質(zhì)量要求也越來越高,其中粉塵是影響空氣質(zhì)量的主要原因之一,粉塵是人類健康最大的敵人,因?yàn)樗鼣y帶有許多細(xì)菌病毒,在空氣中傳播疾病。工業(yè)粉塵,纖塵能使工人患上各種難以治愈的職業(yè)病,過多的灰塵還會(huì)造成環(huán)境污染,影響人們的正常生活和工作,誘發(fā)人類呼吸道疾病等[1]。因此,為了能提前規(guī)避這種風(fēng)險(xiǎn),需要對環(huán)境中粉塵濃度進(jìn)行實(shí)時(shí)監(jiān)測,所以實(shí)時(shí)檢測的粉塵檢測系統(tǒng)應(yīng)運(yùn)而生。
本文設(shè)計(jì)了基于STM32的粉塵檢測系統(tǒng),系統(tǒng)通過粉塵傳感器來采集環(huán)境中粉塵的相關(guān)數(shù)據(jù),然后把數(shù)據(jù)傳送到STM32單片機(jī)進(jìn)行處理分析,然后將粉塵濃度實(shí)時(shí)顯示在液晶顯示屏上。系統(tǒng)具有報(bào)警功能,能實(shí)現(xiàn)對檢測環(huán)境粉塵濃度的實(shí)時(shí)監(jiān)控,可廣泛應(yīng)用于不同的粉塵檢測的場合[2]。
粉塵檢測系統(tǒng)的組成結(jié)構(gòu)框圖如圖1所示。系統(tǒng)的中央處理器采用STM32單片機(jī),粉塵采集模塊使用GP2Y1010au0f粉塵傳感器[3]。傳感器可以檢測當(dāng)前環(huán)境中的粉塵濃度,將數(shù)據(jù)傳送給STM32單片機(jī),并通過LCD顯示屏顯示當(dāng)前濃度。按鍵用來設(shè)置系統(tǒng)的粉塵濃度閾值,如果檢測到當(dāng)前濃度超出閾值啟動(dòng)蜂鳴器發(fā)出報(bào)警信號,通過GSM模塊發(fā)送信號,實(shí)現(xiàn)遠(yuǎn)程監(jiān)控。
圖1 系統(tǒng)框圖
通電之后紅外發(fā)光二極管開始工作,紅外發(fā)光二極管發(fā)出的光照射到進(jìn)入傳感器的粉塵后被反射,光反射的程度與粉塵的濃度相關(guān),濃度越大反射光越強(qiáng),濃度越小反射光越弱[4]。光電二極管接收反射光后,將不同粉塵濃度反射的光信號轉(zhuǎn)換為電信號,經(jīng)過放大電路放大后輸出給中央處理器。根據(jù)不同電信號之間的規(guī)律,計(jì)算可得出空氣中的粉塵的濃度。傳感器內(nèi)部結(jié)構(gòu)圖如圖2所示。
圖2 傳感器內(nèi)部結(jié)構(gòu)圖
使用時(shí)將引腳②和引腳④接地,引腳①和引腳⑥接一個(gè)5V脈沖電壓,紅外發(fā)光二極管由引腳①供電,在引腳③處給一個(gè)周期性脈沖信號控制發(fā)光二極管的開和關(guān),放大電路由引腳⑥提供電壓,使光電二極管能接收來自灰塵反射的光。引腳⑤接外界單片機(jī)的模擬信號輸入引腳,傳感器將模擬信號輸出到單片機(jī)進(jìn)行處理。
圖3 輸出電壓值與粉塵濃度的關(guān)系
圖3為傳感器輸出模擬電壓(V)和粉塵濃度(mg/m3)的關(guān)系。橫坐標(biāo)軸為粉塵濃度,縱坐標(biāo)軸為輸出電壓,在粉塵濃度在0 mg/m3~0.5 mg/m3期間輸出的模擬電壓與粉塵濃度存在近似線性比例關(guān)系,即P=0.17×U-1。其中P為粉塵濃度,U為輸出電壓。當(dāng)濃度達(dá)到0.6 mg/m3的時(shí)候該曲線不再上升,輸出電壓達(dá)到3.6 V左右。當(dāng)空氣為潔凈的時(shí)候輸出電壓為0~1.5 V,典型值為0.9 V。因?yàn)榭諝獠豢赡芙^對的干凈,所以取0.9 V代表空氣潔凈。
粉塵傳感器主要參數(shù)如表1所示。
表1 傳感器參數(shù)
LCD顯示屏顯示當(dāng)前粉塵濃度,系統(tǒng)預(yù)設(shè)的閾值以及其他信息。本系統(tǒng)采用2.8寸的LCD屏,分辨率為240*320,色彩為16位。
TFTLCD彩色液晶顯示屏在通信時(shí)傳輸?shù)臄?shù)據(jù)比黑白屏大,傳輸圖片數(shù)據(jù)時(shí),若采用8位的數(shù)據(jù)線,傳輸速度較慢,故采用16位數(shù)據(jù)線。本系統(tǒng)選用 16 位的IO并口。信號線的功能如表2所示。
表2 信號線功能表
系統(tǒng)采用GSM模塊實(shí)現(xiàn)報(bào)警信號的發(fā)送,GSM模塊具有不受地域影響,覆蓋面廣,可靠性強(qiáng)等優(yōu)點(diǎn)[5]。
系統(tǒng)支持預(yù)設(shè)報(bào)警值,當(dāng)環(huán)境粉塵濃度超過預(yù)設(shè)閾值后系統(tǒng)通過GSM模塊向檢測人員發(fā)送實(shí)時(shí)的粉塵濃度信息,提醒用戶在該時(shí)間內(nèi)環(huán)境粉塵濃度超過預(yù)警值,做好相應(yīng)的防護(hù)措施,盡量避免進(jìn)入該環(huán)境。
報(bào)警模塊原理圖如圖4所示。蜂鳴器為感性元器件,感性元器件中的電流不會(huì)突變。蜂鳴器正極接3.3 V電源,R1為限流電阻,防止電流過大損壞元器件,負(fù)極接三極管集電極。BEEP無信號時(shí),基極接地,三極管不導(dǎo)通,蜂鳴器不工作。BEEP有信號時(shí),三極管導(dǎo)通,蜂鳴器報(bào)警,即提示用戶,粉塵濃度高于系統(tǒng)預(yù)設(shè)的閾值。
圖4 蜂鳴器原理圖
設(shè)計(jì)系統(tǒng)軟件時(shí),主要分為以下幾個(gè)模塊,第一是系統(tǒng)初始化模塊,第二是傳感器模塊,第三是LCD顯示模塊,第四是GSM通信模塊。
系統(tǒng)開啟之后首先完成各部分的初始化,然后通過按鍵來設(shè)置閾值,粉塵檢測模塊檢測空氣中的粉塵數(shù)據(jù),單片機(jī)經(jīng)過處理之后進(jìn)行顯示并判斷是否超過閾值,如果超過閾值便啟動(dòng)蜂鳴器,同時(shí)使用GSM發(fā)送信號[6],如果沒有便繼續(xù)檢測并顯示。主程序流程圖如圖5所示。
圖5 主程序流程圖
傳感器模塊把光信號轉(zhuǎn)換為電信號,將模擬電壓值傳送給單片機(jī),單片機(jī)把模擬量轉(zhuǎn)換為數(shù)字量,連續(xù)采集20次數(shù)據(jù)后經(jīng)過去掉最大值,去掉最小值之后求平均值,作為當(dāng)前環(huán)境的粉塵濃度,這樣可以提高檢測的準(zhǔn)確性[7]。傳感器模塊程序流程如圖6所示。
圖6 傳感器模塊程序流程圖
本系統(tǒng)使用STM32F103ZET6作為微處理器芯片,結(jié)合傳感器技術(shù)和GSM無線通信技術(shù),完成對粉塵的測量和實(shí)時(shí)顯示。在粉塵測量系統(tǒng)的一般功能的基礎(chǔ)上,加入了蜂鳴器報(bào)警設(shè)計(jì)和無線通信的遠(yuǎn)程監(jiān)控設(shè)計(jì)。
本系統(tǒng)創(chuàng)新點(diǎn):對傳感器采集的數(shù)據(jù)進(jìn)行理論驗(yàn)證后顯示,提高顯示結(jié)果的準(zhǔn)確性。并能夠利用GSM技術(shù)對環(huán)境進(jìn)行遠(yuǎn)程實(shí)時(shí)監(jiān)控??蛇m用于多種場所,如:施工工地、宿舍、倉庫、體育場館等。隨著嵌入式技術(shù)的發(fā)展,本系統(tǒng)可以進(jìn)一步完善,開發(fā)設(shè)計(jì)人機(jī)交互,實(shí)現(xiàn)語音控制,結(jié)合物聯(lián)網(wǎng)工程連接外部凈化設(shè)備,實(shí)現(xiàn)從粉塵檢測到粉塵凈化的全過程。使人們體驗(yàn)到科技所帶來的方便。