




摘要:世界衛生組織的統計資料表明,由于裝修房屋引發的環境污染,導致全球每年10萬人死于哮喘。為了解決家庭環境污染問題,文章設計了一種環境質量監測控制系統,該系統采用STM32做主控芯片,使用傳感器采集環境中的溫濕度、光照強度、CO2和TVOC濃度等參數數據。該系統采集參數并與設定的參數閾值進行對比,單片機判斷是否開啟相應的反饋補償模塊,以保證環境內的各參數數據處于相對穩定狀態;最后單片機通過無線模塊將數據發送給上位機,同時上位機可以對下位機發送控制命令,實現對整個環境的閉環控制。系統經過測試表明:當前測試環境內的各項參數趨于穩定,環境狀態良好,對溫度、濕度、光照強度、CO2濃度和TVOC濃度等參數進行了檢測和調控,基本達到了系統設計要求。
關鍵詞:STM32;環境監測;閉環控制
中圖分類號:TP29文獻標志碼:A
0 引言
在出現了“水污染”“固體廢棄物污染”與“噪聲污染”后,人類就出現了第三個環境問題——“大氣污染”[1]。據世界衛生組織的統計資料表明,由于裝修房屋引發的環境污染,導致全球每年有10萬人引發哮喘而死,其中孩子占35%[2]。相關研究表明,新家具和家居用品中揮發的氣體是環境空氣污染的主要源頭,其中有毒氣體的污染物質占68%,包含甲醛、苯、氨、揮發性的有機化合物TVOC、放射性氡等,揮發出接近300多種物質,一旦人體吸入會產生各種疾?。?]。
本針對上述問題,設計一款環境質量監測控制系統,此系統旨在針對環境中的物理量進行檢測和處理,能有效檢測不同環境下的各個參量是否達標,同時針對未能達標的參量進行反饋補償控制。
1 總體設計方案
在特定環境下,系統通過傳感器對各個參量進行檢測,并將檢測數據送到核心控制器;核心控制器將傳感器采集的數值與設定好的數值進行對比,并根據對比結果開啟/關閉相應的反饋補償設備,直至環境參數回歸到設定好的閾值區間內為止;核心控制器將數據上傳云服務器,同時云服務器也可以遠程發出指令,開啟/關閉相應反饋補償設備。環境質量監測控制系統工作流程如圖1所示。
本控制系統共分成2個部分:第一部分是下位機,負責環境參量的數據采集。下位機主控部分選擇STM32作為主控制芯片,移植嵌入式實時操作系統進行多任務的操作和執行[4]。下位機采集部分選擇相應傳感器來采集環境中的溫度、濕度、光照強度、CO2濃度以及TVOC濃度這5個環境數據,然后將各個參數數據進行分析、處理和上傳。下位機主控部分將采集的數值和設定好的數值進行對比,來確定開啟/關閉環境參量反饋補償電路模塊。第二部分是上位機。系統選擇云服務平臺來作為上位機服務器。云平臺上可以看到下位機各個傳感器采集到的數據,云平臺功能包括數據的存儲、顯示以及控制等。上位機和下位機的網絡連接使用無線WiFi模塊實現,使用了MQTT協議和TCP協議來保證網絡的連接和數據的發送、接收。云平臺的界面可以自行搭建,實現實時顯示當前時間下的各個環境參量以及通過曲線顯示的方式來顯示歷史數據,并結合自動反饋補償功能,方便用戶和工作人員查看和分析數據。環境質量監測控制系統如圖2所示。
2 硬件設計方案
2.1 主控電路
下位機選擇STM32F103作為核心控制芯片,下位機包含最小系統(主芯片、復位電路、時鐘電路和供電電路等)、下載電路、電源指示燈等電路。電源電路為下位機各個模塊提供合適穩定的電源,保證每個功能模塊的正常運行。晶體振蕩器電路的作用是為下位機提供基本的時鐘信號,下位機包括兩個晶體振蕩器,為RTC提供時鐘。復位電路采用低電平復位。
2.2 傳感器電路設計
下位機選擇DHT11作為溫濕度傳感器模塊。DHT11的供電電壓為 3~5.5 V,DHT11的1號引腳連接3.3 V電源,4號引腳連接地端,2號引腳為DATA引腳,用于和單片機傳輸數據。DATA引腳串聯一個5 K以上的電阻,該電阻的功能是增強信號的抗干擾能力。在DHT11上電后,有1 s的不穩定狀態,在此期間不需要發送任何指令。
下位機選擇BH1750傳感器作為光強度傳感器。該傳感器有5個引腳,其中,1號引腳為SCL,為I2C總線的時鐘引腳;2號引腳為SDA,為I2C總線的數據引腳;3號引腳和GND相連;4號引腳和3.3 V電源連接。
下位機選擇SGP30傳感器作為檢測CO2和TVOC濃度。該傳感器有4個引腳,其中1號引腳為SCL,為通信總線的時鐘引腳;2號引腳為SDA,為I2C總線的數據引腳;剩下兩個引腳分別連接到3.3 V和GND。
2.3 反饋補償電路設計
當STM32檢測到溫濕度、光照強度、CO2濃度等數值不在安全范圍內時,開啟相應的反饋補償電路模塊,控制相應的執行設備開啟關閉,使其環境參數數值回歸到設定范圍內。
反饋補償電路采用繼電器控制執行設備(弱電控制強電),因為單片機的IO口輸出的電壓一般在3~5 V,因此不能直接對大功率器件進行驅動。為了能夠實現對大功率元器件的自動控制功能,用一個放大電路來對繼電器輸出的電流進行放大。繼電器是電磁型,單片機的輸出電流不足無法驅動,因此采用灌電流方式,通過PNP管對單片機IO口的電流(基極電流)進行放大。反饋補償電路圖如圖3所示,JP3為相應的執行設備。
2.4 WiFi模塊電路設計
本系統選擇esp8266-01S作為無線WiFi模塊,用于上位機和下位機的數據通信。該模塊有8個引腳,模塊上RX引腳連接到單片機的PA2引腳,TX引腳連接到單片機的PA3引腳,復位引腳連接到單片機的PA4引腳,VCC和GND連分別連接到對應的引腳。
3 軟件設計方案
3.1 總體軟件設計
單片機啟動后直接執行main.c主函數文件,該文件定義了整個系統的工作流程。主函數首先對硬件初始化,之后創建開始任務,開始任務包含本系統中的全部任務。系統的總體軟件設計如圖4所示。
開始任務包含:WiFi連接任務是用于上位機下位機進行數據通信;傳感器數據處理任務是將傳感器采集的數據發送到MQTT數據發送緩沖區;MQTT命令緩沖處理任務是處理上位機和下位機之間的發送命令或者接收命令的功能;傳感器相關任務是將傳感器采集的數值發送到消息隊列。
3.2 傳感器任務的軟件設計
傳感器任務分為數據處理、數據發送。傳感器的數據處理任務,功能是處理待發送的傳感器數據,并發送到MQTT數據緩沖區。具體操作:每30 s發送保活數據包和傳感器數據到上位機。下位機與上位機之間使用的是MQTT協議連接。協議格式為:固定報頭+消息體的長度的高字節+消息體長度的低字節+消息體。
傳感器的數據發送任務,功能是讀取傳感器檢測到的數值,并發送到消息隊列,通過消息隊列發送到MQTT數據緩沖區。由于系統使用了3個傳感器,每個傳感器返回的數據格式不同,因此單片機取出數據的方法也不同,取出數據后通過FreeRTOS的API函數進行發送數據即可。
3.3 Wi-Fi任務的軟件設計
在Wi-Fi任務開始時,通信方式選擇TCP的“三次握手”連接方式進行連接。上位機與下位機連接的過程中,要每30 s由下位機向上位機發送一個?;畹臄祿?,讓上位機知道該設備要繼續連接并發送數據,否則下位機長時間沒有向上位機發送數據,則上位機會單方面中斷與下位機的連接。
3.4 MQTT緩沖任務的軟件設計
MQTT緩沖任務分為數據接收發送緩沖任務、命令緩沖處理任務。MQTT數據接收發送緩沖任務有2個功能:(1)處理發送緩沖區數據;(2)處理接收緩沖區數據。若接收緩沖區有服務器命令,則移至命令緩沖區。
MQTT命令緩沖處理任務,功能是處理MQTT命令緩沖區內的命令并執行,并將執行命令后的結果發送給上位機。具體操作:每30 s發送保活數據包到上位機,并執行命令和發送結果。當下位機檢測到MQTT數據發送接收緩沖區有上位機發送的指令時,則進入MQTT命令緩沖區來執行命令,執行完命令后將結果發送到MQTT數據發送接收緩沖區,等待發送給上位機。
3.5 上位機的軟件設計
系統上位機選擇ONENET云服務器。首先,在ONENET云平臺上創建一個產品,該產品選擇多協議接入,聯網方式選擇WiFi,設備接入協議選擇MQTT,自擬產品參數。其次,在新建產品內,自擬設備參數。新創建的產品和設備有各自的、唯一的設備ID和產品ID,鑒權信息當作設備的密碼,將全部信息同WiFi的名稱和密碼寫入下位機程序,在下位機通電后就可以連接到上位機。最后,在數據流模板管理進行各個數據流的相關信息的輸入。
4 系統測試
每個傳感器采集5次的數據,如表1所示。通過表1可知,在該環境下的CO2濃度值相對于其他參數數據變化更大,但CO2濃度值與人的多少、開窗頻率等有關。經過計算可知,該環境平均溫度為22 ℃,平均濕度為37.6 rh,平均光照強度為9 Lux,平均CO2濃度為444.4 ppm,平均TVOC濃度為8.2 ppd。
5 結語
隨著科學技術的不斷進步和發展,環境質量檢測和控制系統在不同環境中的作用越來越重要。系統通過測試得出:當前,測試環境內的各項數值趨于穩定,狀態良好,系統對溫度、濕度、光照強度、CO2濃度和TVOC濃度進行了檢測和調控,系統基本達到了設計要求。
參考文獻
[1]吳東東.低功耗室內空氣質量檢測系統的設計與研究[D].上海:上海師范大學,2016.
[2]楊倩倩.新時期我國室內環境檢測的發展現狀與思考[J].建材發展導向,2020(7):123.
[3]李樹軍,吳相軍.環境空氣自動監測系統日常維護與管理[J].花卉,2019(16):286.
[4]王書廷,曲娜.智能家居控制系統設計探析[J].低碳世界,2020(10):186-187,190.
Research on environmental quality inspection and control system
WangShuting, QiFang
(Jilin University of Architecture and Technology, Changchun 130114, China)
Abstract:According to the World Health Organization, 100 000 people worldwide die of asthma every year from pollution caused by home renovations. In this paper, an environmental quality monitoring and control system is designed, in which STM32 is used as the main control chip and sensors are used to collect the environmental parameters such as temperature and humidity, light intensity, CO2 and TVOC concentration, and compared with the set numerical threshold, to decide whether to open the corresponding feedback compensation module to ensure that the parameters in the environment data in a relatively stable state, and then through the wireless module to send data to the host computer, at the same time, the host computer can send control commands to the slave computer to realize the closed-loop control of the whole environment. After testing: the current environment of the values tend to be stable, in good condition, the temperature, humidity, light intensity, CO2 concentration and TVOC concentration detection and control, the basic design requirements.
Key words: STM32; environmental monitoring; closed-loop control