陳曦
摘要 本論文設(shè)計實現(xiàn)PM2.5污染物監(jiān)測分析系統(tǒng)。通過查閱國內(nèi)外文獻(xiàn)資料,了解了國內(nèi)外對于PM2.5污染物防治政策與各種方法,明晰了國內(nèi)外在大氣污染治理方面的總體局勢又學(xué)習(xí)了這些文獻(xiàn)中的先進(jìn)技術(shù)。依據(jù)國內(nèi)外大氣污染治理的經(jīng)驗,結(jié)合我國目前PM2.5防治的現(xiàn)狀,設(shè)計并最終實現(xiàn)PM2.5污染物監(jiān)測分析系統(tǒng)。
[關(guān)鍵詞]STM32 機(jī)車排放 微顆粒檢測
1 系統(tǒng)結(jié)構(gòu)設(shè)計
本系統(tǒng)硬件系統(tǒng)采用了STM32F103RCT6為核心,所以首先能夠保證低功耗,低價格。而且由于STM32十分強(qiáng)大,在實時性上有著突出的優(yōu)勢,因此在對PM2.5數(shù)據(jù)的處理和顯示上能夠做到很好的實時性。此外,STM32輸出穩(wěn)定,抗干擾能力強(qiáng),其工業(yè)級版本能夠在十分惡劣的環(huán)境下正常工作,因此它作為產(chǎn)品擁有較好的市場競爭力。
在單片機(jī)程序編寫中,采用了平均值濾波。在保證對環(huán)境變化快速響應(yīng)的基礎(chǔ)上,排出了外界偶然因素的干擾。使PM2.5和PM10數(shù)據(jù)輸出穩(wěn)定可靠,不會發(fā)生斷層式劇變,其響應(yīng)曲線平滑,十分接近現(xiàn)實情況。程序經(jīng)過不斷的調(diào)試和優(yōu)化,最后具有很高的執(zhí)行效率,既節(jié)約了CPU資源,又能使程序快速穩(wěn)定的運行,得到想要的結(jié)果。例如,TFT屏的局部畫屏更新數(shù)據(jù)、PM數(shù)值從高數(shù)位到低數(shù)位的判斷、中斷的應(yīng)用和鎖的應(yīng)用、合理的程序時序邏輯和控制邏輯都為程序的快速運行做出巨大貢獻(xiàn)。
2 各模塊設(shè)計
2.1 控制器模塊設(shè)計
本硬件系統(tǒng)使用了STM32F103RCT6為核心控制器,它以ARM Cortex-M3內(nèi)核,為32位MCU,屬于STM32系列中的增強(qiáng)型系列。擁有高速的工作頻率為72MHz,大容量存儲為RAM容量48K,程序存儲器容量為256K (Flash),且采用64-LQFP封裝。STM32F103RCT6還有著豐富的外設(shè)資源:4個16位普通定時器,2個16位高級定時器,2個16位基本定時器;這些定時器可用于精準(zhǔn)延時、定時、產(chǎn)生PWM波以及根據(jù)不同的觸發(fā)信號產(chǎn)生中斷。3個SPI interface,2個I2C interface,3個通用同步異步收發(fā)器(USART),2個通用異步收發(fā)器(UART),1個USB interface,1個CAN interface; 這些通信方式更有利于STM32的開發(fā)與其他設(shè)備的互聯(lián)。1個SDIO interface,3個12位的ADC(且含有16個通道),2個12位的DAC;模數(shù)轉(zhuǎn)換為模擬信號和數(shù)字信號的采集、處理、輸出提供了極大的便捷。多達(dá)51個I/O引腳用于開發(fā),可以與外部設(shè)備相連,產(chǎn)生高低電平信號或者PWM波等實用功能滿足項目需求。
2.2 無線傳輸模塊設(shè)計
NRF24L01是一款單片無線收發(fā)器芯片,它工作在2.4-2.5GHZ世界通用ISM頻段。它主要由功率放大器、頻率發(fā)生器、晶體振蕩器、增強(qiáng)型模式控制器、調(diào)制器以及解調(diào)器構(gòu)成。在它的SPI接口能夠設(shè)置傳輸協(xié)議、頻道選擇以及輸出功率。
NRF24L01采用了內(nèi)置的硬件鏈路層,擁有自動應(yīng)答及自動重發(fā)功能,真正的GFSK單片式收發(fā)芯片,擁有Shock Burst增強(qiáng)型功能。地址及CRC檢驗功能,SPI接口速率選擇范圍廣:0-8MBPS,無線速率:1或2MBPS,很短的頻道切換時間,可用于調(diào)頻,125個可選工作頻道,20腳QFN 4*4mm封裝,與NRF 24XX系列完全兼容,10可接受5V電平的輸入,較低工作電壓:1.9-3.6V,極低成本晶振,使用低成本電感和雙面PCB板。
2.3 傳感器模塊設(shè)計
本系統(tǒng)采用的PM2.5傳感器SDS011采用激光散射來檢測PM2.5和PM10的實時數(shù)據(jù)。通過引腳進(jìn)行數(shù)據(jù)包的輸出。進(jìn)行了PM2.5數(shù)據(jù)包的接收之后,要進(jìn)行數(shù)據(jù)的處理,所以這里設(shè)計了compute(uint16 t *shuzu)函數(shù)來對接收到的4個字節(jié)的PM數(shù)據(jù)包進(jìn)行處理。這里首先是將接收到的數(shù)組傳遞給compute(uint16t *shuzu)函數(shù),然后用變量high2和low2去接收PM2.5的高字節(jié)和低字節(jié),同理,highl0和lowl0來接收PM10的高字節(jié)和低字節(jié)。
這里值得一提的是,本系統(tǒng)用到了平均值濾波,因為考慮到在實際的測量當(dāng)中,SDS011很可能會出現(xiàn)因為某些突發(fā)因素(比如刮來一陣風(fēng)沙)而導(dǎo)致PM數(shù)值斷層式劇增,而這顯然不是真正的此地區(qū)PM數(shù)值,因此特意設(shè)置了大小為5的數(shù)組,每當(dāng)有新數(shù)據(jù)加入就會更新這個數(shù)組,然后取平均值,這樣得到的數(shù)據(jù)十分穩(wěn)定。如果將這個PM2.5和PM10的曲線畫出,也應(yīng)該是平穩(wěn)的,而不是有斷層的劇增。
2.4 TFT顯示屏設(shè)計
本系統(tǒng)采用的是1.44寸TFT屏對下位機(jī)處理輸出的PM2.5和PM10的值進(jìn)行實時顯示。這塊TFT屏既能用SPI引腳驅(qū)動,也可以用普通的GPIO腳來模擬SPI進(jìn)行驅(qū)動。最少可以使用4個引腳就對TFT屏進(jìn)行驅(qū)動。本驅(qū)動屏采用ST7735作為驅(qū)動芯片,既能夠顯示文字,也能夠顯示彩色圖片。背光模式采用白色的LED。分辨率為128*RGB*128,也就是說每行每列各有128個像素點能夠進(jìn)行顯示。
在對TFT驅(qū)動編程里,首先就是對LCD進(jìn)行初始化,通過向驅(qū)動芯片ST7735寫入命令字,從而控制LCD屏的顯示。然后,就是顯示我們所需要的內(nèi)容,這里顯示“PM2.5實時檢測”,最后是并排的兩列實時數(shù)據(jù)分別在“PM2.5=”和“PM10=”之后顯示。而這里涉及到了一個關(guān)鍵問題,那就是如何顯示漢字。這里用到了一個字符取模軟件,通過它就能夠方便的將漢字轉(zhuǎn)換成十六進(jìn)制的數(shù)組進(jìn)行顯示了。
3 結(jié)束語
本論文完成了硬件系統(tǒng)的設(shè)計,包括PM2.5傳感器、TFT屏、2.4G無線傳輸模塊NRF24L01+的驅(qū)動編寫與硬件連接。對硬件系統(tǒng)的核心STM32F103RCT6進(jìn)行下位機(jī)編程,構(gòu)造了下位機(jī)的PM2.5檢測系統(tǒng)。能夠?qū)M2.5傳感器檢測到的PM2.5和PM10實時顯示在TFT屏上,與此同時通過NRF24L01+傳送給與PC相連接的其他NRF無線設(shè)備。
參考文獻(xiàn)
[1]北京市環(huán)保局.2015年空氣質(zhì)量報告[R].北京:北京市環(huán)保局網(wǎng)站,201 5.
[2]劉火良,楊森.STM32庫開發(fā)實戰(zhàn)指南[M],北京:機(jī)械工業(yè)出版社,201 3.
[3]蒙博宇.STM32自學(xué)筆記第二版[M].北京:北京航空航天大學(xué)出版社,2014.