


摘? 要: 為了對室內溫度、濕度、毒氣濃度、PM2.5等環境參數實時監測與調控,設計一種基于STM32與Zigbee的室內環境調控系統。利用Zigbee自組網技術實現對室內溫度、濕度、毒氣濃度及PM2.5等信息采集,并通過協調器上傳至STM32網關,經處理后在LCD屏上顯示,同時可提供web站點用戶通過瀏覽器查看,另外,可根據實際情況下對終端設備下發操作的指令。從而為用戶對室內環境參數監測與調控提供了更好的解決方案。
關鍵詞: 室內環境調控;系統;信息上傳;STM32網關
中圖分類號: TP273+.5 ???文獻標識碼: A??? DOI:10.3969/j.issn.1003-6970.2020.07.042
本文著錄格式:余正軍. 基于STM32與ZigBee的室內環境調控系統設計[J]. 軟件,2020,41(07):206-209
Design of Indoor Environment Regulation System Based on STM32 and ZigBee
YU Zheng-jun
(Shantou Polytechnic, Shantou 515078)
【Abstract】: An indoor environment regulation system based on STM32 and Zigbee is designed to realize real-time monitoring and regulation of indoor temperature, humidity, toxic gas concentration, PM2.5 and other environmental parameters. Use Zigbee self-organizing network technology to collect indoor temperature, humidity, toxic gas concentration, PM2.5 and other information, which is uploaded to STM32 gateway through the coordinator and displayed on the LCD screen after processing. At the same time, it can provide web site users to view through the browser. 7In addition, it can issue operation instructions to the terminal equipment according to the actual situation.so as to provide a better way for users to monitor and regulation the indoor environmental parameters.
【Key words】: Indoor environment regulation; System; Information upload; STM32 gateway
0? 引言
隨著全面小康社會的實現,室內環境因素嚴重威脅人類的健康,然而藍牙、Zigbee、紅外線、WiFi等無線通信技術在環境監測系統中得到了廣泛應用。例如基于Zigbee技術和GPRS通信技術實現對室內環境參數的遠程傳輸與監測[1],基于Gainspan平臺利用wifi技術實現是對室內環境參數監測[2], 基于CC2530與CC3200的室內環境監測[3]。但上述系統只利用相關的無線技術將室內環境信息上傳至服務器存儲,并沒有對數據邊緣處理,也沒有對室內環境進行實時調控。
針對這一缺陷,結合他們的研究經驗,本文提出一種基于STM32與ZigBee的室內環境調控系統的設計,實現對室內環境信息實時監測與調控,并能將室內環境信息在stm32網關的LCD屏動態顯示,同時也能讓用戶在web站點上通過瀏覽器實時查看。
1 ?系統總體方案
系統的zigbee協調器和終端節點模組的MCU采用TI公司生產的CC2530F256。此芯片使用8051內核,建立在適應2.4 GHz IEEE802.15.4標準協議上,內置RF收發器,8 KB的SRAM,256 KB閃存快、能對18個中斷源管理的中斷控制器,21個通用的I/O引腳,5通道DAM,32kHz睡眠計數器等豐富的外設接口[4]。
系統的STM32網關除了對系統中信息實時處理并在觸摸屏上顯示外,還作為一個小型的web服務器使用,以達到數據邊緣處理的目的,從而減少數據的上傳和下發的網絡延時。網關主控芯片為意法半導體公司生產的STM32F767XX系列控制器——STM32F767IG76,該芯片集成ARM Cottex-M7內核,工作頻率高達216MHz,6級流水線技術,1MB閃存容量,512 kB SRAM內存容量,140個I/O,12個16位計時器數量,24個12位A/D轉換器數量,2個12位D/A轉換器數量,2個32位計時器數量,擁有CAN x 3,DCMI,I2C x4,I2S x3,QSPI,SDIO,SPI x6,UART x4,USART x4,USB OTG,USB high-speed等豐富的接口[5]。
基于stm32和zigbee的室內環境管理系統的總體結構如圖1所示。
該系統由zigbee終端節點(帶有傳感器節點和繼電器節點)、zigbee協調器及STM32網關組成。Zigbee終端節點利用相應傳感器對室內溫度、濕度、毒氣濃度、PM2.5等環境信息進行采集[6]并發送至zigbee協調器。繼電器作為控制開關,根據zigbee協調器轉發的指令打開或關閉相應的外部設備。Zigbee協調器負責建立星型網絡傳輸方式,將接受到的各終端節點上傳的數據,并將數據以定義好的協議通過串口將數據發送各stm32網關,同時將網關下發的指令數據送至對應的繼電器節點。STM32網關將接收到數據經過處理后顯示在觸摸屏上,同時可提供web站點用戶查看;另外,stm32網關可根據實際情況向終端節點下發操作指令。
2 ?終端硬件選型
終端硬件是獲取室內環境數據的感知層,其性能直接影響整個系統的性能。本系統選擇帶有傳感器或繼電器的zigbee模組。傳感器在本系統中主要是是對室內環境新系統的采集,故選用了DH11溫濕度傳感器、MQ-2煙霧傳感器、PM2.5傳感器;繼電器在本系統中作為調節室內環境設備的開關,故選用了SRD-5VDC-SL-C。
2.1 ?DH11溫濕度傳感器
DH11具有易驅動,低功耗,高可靠,單向串行傳輸方式。每次傳送40bit數據,即8bit濕度整數部分+8bit濕度小數部分+8bit溫度整數部分+8bit溫度小數部分+8bit校驗和[6]。
2.2 ?MQ-2毒氣傳感器
MQ-2毒氣傳感器利用二氧化錫(SnO2)在清潔空氣中電導率低的特性[7]。當該傳感器所處環境中存在有毒氣體時,它的導電性能隨毒氣濃度的增加而提高;并具有長壽命、高靈敏性、易驅動等特點。本系統通過其輸出的0~5 V電壓值判定室內有毒氣體濃度。
2.3 ?PM2.5傳感器
PM2.5傳感器是利用激光束入射到被測環境中,通過探測器接收散射光,根據產生的光電流大小來判定室內粉塵濃度。FM-PN具有分辨率高、誤差小、響應快,易驅動等特點。本系統通過其輸出電流4~20 mA電流值判定室內PM2.5的值。
2.4 ?繼電器
繼電器在本系統中作為調控設備的開關使用,當需要調控室內環境時,將繼電器線圈兩端加上規定電壓,否則斷開線圈兩端電壓。據低成本、易實現的原則本系統選用SRD-5VDC-SL-C作為環境信息調控設備的開關。
3 ?系統軟件
系統軟件分為Zigbee自組網的軟件和STM32網關軟件兩部分。
3.1 ?Zigbee自組網的軟件
Zigbee自組網中的節點只含終端節點和協調器,終端節點主要功能是對室內環境進行監測與調控,本系統的終端節點為帶有傳感器或繼電器的Zigbee模組。其軟件是對模組中的時鐘、定時器、RF射頻、傳感器、繼電器進行驅動;并查找四圍是否存在由zigbee協調器建立的網絡,若存在則請求入網并獲取zigbee協調器分配的PAN ID,同時向zigbee協調器發送綁定請求進行綁定,綁定成功后周期性收發數據。終端節點程序流程圖如圖2所示。協調器是zigbee自組網的組網節點。其軟件包括時鐘、定時器、RF射頻、UART串口等模塊驅動、zigbee協議棧初始化、掃描并選擇合適的信道,設定網絡標識為自己分配一個PAN ID,對終端節點的入網以及數據收發等功能。協調器程序流程圖如圖3所示。
3.2 ?STM32網關軟件
STM32網關是整個系統的的大腦,其軟件分為3個部分即STM32相關驅動軟件、人機交互界面軟件和以太網相關軟件。
由于stm32網關要實現與zigbee協調器的通信、人機交互功能和webServer功能,即要實現串口、LCD、Touch及為系統擴展的SRAM、和Flash、以太網外設及SD卡的驅動。串口驅動主要完成STM32與Zigbee之間通信協議的定義、STM32獲取zigbee串口數據即數據解析等功能;LCD和外部SRAM掛接在STM32的FSMC接口,Touch和外部Flash掛接在STM32的SPI接口,以太網外設通過STM32的RMII接口連接,SD卡通過STM32的SDIO接口連接,故要要對FSMC、SPI、RMII和SDIO接口中寄存器進行配置,LCD硬件初始化、畫點及填充等功能。系統將stm32作為web服務器使用,需用LWIP驅動網卡實現HttpServer、通過FatFS驅動SD卡實現web頁面文件的存儲。其程序流程圖如4所示。
在系統移植Stem Win和中文字庫,實現人機交互控制界面的設計,交互界面主要實現GUI顯示任務(環境信息的顯示及調控設備的打開與關閉)和Touch檢測任務,其效果如圖5所示。
利用HTML5+CSS+js技術完成web頁面的設計,頁面主要分為兩個部分一部分用于顯示室內環境信息,另一部分模擬系統調控設備的運行狀態。其效果如圖6所示。
4 ?驗證測試
驗證測試的主要是驗證整個系統的穩定性和實時響應的靈敏性。測試要求:一測試zigbee網絡的終端設備能否準確的將室內環境信息上報給zigbee協調器,協調器通過zibee串口上傳至stm32網關,最后經過stm3處理后再在網關的LCD屏上顯示同時根據用戶設置的參數,對終端相關設備作出實時響應;二測試stm32作為web服務器,系統能否及時響應web客戶端用戶通過瀏覽器查看室內環境系統、設備運行狀態及用戶向系統下發的指令操作。
測試結果:通過繼電器工作狀態模擬室內調控設備工作狀態,即繼電器開代表設備正常工作,繼電器關代表設備停止工作。通過多次試驗當室內溫度采集到的溫度、濕度、毒氣濃度及PM2.5的值其中有一項值大于用戶所設置的值時繼電器打開的準確率高達99.3%;瀏覽器與LCD屏上顯示的環境信息幾乎同步。系統達到了預定設計的目標。
5 ?結束語
本文設計一種基于stm32與zigbee的室內環境調控系統,利用zigbee自組網技術實現對室內溫度、濕度、毒氣濃度及PM2.5等信息采集,并通過協調器上傳至stm32網關,經處理后在LCD屏上顯示,同時可提供web站點用戶通過瀏覽器查看,另外,可根據實際情況下對終端設備下發操作的指令。該系統實現了對室內環境參數信息的監測與調控。下一步工作是對室內參數實時上傳至云端存儲,利用云計算和人工智能技術對上傳數據進行訓練,進一步象網關推送更為合理的調控模型。
參考文獻
王驥, 林杰華, 謝仕義. 基于無線傳感網的環境監測系統[J]. 傳感技術學報, 2015, 28(11): 1732-1740.
王麗偉, 鄔迎. 基于wifi技術的家居環境監測系統的設計與研究[J]電腦知識與技術, 2016, 12(13): 49-50.
蔡俊豪, 曹廣忠, 彭業萍, 周受欽. 基于CC2530與CC3200的室內環境監測系統設計[J]. 2019, 42(10): 71-74, 78.
Texas instruments. CC2530[2011-02-01]. http://www.ti. com/ lit/ds/symlink/cc2530. pdf
STMicroelectronics.https://www.st.com/content/st_com/en/search. html#q=stm32f767-t=tools-page=1
楊淳清. 基于嵌入式的zigbee無線傳感網智能家居系統硬件設計[J]. 電子技術與軟件工程. 2019, 3: 164.
晏勇. 物聯網智能家居開放型實驗平臺開發與設計[J]. 中國優秀碩士學位論文全文數據庫, 2014.
趙勇. 基于arm和zigbee的智能家居遠程控制監控系統設計[J], 測控技術, 2012. 31(11): 52-54, 59.
梁鐵, 李凱, 王付強, 郝真鳴. 基于STM32和LwIP協議棧的web網頁控制系統的設計與實現[J]. 測控技術. 2015, 32(9): 134-137.
RTOS: Design How is Your Application Affected. Ed Klein. 1998.
耿樹芳, 王寧, 張雪瑩, 展先彪. 一種基于STM32的智能家居無線網關設計[J]. 廊坊師范學院學報(自然科學版). 2018, 31(12): 26-30.
賈偉. 物聯網的數據采集與信息傳輸技術研究[J]. 現代電子技術, 2016, 39(5): 33-37.
汪千松. 一種基于Free RTOS實時系統改進的時間片延遲調度算法的設計[J]. 科技世界, 2019, 28(15): 43-44.
Fei Guan, Long Peng, Luc Perneel, Martin Timmerman. Open Source FreeRTOS as a Case Study in Real-time Operating System Evolution. The Journal of Systems & Software, 2016.
孫川淳. 基于LwIP的嵌入式網絡總線與web server的調度實現. 電子設計工程, 2019, 35(03): 159-163, 168.