肖鑫海 王庭有
(昆明理工大學機電工程學院)
隨著工業化引起環境惡化,人們對環境問題關注密切[1]。 傳統的環境監測往往是針對某一個地區范圍進行監測,對于室內、工廠等較小的空間范圍并不能及時進行監測[2,3]。為使人們能夠及時了解周圍環境質量,各類環境監測系統應運而生。 采用以單片機為核心、多路傳感器并用的新型環境監測系統設計方案相繼被提出。 這類監測系統相比于傳統監測設備更加輕便, 實效性更好,也能運用到各種場所,滿足人們日常生活需要,同時也使環境監測變得更為智能化[4~7]。
筆者提出一款便攜式環境監測系統的設計方案,采用嵌入式系統與傳感器實現對周圍環境參數的數據采集與顯示。 同時,設定好環境參數的安全范圍,當環境參數不在此范圍內時,系統能夠及時發出警示,并實現遠程數據傳輸與報警功能。
為提高系統的可視化程度與可移植性能,采用 模 塊 化 設 計。 如 圖1 所 示, 系 統 由STM32F103C8T6主控芯片、DHT11溫濕度傳感器模塊、 串口程序下載模塊、YH-GP2Y煙霧傳感器模塊、電源模塊、獨立按鍵模塊、OLED顯示模塊、LED警示燈模塊和GSM無線通信模塊組成。 系統以傳感器及獨立按鍵作為系統輸入,經過主控芯片進行數據處理與邏輯運算, 將環境參數通過OLED屏顯示并通過GSM模塊實現遠程數據傳輸。

圖1 系統整體結構框圖
系統以STM32F103C8T6作為主控芯片,外接8 MHz晶振作為系統主頻來源。 主控設計中加入了LED燈,用作系統監測時報警。 同時,加入獨立按鍵,用于修改遠程通信對象和系統復位[8]。主控電路如圖2所示。

圖2 主控電路
溫濕度信息是設計的一個重要輸入數據。 測量溫度和濕度的傳感器有很多種,為簡化電路設計,選取傳感器DHT11,可同時測量溫濕度信號,通過配置可直接輸出數字信號,再由主控芯片讀取后進行數據處理,便可得到環境溫濕度。 溫濕度傳感電路如圖3所示。

圖3 溫濕度傳感電路
PM2.5信息是本設計中的另一個重要參數。在本設計中,選取YH-GP2Y煙霧傳感器模塊[9]。將傳感器3腳通過三極管接入系統主控芯片的PA4腳,通過系統主控芯片的輸出配置,可使傳感器5腳輸出一個電壓模擬信號,再將該引腳接入系統主控芯片PA5腳, 從而實現系統對傳感器數據的讀取。 煙霧傳感電路如圖4所示。

圖4 煙霧傳感電路
在本設計中, 采用了以SIM800C為核心處理芯片的GSM無線通信模塊, 模塊引出引腳TX和RX,經過電平自適應電路分別接到系統主控芯片中的PA2和PA3腳,再通過系統主控芯片發送AT指令+所需傳送的數據信息,實現了與主控芯片的異步串口通信[10]。 GSM模塊電路如圖5所示。

圖5 GSM模塊電路
本設計選取I2C通信OLED顯示屏, 其數據線和時鐘線分別接到主控芯片的I2C接口,通過軟件配置,可以實現對主控芯片處理后的數據信息進行顯示。 另需注意的是,采用I2C通信應在其數據線和時鐘線上再接上2 kΩ的上拉電阻。
本設計程序開發環境為KEIL-MDK。
系統開始先對各個模塊進行初始化,包括傳感器初始化配置, 按鍵模塊初始化,GSM模塊初始化以及顯示屏OLED的初始化。 初始化后,通過按鍵掃描子程序實現對系統遠程通信對象的修改。 此后開始數據采集,溫濕度傳感器讀取的是數字量信號, 煙霧傳感器讀取的是模擬量信號。采集到的數據經過主控芯片進行數據處理,得到實際環境參數,然后與設定值進行比較,若超出設定值,則觸發燈光報警同時向遠程通信對象發送信息。 最后實際環境參數數據會在顯示屏上顯示。 通過不斷循環上述過程,達到對目標周圍環境的實時監測。 主程序流程如圖6所示。

圖6 主程序流程
根據設計好的電路,經過PCB打板,以及實物的焊接制作后,對系統進行測試。 系統測試如圖7所示。 顯示屏由上到下依次為PM2.5濃度、環境濕度、環境溫度和時間。 通過改變環境,系統也能較好地檢測出周圍的環境狀況。 經測試,該系統可以完成對環境相關參數的實時監測,并且反應速度快,能夠實現當環境參數超過設定安全值時的燈光報警與向遠程通信目標發送信息的功能。

圖7 系統測試圖
筆者設計了基于STM32F103C8T6芯片的環境監測系統,選用的檢測傳感器可以直接輸出所需數字量與模擬量,簡化了電路,可靠性高,功耗也較小。 系統采用模塊化設計,提高了其可視化與移植性,采用集成化電路制作,使系統較為小巧,方便攜帶。 相對于傳統的地域性的環境檢測,該系統可以在室內、 工廠等小范圍內對周圍環境進行實時監測。 此外,系統設計采用的GSM模塊無線通信,實現了遠程數據接收與監測。 經過測試,該系統可以運用在實際中,以滿足人們對周圍環境監測的需求。