摘? 要: 為了對室內(nèi)溫度、濕度、毒氣濃度、PM2.5等環(huán)境參數(shù)實時監(jiān)測與調(diào)控,設(shè)計一種基于STM32與Zigbee的室內(nèi)環(huán)境調(diào)控系統(tǒng)。利用Zigbee自組網(wǎng)技術(shù)實現(xiàn)對室內(nèi)溫度、濕度、毒氣濃度及PM2.5等信息采集,并通過協(xié)調(diào)器上傳至STM32網(wǎng)關(guān),經(jīng)處理后在LCD屏上顯示,同時可提供web站點用戶通過瀏覽器查看,另外,可根據(jù)實際情況下對終端設(shè)備下發(fā)操作的指令。從而為用戶對室內(nèi)環(huán)境參數(shù)監(jiān)測與調(diào)控提供了更好的解決方案。
關(guān)鍵詞: 室內(nèi)環(huán)境調(diào)控;系統(tǒng);信息上傳;STM32網(wǎng)關(guān)
中圖分類號: TP273+.5 ???文獻標識碼: A??? DOI:10.3969/j.issn.1003-6970.2020.07.042
本文著錄格式:余正軍. 基于STM32與ZigBee的室內(nèi)環(huán)境調(diào)控系統(tǒng)設(shè)計[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? 引言
隨著全面小康社會的實現(xiàn),室內(nèi)環(huán)境因素嚴重威脅人類的健康,然而藍牙、Zigbee、紅外線、WiFi等無線通信技術(shù)在環(huán)境監(jiān)測系統(tǒng)中得到了廣泛應(yīng)用。例如基于Zigbee技術(shù)和GPRS通信技術(shù)實現(xiàn)對室內(nèi)環(huán)境參數(shù)的遠程傳輸與監(jiān)測[1],基于Gainspan平臺利用wifi技術(shù)實現(xiàn)是對室內(nèi)環(huán)境參數(shù)監(jiān)測[2], 基于CC2530與CC3200的室內(nèi)環(huán)境監(jiān)測[3]。但上述系統(tǒng)只利用相關(guān)的無線技術(shù)將室內(nèi)環(huán)境信息上傳至服務(wù)器存儲,并沒有對數(shù)據(jù)邊緣處理,也沒有對室內(nèi)環(huán)境進行實時調(diào)控。
針對這一缺陷,結(jié)合他們的研究經(jīng)驗,本文提出一種基于STM32與ZigBee的室內(nèi)環(huán)境調(diào)控系統(tǒng)的設(shè)計,實現(xiàn)對室內(nèi)環(huán)境信息實時監(jiān)測與調(diào)控,并能將室內(nèi)環(huán)境信息在stm32網(wǎng)關(guān)的LCD屏動態(tài)顯示,同時也能讓用戶在web站點上通過瀏覽器實時查看。
1 ?系統(tǒng)總體方案
系統(tǒng)的zigbee協(xié)調(diào)器和終端節(jié)點模組的MCU采用TI公司生產(chǎn)的CC2530F256。此芯片使用8051內(nèi)核,建立在適應(yīng)2.4 GHz IEEE802.15.4標準協(xié)議上,內(nèi)置RF收發(fā)器,8 KB的SRAM,256 KB閃存快、能對18個中斷源管理的中斷控制器,21個通用的I/O引腳,5通道DAM,32kHz睡眠計數(shù)器等豐富的外設(shè)接口[4]。
系統(tǒng)的STM32網(wǎng)關(guān)除了對系統(tǒng)中信息實時處理并在觸摸屏上顯示外,還作為一個小型的web服務(wù)器使用,以達到數(shù)據(jù)邊緣處理的目的,從而減少數(shù)據(jù)的上傳和下發(fā)的網(wǎng)絡(luò)延時。網(wǎng)關(guān)主控芯片為意法半導(dǎo)體公司生產(chǎn)的STM32F767XX系列控制器——STM32F767IG76,該芯片集成ARM Cottex-M7內(nèi)核,工作頻率高達216MHz,6級流水線技術(shù),1MB閃存容量,512 kB SRAM內(nèi)存容量,140個I/O,12個16位計時器數(shù)量,24個12位A/D轉(zhuǎn)換器數(shù)量,2個12位D/A轉(zhuǎn)換器數(shù)量,2個32位計時器數(shù)量,擁有CAN x 3,DCMI,I2C x4,I2S x3,QSPI,SDIO,SPI x6,UART x4,USART x4,USB OTG,USB high-speed等豐富的接口[5]。
基于stm32和zigbee的室內(nèi)環(huán)境管理系統(tǒng)的總體結(jié)構(gòu)如圖1所示。
該系統(tǒng)由zigbee終端節(jié)點(帶有傳感器節(jié)點和繼電器節(jié)點)、zigbee協(xié)調(diào)器及STM32網(wǎng)關(guān)組成。Zigbee終端節(jié)點利用相應(yīng)傳感器對室內(nèi)溫度、濕度、毒氣濃度、PM2.5等環(huán)境信息進行采集[6]并發(fā)送至zigbee協(xié)調(diào)器。繼電器作為控制開關(guān),根據(jù)zigbee協(xié)調(diào)器轉(zhuǎn)發(fā)的指令打開或關(guān)閉相應(yīng)的外部設(shè)備。Zigbee協(xié)調(diào)器負責建立星型網(wǎng)絡(luò)傳輸方式,將接受到的各終端節(jié)點上傳的數(shù)據(jù),并將數(shù)據(jù)以定義好的協(xié)議通過串口將數(shù)據(jù)發(fā)送各stm32網(wǎng)關(guān),同時將網(wǎng)關(guān)下發(fā)的指令數(shù)據(jù)送至對應(yīng)的繼電器節(jié)點。STM32網(wǎng)關(guān)將接收到數(shù)據(jù)經(jīng)過處理后顯示在觸摸屏上,同時可提供web站點用戶查看;另外,stm32網(wǎng)關(guān)可根據(jù)實際情況向終端節(jié)點下發(fā)操作指令。
2 ?終端硬件選型
終端硬件是獲取室內(nèi)環(huán)境數(shù)據(jù)的感知層,其性能直接影響整個系統(tǒng)的性能。本系統(tǒng)選擇帶有傳感器或繼電器的zigbee模組。傳感器在本系統(tǒng)中主要是是對室內(nèi)環(huán)境新系統(tǒng)的采集,故選用了DH11溫濕度傳感器、MQ-2煙霧傳感器、PM2.5傳感器;繼電器在本系統(tǒng)中作為調(diào)節(jié)室內(nèi)環(huán)境設(shè)備的開關(guān),故選用了SRD-5VDC-SL-C。
2.1 ?DH11溫濕度傳感器
DH11具有易驅(qū)動,低功耗,高可靠,單向串行傳輸方式。每次傳送40bit數(shù)據(jù),即8bit濕度整數(shù)部分+8bit濕度小數(shù)部分+8bit溫度整數(shù)部分+8bit溫度小數(shù)部分+8bit校驗和[6]。
2.2 ?MQ-2毒氣傳感器
MQ-2毒氣傳感器利用二氧化錫(SnO2)在清潔空氣中電導(dǎo)率低的特性[7]。當該傳感器所處環(huán)境中存在有毒氣體時,它的導(dǎo)電性能隨毒氣濃度的增加而提高;并具有長壽命、高靈敏性、易驅(qū)動等特點。本系統(tǒng)通過其輸出的0~5 V電壓值判定室內(nèi)有毒氣體濃度。
2.3 ?PM2.5傳感器
PM2.5傳感器是利用激光束入射到被測環(huán)境中,通過探測器接收散射光,根據(jù)產(chǎn)生的光電流大小來判定室內(nèi)粉塵濃度。FM-PN具有分辨率高、誤差小、響應(yīng)快,易驅(qū)動等特點。本系統(tǒng)通過其輸出電流4~20 mA電流值判定室內(nèi)PM2.5的值。
2.4 ?繼電器
繼電器在本系統(tǒng)中作為調(diào)控設(shè)備的開關(guān)使用,當需要調(diào)控室內(nèi)環(huán)境時,將繼電器線圈兩端加上規(guī)定電壓,否則斷開線圈兩端電壓。據(jù)低成本、易實現(xiàn)的原則本系統(tǒng)選用SRD-5VDC-SL-C作為環(huán)境信息調(diào)控設(shè)備的開關(guān)。
3 ?系統(tǒng)軟件
系統(tǒng)軟件分為Zigbee自組網(wǎng)的軟件和STM32網(wǎng)關(guān)軟件兩部分。
3.1 ?Zigbee自組網(wǎng)的軟件
Zigbee自組網(wǎng)中的節(jié)點只含終端節(jié)點和協(xié)調(diào)器,終端節(jié)點主要功能是對室內(nèi)環(huán)境進行監(jiān)測與調(diào)控,本系統(tǒng)的終端節(jié)點為帶有傳感器或繼電器的Zigbee模組。其軟件是對模組中的時鐘、定時器、RF射頻、傳感器、繼電器進行驅(qū)動;并查找四圍是否存在由zigbee協(xié)調(diào)器建立的網(wǎng)絡(luò),若存在則請求入網(wǎng)并獲取zigbee協(xié)調(diào)器分配的PAN ID,同時向zigbee協(xié)調(diào)器發(fā)送綁定請求進行綁定,綁定成功后周期性收發(fā)數(shù)據(jù)。終端節(jié)點程序流程圖如圖2所示。協(xié)調(diào)器是zigbee自組網(wǎng)的組網(wǎng)節(jié)點。其軟件包括時鐘、定時器、RF射頻、UART串口等模塊驅(qū)動、zigbee協(xié)議棧初始化、掃描并選擇合適的信道,設(shè)定網(wǎng)絡(luò)標識為自己分配一個PAN ID,對終端節(jié)點的入網(wǎng)以及數(shù)據(jù)收發(fā)等功能。協(xié)調(diào)器程序流程圖如圖3所示。
3.2 ?STM32網(wǎng)關(guān)軟件
STM32網(wǎng)關(guān)是整個系統(tǒng)的的大腦,其軟件分為3個部分即STM32相關(guān)驅(qū)動軟件、人機交互界面軟件和以太網(wǎng)相關(guān)軟件。
由于stm32網(wǎng)關(guān)要實現(xiàn)與zigbee協(xié)調(diào)器的通信、人機交互功能和webServer功能,即要實現(xiàn)串口、LCD、Touch及為系統(tǒng)擴展的SRAM、和Flash、以太網(wǎng)外設(shè)及SD卡的驅(qū)動。串口驅(qū)動主要完成STM32與Zigbee之間通信協(xié)議的定義、STM32獲取zigbee串口數(shù)據(jù)即數(shù)據(jù)解析等功能;LCD和外部SRAM掛接在STM32的FSMC接口,Touch和外部Flash掛接在STM32的SPI接口,以太網(wǎng)外設(shè)通過STM32的RMII接口連接,SD卡通過STM32的SDIO接口連接,故要要對FSMC、SPI、RMII和SDIO接口中寄存器進行配置,LCD硬件初始化、畫點及填充等功能。系統(tǒng)將stm32作為web服務(wù)器使用,需用LWIP驅(qū)動網(wǎng)卡實現(xiàn)HttpServer、通過FatFS驅(qū)動SD卡實現(xiàn)web頁面文件的存儲。其程序流程圖如4所示。
在系統(tǒng)移植Stem Win和中文字庫,實現(xiàn)人機交互控制界面的設(shè)計,交互界面主要實現(xiàn)GUI顯示任務(wù)(環(huán)境信息的顯示及調(diào)控設(shè)備的打開與關(guān)閉)和Touch檢測任務(wù),其效果如圖5所示。
利用HTML5+CSS+js技術(shù)完成web頁面的設(shè)計,頁面主要分為兩個部分一部分用于顯示室內(nèi)環(huán)境信息,另一部分模擬系統(tǒng)調(diào)控設(shè)備的運行狀態(tài)。其效果如圖6所示。
4 ?驗證測試
驗證測試的主要是驗證整個系統(tǒng)的穩(wěn)定性和實時響應(yīng)的靈敏性。測試要求:一測試zigbee網(wǎng)絡(luò)的終端設(shè)備能否準確的將室內(nèi)環(huán)境信息上報給zigbee協(xié)調(diào)器,協(xié)調(diào)器通過zibee串口上傳至stm32網(wǎng)關(guān),最后經(jīng)過stm3處理后再在網(wǎng)關(guān)的LCD屏上顯示同時根據(jù)用戶設(shè)置的參數(shù),對終端相關(guān)設(shè)備作出實時響應(yīng);二測試stm32作為web服務(wù)器,系統(tǒng)能否及時響應(yīng)web客戶端用戶通過瀏覽器查看室內(nèi)環(huán)境系統(tǒng)、設(shè)備運行狀態(tài)及用戶向系統(tǒng)下發(fā)的指令操作。
測試結(jié)果:通過繼電器工作狀態(tài)模擬室內(nèi)調(diào)控設(shè)備工作狀態(tài),即繼電器開代表設(shè)備正常工作,繼電器關(guān)代表設(shè)備停止工作。通過多次試驗當室內(nèi)溫度采集到的溫度、濕度、毒氣濃度及PM2.5的值其中有一項值大于用戶所設(shè)置的值時繼電器打開的準確率高達99.3%;瀏覽器與LCD屏上顯示的環(huán)境信息幾乎同步。系統(tǒng)達到了預(yù)定設(shè)計的目標。
5 ?結(jié)束語
本文設(shè)計一種基于stm32與zigbee的室內(nèi)環(huán)境調(diào)控系統(tǒng),利用zigbee自組網(wǎng)技術(shù)實現(xiàn)對室內(nèi)溫度、濕度、毒氣濃度及PM2.5等信息采集,并通過協(xié)調(diào)器上傳至stm32網(wǎng)關(guān),經(jīng)處理后在LCD屏上顯示,同時可提供web站點用戶通過瀏覽器查看,另外,可根據(jù)實際情況下對終端設(shè)備下發(fā)操作的指令。該系統(tǒng)實現(xiàn)了對室內(nèi)環(huán)境參數(shù)信息的監(jiān)測與調(diào)控。下一步工作是對室內(nèi)參數(shù)實時上傳至云端存儲,利用云計算和人工智能技術(shù)對上傳數(shù)據(jù)進行訓(xùn)練,進一步象網(wǎng)關(guān)推送更為合理的調(diào)控模型。
參考文獻
王驥, 林杰華, 謝仕義. 基于無線傳感網(wǎng)的環(huán)境監(jiān)測系統(tǒng)[J]. 傳感技術(shù)學(xué)報, 2015, 28(11): 1732-1740.
王麗偉, 鄔迎. 基于wifi技術(shù)的家居環(huán)境監(jiān)測系統(tǒng)的設(shè)計與研究[J]電腦知識與技術(shù), 2016, 12(13): 49-50.
蔡俊豪, 曹廣忠, 彭業(yè)萍, 周受欽. 基于CC2530與CC3200的室內(nèi)環(huán)境監(jiān)測系統(tǒng)設(shè)計[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無線傳感網(wǎng)智能家居系統(tǒng)硬件設(shè)計[J]. 電子技術(shù)與軟件工程. 2019, 3: 164.
晏勇. 物聯(lián)網(wǎng)智能家居開放型實驗平臺開發(fā)與設(shè)計[J]. 中國優(yōu)秀碩士學(xué)位論文全文數(shù)據(jù)庫, 2014.
趙勇. 基于arm和zigbee的智能家居遠程控制監(jiān)控系統(tǒng)設(shè)計[J], 測控技術(shù), 2012. 31(11): 52-54, 59.
梁鐵, 李凱, 王付強, 郝真鳴. 基于STM32和LwIP協(xié)議棧的web網(wǎng)頁控制系統(tǒng)的設(shè)計與實現(xiàn)[J]. 測控技術(shù). 2015, 32(9): 134-137.
RTOS: Design How is Your Application Affected. Ed Klein. 1998.
耿樹芳, 王寧, 張雪瑩, 展先彪. 一種基于STM32的智能家居無線網(wǎng)關(guān)設(shè)計[J]. 廊坊師范學(xué)院學(xué)報(自然科學(xué)版). 2018, 31(12): 26-30.
賈偉. 物聯(lián)網(wǎng)的數(shù)據(jù)采集與信息傳輸技術(shù)研究[J]. 現(xiàn)代電子技術(shù), 2016, 39(5): 33-37.
汪千松. 一種基于Free RTOS實時系統(tǒng)改進的時間片延遲調(diào)度算法的設(shè)計[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的嵌入式網(wǎng)絡(luò)總線與web server的調(diào)度實現(xiàn). 電子設(shè)計工程, 2019, 35(03): 159-163, 168.