王 昊,孔令榮
(南京理工大學(xué)泰州科技學(xué)院,江蘇泰州 225300)
PM2.5,即直徑≤2.5 μm的細(xì)顆粒物,其在空氣中濃度含量越高,代表著空氣污染越嚴(yán)重。由于環(huán)境的污染、氣候的異常,PM2.5造成呼吸道疾病頻繁發(fā)生,影響身體健康。本文設(shè)計(jì)了一種PM2.5濃度無線檢測系統(tǒng),結(jié)合單片機(jī)、傳感器和無線接收發(fā)技術(shù),通過單片機(jī)控制GP2Y10傳感器采集PM2.5濃度,無線傳輸及讀取PM2.5濃度,具有PM2.5濃度無線檢測,實(shí)時(shí)濃度顯示及超值報(bào)警的功能,可應(yīng)用于日常生活和工業(yè)生產(chǎn)中。采用GP2Y10傳感器,檢測PM2.5濃度;無線檢測發(fā)送端通過ADC0832模數(shù)轉(zhuǎn)換芯片,將GP2Y10傳感器輸出模擬電壓信號轉(zhuǎn)為數(shù)字信號,送給發(fā)送端單片機(jī)AT89S52,控制nRF24L01無線模塊,完成數(shù)據(jù)發(fā)送;無線檢測接收端單片機(jī)AT89C52接收nRF24L01無線模塊數(shù)據(jù)信息,顯示于LCD顯示屏,實(shí)時(shí)控制報(bào)警電路。
圖1 系統(tǒng)總體框圖
PM2.5濃度無線檢測系統(tǒng)分為PM2.5濃度無線檢測發(fā)送端和PM2.5濃度無線檢測接收端兩部分,總體設(shè)計(jì)框圖如圖1所示。其中PM2.5濃度無線檢測發(fā)送端進(jìn)行PM2.5濃度采集和數(shù)據(jù)發(fā)送,PM2.5濃度無線檢測接收端進(jìn)行PM2.5濃度數(shù)據(jù)接收。系統(tǒng)以單片機(jī)AT89S52為控制核心,涵蓋PM2.5濃度采集模塊、無線通信模塊、LCD顯示模塊、報(bào)警模塊。PM2.5采集模塊
系統(tǒng)主體硬件設(shè)計(jì)包括PM2.5濃度采集模塊,nRF24L01無線模塊,LCD顯示模塊和報(bào)警模塊。
PM2.5濃度采集模塊的核心為GP2Y10傳感器。GP2Y10傳感器由SHARP公司制造,屬于光學(xué)傳感器,是由一個(gè)紅外發(fā)光二極管和一個(gè)光電晶體管對角布置所組成的設(shè)備,可檢測空氣中細(xì)小塵埃的反射光,尤其是可檢測到空氣中微小的顆粒,如香煙煙霧。此外,還可通過輸出電壓的脈沖模式來區(qū)分是否為房間內(nèi)的煙霧[1]。GP2Y10傳感器電路連接如圖2所示。
圖2 GP2Y10傳感器電路連接圖
圖2中,P1為GP2Y10傳感器在電路中的插口[2]。1腳為GP2Y10傳感器內(nèi)部紅外發(fā)光二極管供電端,和6腳一同接電源;2腳為GP2Y10傳感器內(nèi)部紅外發(fā)光二極管接地端,與4腳一同接地;AT89S52的P1.6引腳接在Q0的基極,Q0的集電極接GP2Y10傳感器3腳,發(fā)射極接地;5腳為輸出引腳,連接ADC0832模數(shù)轉(zhuǎn)化器的數(shù)據(jù)通道CH0。編寫程序,控制P1.6引腳,模擬3腳紅外發(fā)光二極管驅(qū)動周期(規(guī)格值為脈沖周期10 ms,脈沖寬度 0.32 ms,取樣時(shí)間 0.28 ms)。待GP2Y10粉塵傳感器通電1 s后穩(wěn)定,根據(jù)GP2Y10的5腳輸出電壓值,判定濃度的檢出。一般判斷方法為:從輸出電壓的變化量來做判定,判斷此時(shí)的濃度,另外,還可以根據(jù)輸出電平在時(shí)間上的變化量,檢出對象物的種類進(jìn)行判別[3]。再通過ADC0832將模擬電壓值轉(zhuǎn)為數(shù)字量,送給發(fā)送端AT89S52。
系統(tǒng)包含兩個(gè)nRF24L01無線模塊,分別位于PM2.5濃度無線檢測發(fā)送端和接收端,實(shí)現(xiàn)數(shù)據(jù)的發(fā)送和接收。nRF24L01無線模塊內(nèi)部包括射頻接收發(fā)機(jī),可工作于2.4~2.5 GHz的ISM頻段,實(shí)現(xiàn)數(shù)據(jù)的短距無線傳輸[4],其與單片機(jī)AT89S52連接的原理如圖3所示。
圖3 nRF24L01無線模塊原理圖
圖3中,單片機(jī)AT89S52的引腳P2.0連接CE端,實(shí)現(xiàn)發(fā)送或接收模式選擇;P2.1連接SPI片選信號CSN端;P2.2連接SPI時(shí)鐘信號輸入SCK端;P2.3連接MOSI,實(shí)現(xiàn)SPI數(shù)據(jù)輸入;P2.4連接MISO,實(shí)現(xiàn) SPI數(shù)據(jù)輸出。通過設(shè)置P3.2控制可屏蔽中斷腳IRQ。XC1、XC2與外部晶振連接,給nRF24L01內(nèi)部鎖相環(huán)提供基準(zhǔn)頻率。ANT1、ANT2與電感 L1、L2、L3連接,作為天線接口。
系統(tǒng)設(shè)置nRF24L01工作在增強(qiáng)型ShockBurst模式下[5]。發(fā)送數(shù)據(jù)時(shí),將nRF24L01配置為發(fā)射模式,通過AT89S52引腳P2.3將接收節(jié)點(diǎn)地址和有效數(shù)據(jù)按照時(shí)序由MOSI口寫入nRF24L01緩存區(qū),CE置為高電平并保持至少10 μs,延遲130 μs后發(fā)射數(shù)據(jù)。發(fā)送成功后,將 CE置低,使nRF24L01進(jìn)入空閑模式。接收數(shù)據(jù)時(shí),將 nRF24L01配置為接收模式,延遲130 μs后進(jìn)入接收狀態(tài)等待數(shù)據(jù)的到來[6]。當(dāng)接收方檢測到有效地址和CRC時(shí),將數(shù)據(jù)包存儲在RX FIFO中,中斷標(biāo)志位RX_DR置高,IRQ變低,產(chǎn)生中斷,MISO將數(shù)據(jù)輸出到AT89S52引腳P2.4[7]。接收成功后,將CE置低,使nRF24L01進(jìn)入空閑模式。
LCD顯示模塊位于PM2.5濃度無線檢測接收端,顯示檢測到的濃度值。系統(tǒng)選擇LCD1602字符型液晶顯示模塊。LCD1602內(nèi)部字符發(fā)生存儲器(CGROM)存儲了160個(gè)不同的點(diǎn)陣字符圖形,每一個(gè)字符都對應(yīng)一個(gè)固定的代碼。VL端接可調(diào)電阻,可調(diào)節(jié)LCD顯示顯示對比度。D0~D7分別和單片機(jī)的P0.0~P0.7相連,進(jìn)行數(shù)據(jù)傳輸。
PM2.5超過警戒閾值時(shí),啟動報(bào)警模塊。報(bào)警模塊采用聲光報(bào)警,原理如圖4所示。三極管Q2的發(fā)射極連接蜂鳴器,基極連接單片機(jī)AT89S52的P2.5口,起開關(guān)作用。當(dāng)P2.5口為高電平時(shí),三極管Q2導(dǎo)通,蜂鳴器發(fā)聲;而當(dāng)P2.5口為低電平時(shí),Q2截止,蜂鳴器停止發(fā)聲。三極管Q1的發(fā)射極連接LED警示燈,基極連接單片機(jī) AT89S52的P2.7口。當(dāng)P2.7口為高電平時(shí),三極管Q1導(dǎo)通,LED警示燈亮;而當(dāng)P2.7口為低電平時(shí),Q1截止,LED警示燈熄滅。
PM2.5濃度無線檢測系統(tǒng)軟件設(shè)計(jì)包括發(fā)送端單片機(jī)控制程序設(shè)計(jì)、接收端單片機(jī)控制程序設(shè)計(jì)[8],基于C語言程序編寫。
發(fā)送端單片機(jī)控制程序部分,電源上電,兩塊nRF24L01無線模塊無線匹配,發(fā)送端單片機(jī)STC89S52
圖4 報(bào)警電路原理圖
將由GP2Y10傳感器采集的外界PM2.5濃度數(shù)據(jù)傳到無線射頻芯片nRF24L01。接收端單片機(jī)控制程序,兩片nRF24L01無線模塊之間進(jìn)行數(shù)據(jù)傳輸,PM2.5濃度無線檢測接收端nRF2401無線射頻芯片接收PM2.5粉塵濃度數(shù)據(jù),經(jīng)接收端單片機(jī)STC89S52的分析和處理,顯示在LCD1602液晶屏上,并控制報(bào)警電路[9]。PM2.5濃度無線檢測接收信號端程序流程如圖5所示。
圖5 PM2.5濃度無線檢測接收信號流程圖
系統(tǒng)包括PM2.5濃度無線檢測發(fā)送端和PM2.5濃度無線檢測接收端兩部分,整體硬件實(shí)物如圖6所示。
圖6 整體硬件實(shí)物模塊
PM2.5濃度無線檢測發(fā)送端上電后,GP2Y10感應(yīng)外界PM2.5濃度,發(fā)送端單片機(jī)STC89S52進(jìn)行數(shù)據(jù)分析和計(jì)算,將結(jié)果傳輸至nRF24L01無線模塊,兩片nRF24L01無線射頻芯片開始傳輸數(shù)據(jù),通過接收端單片機(jī)STC89S52,在LCD1602顯示濃度值。系統(tǒng)設(shè)計(jì)中,為便于觀測,設(shè)置報(bào)警閾值為0.6 mg/m3。采用燃燒固體物產(chǎn)生連續(xù)煙霧,模擬PM2.5[10]。當(dāng)超過閾值設(shè)置時(shí),LCD1602顯示濃度為0.80.6 mg/m3,報(bào)警指示燈亮,蜂鳴器鳴叫,如圖7所示。
圖7 PM2.5濃度無線檢測超出閾值
設(shè)計(jì)了一種PM2.5濃度無線檢測系統(tǒng),介紹了GP2Y10傳感器、nRF24L01無線模塊工作原理及如何利用AT89S52單片機(jī)進(jìn)行控制的設(shè)計(jì)方法。該系統(tǒng)基于單片機(jī)C語言,以AT89S52為控制核心,并給出最終硬件實(shí)物,實(shí)現(xiàn)了對PM2.5濃度的無線檢測和報(bào)警功能。
[1] 孫濱.基于光學(xué)粉塵傳感器的車載空氣凈化裝置設(shè)計(jì)[J].電子技術(shù),2013(4):77 -80.
[2] 孫寶元.傳感器及其應(yīng)用技術(shù)[M].北京:機(jī)械工業(yè)出版社,2005.
[3] 劉玉賓,朱煥立.單片機(jī)與接口技術(shù)[M].北京:機(jī)械工業(yè)出版社,2004.
[4] 郝妍娜.基于MCU和nRF2401的低功耗遠(yuǎn)距離無線傳輸系統(tǒng)[J].電子技術(shù)應(yīng)用,2007,33(8):60 -64.
[5] 張坤.基于FPGA的PicoBlaze嵌入式通信系統(tǒng)設(shè)計(jì)[J].電子科技,2013,26(5):53 -56.
[6] 幸敏.基于nRF2401A的無線環(huán)境監(jiān)控系統(tǒng)設(shè)計(jì)[J].廣西教育,2014(27):190-192.
[7] 劉曉波,劉洋.高速無線通信模塊的研究及設(shè)計(jì)[J].傳感器世界,2013(2):21-25.
[8] 譚浩強(qiáng).C語言程序設(shè)計(jì)學(xué)習(xí)輔導(dǎo)[M].北京:清華大學(xué)出版社,2007.
[9] 周黎明.短距離無線數(shù)據(jù)傳輸系統(tǒng)研究[J].工業(yè)控制計(jì)算機(jī),2013,26(5):65 -67.
[10]石建華.單片機(jī)原理與應(yīng)用技術(shù)[M].北京:北京郵電大學(xué)出版社,2008.