範文齋

位置:首頁 > 行業範文 > 半導體

空氣粉塵濃度檢測器電路設計與軟件編程論文

半導體1.55W

設計以ATmega382p單片機爲控制中心,由GP2Y1010AU0F光學空氣質量傳感器測量空氣粉塵濃度,通過單片機內置的10位A/D轉換將模擬的電壓信號轉換成數字信號,得到粉塵濃度值,並由LCD1602顯示屏顯示出來。同時,設置濃度預警值並同測量值一起顯示在顯示屏上。當測量濃度超過預警值時,儀器就會報警。

空氣粉塵濃度檢測器電路設計與軟件編程論文

0 引言

隨着人類工業和經濟的快速發展,我們的環境污染越來越嚴重。除廢氣、廢水外,顆粒狀粉塵、煙塵向大氣排放所造成的污染已成爲一個十分突出的問題。PM2.5,PM10,PM0.1及其吸附的重金屬粒子是霧霾的重要組成部分[1]。2012年2月,《環境空氣質量標準》新增了對PM2.5的檢測指標,PM2.5成爲空氣質量標準之一。數據表明,我國空氣質量超標的城市中68%都存在可吸入顆粒物的問題[2]。由此可以看出粉塵對人類健康和生產的危害十分嚴重。所以,粉塵濃度的檢測和控制具有重要的意義。

1 系統工作原理

單片機選用ATmega328p,粉塵濃度傳感器選用夏普GP2Y1010AU0F灰塵傳感器,按鍵部分通過電阻與按鍵串聯將信號輸入模擬口,通過讀取模擬值的不同判斷按鍵值,顯示部分採用LCD1602並用採取I2C總線的8位遠程I/O擴展口芯片PCF8574進行引腳簡化。

將粉塵檢測器電源開關打開,當傳感器得到一個由粉塵濃度轉換得來的0~5V的電壓信號時,進入單片機,經過處理後轉變爲十進制數通過I/O口在顯示屏上顯示出精確數值。數值量隨輸入電壓的擾動而變化。同時鍵盤設定預警值送入單片機,與測量值一同顯示出來。當採集的當前粉塵濃度大於預警值時,單片機驅動蜂鳴器報警。

2 系統電路設計

2.1 電路總體設計

以ATmega328p單片機爲核心,主要包括單片機處理模塊,信號採集模塊,獨立按鍵模塊,顯示模塊和蜂鳴器報警模塊。系統通過信號採集模塊採集空氣中的粉塵,得到0~5V的電壓信號後,由單片機內部自帶的10位ADC進行模數轉換得到粉塵濃度,與此同時,通過獨立按鍵模塊設定濃度預警值,通過液晶顯示模塊將粉塵濃度和預警值同時顯示在顯示屏上。當檢測值大於預警值時就會自動通過蜂鳴器報警模塊報警。整個系統的框架結構如圖所示:

2.2 單片機處理模塊

設計選用ATmega328p單片機,該單片機配合Arduino uno使用,可以更加方便的.用外接模塊進行拓展,如wifi模塊、SD卡接口模塊、基於w5100芯片的Ethernet模塊等,並且其內部自帶10位六通道ADC可以用來轉換傳感器輸出的信號,從而得到粉塵濃度。

2.3 信號採集模塊

GP2Y1010AUOF是一款由日本夏普公司開發的光學濃度檢測傳感器。此傳感器內部成對角線分佈的紅外發光管和光電晶體管,利用光敏原理來工作,依靠輸出脈衝的高度來判斷顆粒物濃度。同時,傳感器內部有信號放大電路,可以對光電信號進行放大。其內部結構圖如圖2所示:

傳感器內,紅外發光二極管和光電晶體管按對角位置佈置,利用發光二極管發射光線,利用晶體管接受二極管發射的光,從而引起電壓的變化,這時傳感器裏的空氣傳導設備就會產生一定的作用使空氣流通。此設計能夠檢測到小的微粒,甚至非常小的菸草顆粒,測量結果比較準確。

由於GP2Y1010AUOF對驅動的LED的脈衝要求較高,輸入信號採樣週期爲10ms±1ms;輸入高脈衝的寬度爲0.32ms±0.02ms。所以對於採樣信號,需要等待輸入信號出現高脈衝以後再計時0.28ms進行採樣[3]。

2.4 獨立按鍵模塊

按鍵部分是通過電阻與按鍵串聯將信號輸入模擬口,通過讀取模擬值的不同判斷按鍵值。因爲A/D轉換是將模擬的0~5V電壓轉換成八個二進制位,八個二進制轉換成十進制的範圍爲0~255,所以只需設置三個獨立按鍵分別獨立輸入預警值的百位,十位,個位。鍵盤每按下一次則相應位上數據增加1,當數據設定完成後通過I/O口輸入單片機,通過單片機的處理轉換爲三位十進制的濃度預警值,然後顯示在顯示屏上。

2.5 顯示模塊

顯示模塊採用LCD1602並用採取I2C總線的8位遠程I/O擴展口芯片PCF8574進行引腳簡化。LCD1602是工業字符型液晶,可同時顯示16×2即2行,每行顯示16個字符液晶模塊(顯示字符和數字)。因爲要同時顯示粉塵濃度的檢測值和預警值,所以LCD1602的兩行顯示功能已經滿足設計。

2.6 蜂鳴器報警模塊

當採集到的環境中的粉塵濃度大於預警值時,單片機就會驅動蜂鳴器報警,然後採取相應措施降低粉塵濃度或者使人員撤離工作現場。由於蜂鳴器的工作電流一般比較大,以致於單片機的I/O口是無法直接驅動的,所以要利用放大電路來驅動。我們採用三極管來放大電流。

3 系統軟件設計

軟件系統設計主要分爲系統初始化模塊、驅動傳感器模塊,A/D模數轉換模塊,粉塵濃度計算和顯示等模塊,單片機通過軟件開發程序實現對硬件設備的控制,測量並顯示粉塵濃度。軟件部分設計需要利用單片機所產生的週期爲10ms的脈衝波形驅動傳感器內部的LED發光,並對信號進行A/D轉換,同時進行LCD1602的顯示和定時器定時。單片機產生的脈衝波形加在GP2Y1010AU0F上,傳感器將輸出一個0~5V電壓,可通過A/D轉換得到相應的粉塵濃度值,最後通過LCD1602顯示出來,如果空氣粉塵濃度超過了預警值,系統將會報警。

4 總結

本文主要介紹了簡易粉塵檢測器的設計,在單片機的控制下,完成數據的採集、顯示、預警值設置及蜂鳴器預警等系統分模塊的程序設計,然後結合各模塊的硬件電路來實現每個模塊的功能,從而實現整個系統的功能。結果表明,該粉塵檢測儀測量結果準確可靠。