耿明飛, 馬豫超, 包從破, 吳 榮
(上海電機學院 電氣學院, 上海 201306)
因為機動化、城市化和能源消耗增加,大氣污染作為國家第4大健康風險,影響人們的健康[1]。有效監測空氣質量,及時提供校園環境相關信息,可以起到警示預防作用,以便及時采取預防措施[2-3]。本文設計了一個檢測系統,該系統能實時采集校園不同區域的溫度、濕度和PM 2.5 濃度值[4],并實時將數據傳輸給總接收節點并顯示。該環境監測系統適應范圍廣、穩定性強[5]。
系統硬件主要分為以下幾個模塊:含STC12C5A60S2主控芯片的單片機最小系統、DHT11 溫度濕度模塊、PM 2.5粉塵傳感器模塊、無線傳輸模塊、STM32F107VC芯片模塊和TFT彩屏顯示模塊。軟件部分是單片機采集程序和STM32F107VC控制芯片的接收程序。
本系統需要采集校園不同地點數據,所以采用多點采集總點顯示技術。系統采用了 2.4 G 無線收發芯片進行數據的發送與接收。接收節點在接收了各個采集點的數據后,經分析處理在彩屏顯示。系統采集節點和接收節點結構如圖 1 所示。

圖1 系統采集節點和接收節點框圖
STC12C5A60S2單片機是系統采集部分的核心。首先用 51 單片機接收兩個傳感器傳遞的數據,通過 2.4 G 無線傳輸給以STM32F107VC控制芯片的接收部分,最后彩屏顯示。溫度和濕度的測量依靠DHT11傳感器,PM 2.5 濃度值則通過GP2Y1051AU0F粉塵傳感器來獲取,用 2.4 G NRF24L01芯片進行數據的傳輸與接收,TFT 彩屏顯示。采集系統可以實時顯示數據,便捷可靠,較適合校園的實際情況。
系統硬件有5大部分:單片機最小系統;主控STM32F107VC芯片電路部分(包括復位電路、晶振電路、供電電路和調試電路);傳感器模塊部分(包括PM 2.5傳感器和溫度、濕度傳感器[5]);無線傳輸模塊部分(包括無線傳輸模塊接口電路);顯示電路部分(TFT 接口電路)。
選擇的 51 單片機的最小系統,成本低,性價比高,電路少,簡單便攜,能滿足系統的要求。其中的STC12C5A60S2主控芯片響應速度快,能耗低,節約資源[6],自帶 60K FLASH ROM,MAX810 復位電路,高速 10 位 A/D 轉換,脈沖寬度調制技術,抗干擾能力強。STC12C5A60S2主控芯片擁有數據采集和控制需要的全部模塊[7]。系統采用外部時鐘電路方式,選用晶振 11.059 2 MHz,即在引腳 XTAL1和 XTAL2 外接晶體振蕩器,在晶振兩端接 2 個 30 pF 的陶瓷電容即負載電容,直接控制晶振輸出幅度和諧振的頻率。
采用外部晶振,外部時鐘所得的信息較為固定,受溫度等外部因素的影響比內部振蕩器小,精度較高[8]。
基于Cortex-M3的STM32F107VC芯片功能非常齊全,自帶全速 USB OTG,I2S 和 RS-232 接口,2個 CAN2.0A/B 兼容接口,2個 I2C 接口,5個USART接口,3個 SPI 接口,256KB Flash和 64KB SRAM,支持聯合測試工作組(Joint Test Action Group,JTAG)協議調試。該芯片共有 100 個引腳。工作電壓(VDD)為 2.0~3.6 V[9],可通過 LM1117穩壓芯片實現。LM1117穩壓芯片是一個低壓差電壓調節電路,有固定和可調整這兩種電壓輸出類型。該芯片對過大電流有限制功能,芯片過熱自動斷開。根據內置的帶隙基準,保證輸出電壓的精度。電源模塊電路如圖2所示,輸入電壓為 5 V,穩定輸出 3.3 V電壓。

圖2 電源模塊電路圖
2.3.1 溫度濕度傳感器 溫度濕度采集用的是DHT11傳感器。該傳感器是數字信號輸出,無需進行 A/D 轉換。DHT11傳感器,使用簡便且穩定。該傳感器內部自帶 NTC 溫度測量元件,電阻式測濕元件[10],具有抗干擾能力強、速度快、性能優良、性價比高和耗能低等優點。單線制、串行接口的使用更為方便簡單[11]。DHT11溫度濕度傳感器的數據傳輸引腳需要接一個上拉電阻。本文的電路中,傳感器的數據(DATA)引腳連到 51 單片機的 P1.0 引腳。溫度濕度采集的電路設計如圖3所示。

圖3 溫度濕度采集電路圖
2.3.2 PM 2.5 傳感器 選擇GP2Y1051AU0F粉塵傳感器進行PM 2.5濃度值的采集[12]。這是一種灰塵傳感器,由紅外傳感器和光電晶體管組成,光電子晶體管通過光學感測系統對角地布置在器件中。當灰塵或者煙灰等空氣中的粉塵處于粒子直徑檢測范圍內時,光接收元件就接收到這些粉塵散射的光,并作為電壓輸出。它能夠檢測到香煙煙霧等直徑極細的顆粒。該傳感器發送數據輸出(TXD)引腳連接 51 單片機的P3.0輸入(RXD)引腳,傳感器采用串口通信采集PM 2.5。
選用 NRF24L01無線收發芯片進行數據傳輸[13],它體積小、功耗低、能遠距離無線收發,工作頻段為 2.4~2.5 GHz。 SPI設定參數即能實現通信,無需聯網。該芯片具有很多低功耗運行模式,使系統更節能[14]。2.4 G 技術可以在10 m距離內連接到電腦。該芯片發送部分和單片機最小系統的STC12C5A60S2芯片連接,其供電電壓(VCC)引腳直接連接 3.3 V 電源引腳,除了接地(GND)和VCC,其余腳和 51 單片機 I/O 口P2.2~P2.7 引腳直接相連。數據進行無線發送只需要普通的單片機 I/O 口,不需要串口。同時將NRF24L01無線收發芯片連接到 STM32F107VC控制芯片進行無線接收,通過電源模塊將 5 V 的電源轉換成 3.3 V 電源。因此, NRF24L01無線收發芯片模塊可以直接和STM32F107VC芯片的IO口 PB1,PB12~PB15和PA0 引腳連接,接收溫度、濕度和PM 2.5濃度值數據。
本文采用的是高畫質的 TFT 彩屏,其大小為 3.2 mm×25.44 mm,分辨率為 320×240,配置了真彩LCD模塊,并且具備多種接口可供連接。TFT彩屏具備可擴展和易于編程的特點[15]。
51 單片機采集節點的程序由 Keil C51 編寫,包括NRF24L01無線收發芯片檢測,NRF24L01無線收發芯片和DHT11傳感器初始化,數據采集,無線發送。溫度濕度采集使用的 DHT11 數字溫濕度傳感器通過不斷設置 I/O 口的不同模式以及發送或接收 I/O 口的不同狀態來完成采集。在每次進入工作之前,傳感器都需要進行初始化動作。傳感器接收一個來自單片機的信號并返回響應信號,單片機據此做好通信準備,單片機和傳感器開始進行數據通信。溫度、濕度的采集流程圖如圖4所示。
PM 2.5 濃度值采集采用串口的方式,必須先進行串口設置,配置波特率,串口接到信號后,產生串口中斷,進入中斷接收數據,數據存儲在串口寄存器當中。接收到數據后中斷停止,對數據進行校驗,最后通過數據處理得到 PM 2.5濃度值。采集 PM 2.5 濃度值流程如圖5所示。

圖4溫濕度采集流程圖圖5采集 PM 2.5 濃度值流程圖
STM32F107VC芯片接收并顯示的程序由Keil MDK編寫,包括NRF24L01無線收發芯片檢測,NRF24L01芯片和TFT彩屏初始化。接收節點主要完成對采集的數據進行處理和顯示。2.4 G 無線收發芯片同樣需要檢測是否有信號,并進行數據通道初始化配置。若成功接收到數據,則進行數據的處理,再進行彩屏顯示。彩屏顯示前要先進行復位和初始化,并寫入顏色指令和要顯示的文字和數據。TFT顯示器驅動流程如圖6所示。

圖6 TFT顯示器驅動流程圖
在實驗室搭建的一個測試環境,主要測試系統對溫度、濕度和PM 2.5濃度值數據的采集,采集節點和接收節點的2.4 G 通信,TFT 彩屏的數據顯示[16]。校園環境監測系統實物如圖7所示。

圖7 校園環境監測系統實物
在采集節點1,首先將DHT11傳感器和GP2Y1051AU0F粉塵傳感器,分別使用I/O和串口連接到STC12C5A60S2芯片上,收集傳感器測得的數據并通過無線傳輸,并通過SPI口連接NRF24L01無線收發芯片。采集點2所有連接與設置均與采集點1相同。STM32F107VC控制芯片作為接收節點,也同時連接 NRF24L01 傳感器用來接收數據。最后通過TFT彩屏顯示出這兩點的溫度、濕度和PM 2.5 濃度值。校園環境監測系統的測試顯示結果顯示如圖8所示。

圖8 測試結果顯示
系統成本低,簡單易攜帶,且可靠性較高,對類似系統的開發有一定的借鑒意義。校園環境信息監測系統通過單片機采集傳感器測得的溫度、濕度和PM 2.5濃度值,由2.4 G無線收發芯片將數據傳輸給接收節點,接收節點進行彩屏顯示。軟件電路包括2.4 G的檢測,串口接收與發送,傳感器的初始化與數據采集等。經過測試,系統可以實時連續監測,并穩定可靠。