—— PROUCTS LIST
空氣粉塵濃度檢測器電路設(shè)計與軟件編程
隨著人類工業(yè)和經(jīng)濟(jì)的快速發(fā)展,我們的環(huán)境污染越來越嚴(yán)重。除廢氣、廢水外,顆粒狀粉塵、煙塵向大氣排放所造成的污染已成為一個十分突出的問題。PM2.5,PM10,PM0.1及其吸附的重金屬粒子是霧霾的重要組成部分[1]。2012年2月,《環(huán)境空氣質(zhì)量標(biāo)準(zhǔn)》新增了對PM2.5的檢測指標(biāo),PM2.5成為空氣質(zhì)量標(biāo)準(zhǔn)之一。數(shù)據(jù)表明,我國空氣質(zhì)量標(biāo)的城市中68%都存在可吸入顆粒物的問題[2]。由此可以看出粉塵對人類健康和生產(chǎn)的危害十分嚴(yán)重。所以,粉塵濃度的檢測和控制具有重要的意義。
本文介紹一種簡易粉塵濃度檢測器的設(shè)計,能夠?qū)諝夥蹓m進(jìn)行采樣分析,可以測量出空氣中的粉塵濃度,測量數(shù)據(jù)直觀易懂,測量結(jié)果可靠。
1 系統(tǒng)工作原理
單片機(jī)選用ATmega328p,粉塵濃度傳感器選用夏普GP2Y1010AU0F灰塵傳感器,按鍵部分通過電阻與按鍵串聯(lián)將信號輸入模擬口,通過讀取模擬值的不同判斷按鍵值,顯示部分采用LCD1602并用采取I2C總線的8位遠(yuǎn)程I/O擴(kuò)展口芯片PCF8574進(jìn)行引腳簡化。
將粉塵檢測器電源開關(guān)打開,當(dāng)傳感器得到一個由粉塵濃度轉(zhuǎn)換得來的0~5V的電壓信號時,進(jìn)入單片機(jī),經(jīng)過處理后轉(zhuǎn)變?yōu)槭M(jìn)制數(shù)通過I/O口在顯示屏上顯示出數(shù)值。數(shù)值量隨輸入電壓的擾動而變化。同時鍵盤設(shè)定預(yù)警值送入單片機(jī),與測量值一同顯示出來。當(dāng)采集的當(dāng)前粉塵濃度大于預(yù)警值時,單片機(jī)驅(qū)動蜂鳴器報警。
2 系統(tǒng)電路設(shè)計
2.1 電路總體設(shè)計
以ATmega328p單片機(jī)為核心,主要包括單片機(jī)處理模塊,信號采集模塊,獨(dú)立按鍵模塊,顯示模塊和蜂鳴器報警模塊。系統(tǒng)通過信號采集模塊采集空氣中的粉塵,得到0~5V的電壓信號后,由單片機(jī)內(nèi)部自帶的10位ADC進(jìn)行模數(shù)轉(zhuǎn)換得到粉塵濃度,與此同時,通過獨(dú)立按鍵模塊設(shè)定濃度預(yù)警值,通過液晶顯示模塊將粉塵濃度和預(yù)警值同時顯示在顯示屏上。當(dāng)檢測值大于預(yù)警值時就會自動通過蜂鳴器報警模塊報警。整個系統(tǒng)的框架結(jié)構(gòu)如圖所示:
2.2 單片機(jī)處理模塊
設(shè)計選用ATmega328p單片機(jī),該單片機(jī)配合Arduino uno使用,可以更加方便的用外接模塊進(jìn)行拓展,如wifi模塊、SD卡接口模塊、基于w5100芯片的Ethernet模塊等,并且其內(nèi)部自帶10位六通道ADC可以用來轉(zhuǎn)換傳感器輸出的信號,從而得到粉塵濃度。
2.3 信號采集模塊
GP2Y1010AUOF是一款由日本夏普公司開發(fā)的光學(xué)濃度檢測傳感器。此傳感器內(nèi)部成對角線分布的紅外發(fā)光管和光電晶體管,利用光敏原理來工作,依靠輸出脈沖的高度來判斷顆粒物濃度。同時,傳感器內(nèi)部有信號放大電路,可以對光電信號進(jìn)行放大。其內(nèi)部結(jié)構(gòu)圖如圖2所示:
傳感器內(nèi),紅外發(fā)光二極管和光電晶體管按對角位置布置,利用發(fā)光二極管發(fā)射光線,利用晶體管接受二極管發(fā)射的光,從而引起電壓的變化,這時傳感器里的空氣傳導(dǎo)設(shè)備就會產(chǎn)生一定的作用使空氣流通。此設(shè)計能夠檢測到小的微粒,甚至非常小的煙草顆粒,測量結(jié)果比較。
由于GP2Y1010AUOF對驅(qū)動的LED的脈沖要求較高,輸入信號采樣周期為10ms±1ms;輸入高脈沖的寬度為0.32ms±0.02ms。所以對于采樣信號,需要等待輸入信號出現(xiàn)高脈沖以后再計時0.28ms進(jìn)行采樣[3]。
2.4 獨(dú)立按鍵模塊
按鍵部分是通過電阻與按鍵串聯(lián)將信號輸入模擬口,通過讀取模擬值的不同判斷按鍵值。因?yàn)锳/D轉(zhuǎn)換是將模擬的0~5V電壓轉(zhuǎn)換成八個二進(jìn)制位,八個二進(jìn)制轉(zhuǎn)換成十進(jìn)制的范圍為0~255,所以只需設(shè)置三個獨(dú)立按鍵分別獨(dú)立輸入預(yù)警值的百位,十位,個位。鍵盤每按下一次則相應(yīng)位上數(shù)據(jù)增加1,當(dāng)數(shù)據(jù)設(shè)定完成后通過I/O口輸入單片機(jī),通過單片機(jī)的處理轉(zhuǎn)換為三位十進(jìn)制的濃度預(yù)警值,然后顯示在顯示屏上。
2.5 顯示模塊
顯示模塊采用LCD1602并用采取I2C總線的8位遠(yuǎn)程I/O擴(kuò)展口芯片PCF8574進(jìn)行引腳簡化。LCD1602是工業(yè)字符型液晶,可同時顯示16×2即2行,每行顯示16個字符液晶模塊(顯示字符和數(shù)字)。因?yàn)橐瑫r顯示粉塵濃度的檢測值和預(yù)警值,所以LCD1602的兩行顯示功能已經(jīng)滿足設(shè)計。
2.6 蜂鳴器報警模塊
當(dāng)采集到的環(huán)境中的粉塵濃度大于預(yù)警值時,單片機(jī)就會驅(qū)動蜂鳴器報警,然后采取相應(yīng)措施降低粉塵濃度或者使人員撤離工作現(xiàn)場。由于蜂鳴器的工作電流一般比較大,以致于單片機(jī)的I/O口是無法直接驅(qū)動的,所以要利用放大電路來驅(qū)動。我們采用三極管來放大電流。
3 系統(tǒng)軟件設(shè)計
軟件系統(tǒng)設(shè)計主要分為系統(tǒng)初始化模塊、驅(qū)動傳感器模塊,A/D模數(shù)轉(zhuǎn)換模塊,粉塵濃度計算和顯示等模塊,單片機(jī)通過軟件程序?qū)崿F(xiàn)對硬件設(shè)備的控制,測量并顯示粉塵濃度。軟件部分設(shè)計需要利用單片機(jī)所產(chǎn)生的周期為10ms的脈沖波形驅(qū)動傳感器內(nèi)部的LED發(fā)光,并對信號進(jìn)行A/D轉(zhuǎn)換,同時進(jìn)行LCD1602的顯示和定時器定時。單片機(jī)產(chǎn)生的脈沖波形加在GP2Y1010AU0F上,傳感器將輸出一個0~5V電壓,可通過A/D轉(zhuǎn)換得到相應(yīng)的粉塵濃度值,后通過LCD1602顯示出來,如果空氣粉塵濃度過了預(yù)警值,系統(tǒng)將會報警。
4 總結(jié)
本文主要介紹了簡易粉塵檢測器的設(shè)計,在單片機(jī)的控制下,完成數(shù)據(jù)的采集、顯示、預(yù)警值設(shè)置及蜂鳴器預(yù)警等系統(tǒng)分模塊的程序設(shè)計,然后結(jié)合各模塊的硬件電路來實(shí)現(xiàn)每個模塊的功能,從而實(shí)現(xiàn)整個系統(tǒng)的功能。結(jié)果表明,該粉塵檢測儀測量結(jié)果可靠。