魏鑫+韋海成



摘 要: 針對傳統的室內環境監測系統傳輸距離短、采集到的數據形式單一且需要進行人工處理的缺陷,設計并實現了一個基于ZigBee的遠程環境監測人機交互系統。系統采用模塊化的設計方案,整個系統由數據采集終端、ZigBee無線傳感網和LabVIEW人機交互界面三部分組成。數據采集終端以STM32微控制器為主控芯片,連接各傳感器采集環境數據。數據采集終端通過ZigBee無線傳感網和USB轉串口模塊與上位機通信,上位機通過LabVIEW人機交互界面將數據采集終端測得的環境數據以儀表和折線圖的形式顯示出來。實驗表明,系統穩定性和可擴展性較強、傳輸距離較遠,且無需人工處理即可將每天測得的環境數據以折線圖形式直觀展現出來,具有一定的科研意義和實用價值。
關鍵詞: ZigBee無線傳感網; LabVIEW人機交互界面; 環境監測; STM32
中圖分類號: TN915?34; TN98; X859 文獻標識碼: A 文章編號: 1004?373X(2017)18?0156?05
Design of ZigBee?based human?computer interactive system for remote
environment monitoring
WEI Xin, WEI Haicheng
(School of Electrical and Information Engineering, Beifang Univesity of Nationality, Yinchuan 750021, China)
Abstract: The traditional indoor environment monitoring system has some defects that its transmission distance is short, and the collected data is in a single form and needs to be processed manually. In order to resolve the defects, a ZigBee?based human?computer interactive system for remote environmental monitoring was designed and implemented. The modular design scheme is used in the system. The entire system consists of three parts: data acquisition terminal, ZigBee wireless sensor network and LabVIEW human?computer interactive interface. The data acquisition terminal takes STM32 microcontroller as the main chip to connect sensors and collect environmental data, and communicates with the host computer through ZigBee wireless sensor network module and serial module connecting with USB. The host computer displays the environment data acquired by the data collection terminal in the forms of instrument and broken line graph via LabVIEW human?computer interactive interface. The experiment results show that the system has high stability, perfect scalability and long transmission distance, and can display the measured?daily environmental data without manual processing in the form of line chart, which has certain scientific significance and practical value.
Keywords: ZigBee wireless sensor network; LabVIEW human?computer interactive interface; environmental monitoring; STM32
隨著我國城市建設的不斷發展,各種大型公共場所(電影院、大會堂、舞廳等)也越來越多。伴隨著人們健康意識的提高,在各種大型公共場所參加活動的同時,人們越來越關心自己所處場所的環境質量是否合格[1]。目前市面上流通的室內環境監測系統大都利用WiFi進行數據傳輸[2],傳輸距離較短(0~50 m)且大都只是簡單地將某時刻的環境數據以數字形式顯示出來[3]。也有少量室內環境檢測系統采用ZigBee無線傳感網進行數據傳輸,但其上位機只是簡單顯示某時刻的環境數據[4],不能顯示環境數據的變化情況。后續還需要對數據進行人工處理與分析,造成了勞動力資源和時間的浪費。
針對這一現狀,設計并實現了一個基于ZigBee的遠程環境監測人機交互系統。
1 系統總體設計
系統采用模塊化的設計方案,整個系統由數據采集終端、ZigBee無線傳感網和LabVIEW人機交互界面三部分組成。數據采集終端以STM32微控制器為主控芯片,連接各傳感器采集環境數據,并在OLED顯示屏上實時顯示。數據采集終端通過ZigBee無線傳感網和USB轉串口模塊與上位機通信,上位機通過LabVIEW人機交互界面將數據采集終端測得的環境數據儀表以折線圖的形式顯示出來。系統的總體結構框圖如圖1所示。endprint
圖1 系統的總體結構框圖
2 系統的硬件設計
系統的硬件設計主要包括數據采集終端、ZigBee模塊和USB轉串口模塊的硬件設計。
2.1 數據采集終端的硬件設計
數據采集終端硬件由主控模塊、各傳感器模塊和顯示模塊組成。數據采集終端的硬件框圖如圖2所示。
圖2 數據采集終端硬件框圖
2.1.1 主控模塊
選用意法半導體公司的基于ARM Cortex?M3內核的STM32微控制器STM32F103RBT6為數據采集終端的主控芯片。該芯片為LQFP64封裝,內部有128 KB FLASH和20 KB SRAM,最高支持主頻72 MHz,擁有2個SPI接口、2個USART接口、1個USB接口、2個I2C接口和7個定時器[5]。STM32微控制器與電源電路、晶振電路、復位電路、A/D轉換電路、調試接口、串行通信接口等電路構成STM32最小系統。STM32最小系統即為數據采集終端的主控模塊,主要完成與數據采集終端的各傳感器模塊和顯示模塊的通信以及對各功能模塊的控制。主控模塊首先根據DHT11數字溫濕度傳感器的單總線傳輸機制完成與溫濕度傳感器的數據通信,接著按照I2C總線的通信機制完成與BH1750FVI數字光照度傳感器的數據通信,然后對于MQ?135有害氣體傳感器檢測到的環境中有害氣體濃度的值進行A/D量化處理,再對于灰塵傳感器檢測到的灰塵濃度進行A/D量化處理,最后將采集到的環境數據在OLED顯示屏上實時顯示。
2.1.2 各傳感器模塊
(1) 溫濕度傳感器模塊。對環境中的溫度和濕度的檢測選用DHT11數字溫濕度傳感器模塊。其精度為溫度±2 ℃,濕度±5%RH,量程為濕度20%RH~90%RH,溫度0~50 ℃。DHT11溫濕度傳感器模塊采用單線制串行接口,具有響應快速、抗干擾能力強、性價比高等優點[6]。
(2) 光照度傳感器模塊。對環境中的光照強度的檢測選用BH1750FVI光照度傳感器模塊。該傳感器是一種采用I2C總線接口的傳感器,可以根據收集的光線強度數據來進行光照度的檢測,支持較大范圍(1~65 535 lx)的光照強度變化[7],系統將光照傳感器設置為H分辨率模式,分辨率為1 lx。
(3) 有害氣體傳感器模塊。對環境中有害氣體的檢測選用MQ?135有害氣體傳感器模塊。該傳感器對氨氣、硫化物、苯系蒸汽的靈敏度高,對煙霧和其他有害氣體的監測也較理想,是一款適合多種應用的低成本傳感器[8]。當傳感器所處環境中存在污染氣體時,傳感器的電導率隨空氣中污染氣體濃度的增加而增大。
(4) 灰塵傳感器模塊。對環境中的灰塵濃度的檢測采用夏普公司的GP2Y1010AU0F灰塵傳感器模塊。該傳感器內部的紅外二極管,可以輸出一個跟灰塵濃度成線性關系的電壓值,通過該電壓值即可計算出空氣中直徑大于 0.8 μm 灰塵顆粒的含量[9]。
2.1.3 顯示模塊
選用采用7針的 SPI接口、分辨率為 128×64的 0.96 寸 OLED 顯示屏作為數據采集終端的顯示模塊。OLED顯示屏具有自發光、分辨率高、厚度薄、視角廣、反應速度快等優異特性。
2.2 ZigBee模塊的硬件設計
系統的ZigBee模塊包括ZigBee終端和ZigBee協調器,兩者的硬件設計相同,均選用TI公司的CC2530核心板。CC2530核心板主要包括CC2530單片機、天線、晶振及I/O擴展接口,CC2530核心板的主控芯片是CC2530單片機。CC2530單片機是一款完全兼容8051內核,同時支持IEEE 802.15.4協議的無線射頻單片機[10]。天線部分采用巴倫匹配和外置高增益SMA天線,接收靈敏度高、發送距離遠、空曠環境最大傳輸距離可達1 000 m。ZigBee終端與數據采集終端通過串口進行通信,其通信示意圖如圖3所示。
2.3 USB轉串口模塊的硬件設計
使用USB轉串口模塊將傳統的串口設備變成了即插即用的USB設備,方便只有USB接口的計算機與串口設備進行通信,提高了系統的通用性。模塊采用英國進口的原裝USB轉串口芯片FT232RL,集成度高,性能也較國產芯片更優良。USB轉串口模塊與ZigBee協調器以及上位機之間的通信示意圖如圖4所示。
3 系統的軟件設計
系統的軟件設計包括三部分:數據采集終端的軟件設計、ZigBee無線傳感網的軟件設計、LabVIEW人機交互界面的軟件設計。
3.1 數據采集終端的軟件設計
數據采集終端以STM32F103RBT6為主控芯片,連接各傳感器采集環境數據,利用STM32芯片的內部定時器,每隔2 s采集一次環境數據,并將采集到的數據在OLED顯示屏上實時顯示。在接收到上位機通過ZigBee無線傳感網發來的上傳采集數據指令后,開啟串口中斷,將環境數據以字符串形式,且按照溫度、濕度、光照強度、有害氣體濃度、灰塵濃度的順序,通過串口發送到ZigBee終端。數據采集終端程序流程圖如圖5所示。
3.2 ZigBee無線傳感網的軟件設計
系統建立的ZigBee網絡由一個ZigBee協調器和多個ZigBee終端組成。每個ZigBee終端對應一個數據采集終端,兩者通過串口通信。ZigBee協調器以廣播的形式向多個ZigBee終端發送指令,指令內容為某數據采集終端的編號。ZigBee終端收到ZigBee協調器發來的指令后以單播的形式向ZigBee協調器發送對應編號的數據采集終端采集到的環境數據,各ZigBee終端之間不進行通信。ZigBee無線傳感網的組網示意圖如圖6所示,ZigBee無線傳感網程序流程圖如圖7所示。
3.3 LabVIEW人機交互界面的軟件設計
系統的上位機界面是采用NI(National Instruments)公司的LabVIEW集成開發環境設計的。LabVIEW是一個使用圖形符號來編寫程序的編程環境,使用圖形編程語言能夠極大地提高編程效率[11]。LabVIEW人機交互界面實現的主要功能為:串口通信、數據存儲和數據顯示。LabVIEW人機交互界面前面板如圖8所示。
3.3.1 串口通信
上位機是通過串口與ZigBee協調器進行通信的,在LabVIEW中利用儀器編程標準I/O應用程序接口VISA實現串口通信[12],主要包括串口配置、串口發送和串口接收。本系統通過VISA配置串口函數,設置的串口波特率為9 600 b/s,數據比特為8 b,無奇偶校驗位,1位停止位。串口發送利用的是VISA寫入函數,串口接收利用的是VISA讀取函數。LabVIEW人機交互界面利用函數VISA寫入函數以字符串形式將數據采集終端編號通過串口發送給ZigBee協調器,通過VISA讀取函數接收ZigBee協調器上傳的環境數據。
3.3.2 數據存儲
數據存儲利用了LabVIEW的寫入文本文件和創建路徑兩個函數。利用創建文件函數先創建一個空白文件,再利用寫入文本文件函數將采集到數據按照序號、溫度、濕度、光照強度、有害氣體濃度、灰塵濃度、當前時間的順序從左到右寫入到該文本文件,方便后續對這些環境數據的查看。
3.3.3 數據顯示
系統將采集到溫度、濕度、光照強度、有害氣體濃度、灰塵濃度通過LabVIEW里面的儀表選板和波形圖選板展現出來。LabVIEW上位機每隔6 min向ZigBee協調器發送一次數據采集指令,每小時采集10次數據,每天采集240次數據。同時,LabVIEW前面板上還實時顯示當前時間,這樣公共場所某區域每天的環境數據就通過儀表和折線圖直觀地展示出來。
4 系統測試
對系統各部分的基本功能進行了測試,并對系統的實時性和穩定性進行了驗證。
4.1 數據采集終端的功能測試
在北方民族大學智能建筑實驗室對數據采集終端進行了測試。系統上電運行后,數據采集終端的主控芯片STM32F103RBT6能夠實時接收到各傳感器采集的相關環境數據,并將這些數據每隔2 s在OLED顯示屏上顯示1次。
4.2 ZigBee傳感網通信距離測試
在北方民族大學校園空曠地帶對ZigBee無線傳感網的通信距離進行了測試,實測本系統采用的ZigBee終端和ZigBee協調器點對點通信距離可達342 m,與通常家庭使用的利用WiFi(傳輸距離為20~50 m)的路由器相比,傳輸距離有顯著提高。
4.3 LabVIEW人機交互界面功能測試
在北方民族大學智能建筑實驗室對LabVIEW人機交互界面進行了測試。LabVIEW上位機每隔6 min通過串口發送1次數據采集指令,1天發送240次指令,每發送1次指令就接收1次環境數據,并在LabVIEW上位機前面板上用儀表和折線圖的形式直觀地將環境數據顯示出來,同時在生成的文本文檔中可以查看已經采集的環境數據。
5 實驗結果與分析
5.1 實驗結果
圖9~圖11分別為從2016年7月25日0點0分—2016年7月26日0點0分采集到的室內溫度和濕度數據變化折線圖、光照強度數據變化折線圖以及灰塵濃度和有害氣體濃度數據變化折線圖。
5.2 實驗結果分析
從圖9可看出,在2016年7月25日室內溫度,在4點左右達到最低溫度21 ℃。在16點左右達到最高溫度34 ℃。溫度從4點開始逐漸升高到16點達到最高,然后逐漸下降到4點達到最低。相對濕度在5點左右達到最高78%RH,在17點左右達到最低28%RH。濕度從5點開始逐漸降低到17點達到最低,然后逐漸升高到5點達到最高。從圖10可以看出,在2016年7月25日室內光照強度從5點開始增大,在13點左右達到最大值273 lx,之后一直減小,直到18點左右開啟日光燈,光照強度由75 lx突變到165 lx,隨著時間的推遲,自然光的光照強度越來越低,室內的光照強度也越來越低,到21點左右室內光照強度穩定在95 lx,23點關閉實驗室內日光燈,光照強度驟降為2 lx。
從圖11可以看出,在2016年7月25日室內的有害氣體濃度在6點最低為9 ppm,在13點最高為22 ppm。從0—1點升高在1點為17 ppm,從1—6點持續降低,從6—13點持續升高,之后開始下降到15點為15 ppm,從15—19點持續升高,在19點達到18 ppm,19點以后持續降低到第二天0點為15 ppm。灰塵濃度在6點最低為52 μg/m3,在14點最高為86 μg/m3。從1—6點持續下降,從6—14點大體維持上升趨勢,從14—17點持續下降為65 μg/m3,在17—19點持續上升為76 μg/m3,從17—22點保持下降趨勢為66 μg/m3,從22—1點持續上升為77 μg/m3。
6 結 語
本文系統將價格相對低廉的STM32微處理器、技術相對成熟的ZigBee無線傳感網和數據處理能力強大的LabVIEW相結合。以STM32為主控芯片連接各傳感器和OLED顯示屏設計了數據采集終端,進行環境數據的實時采集與顯示,采用ZigBee無線傳感網傳輸環境數據,利用LabVIEW強大的圖形顯示和數據處理功能實現環境數據的儀表和波形圖顯示。實驗表明,該系統的數據采集終端采集數據較準確,傳輸距離較遠,測得環境數據無需人工處理直接轉化為儀表和折線圖顯示,滿足大型公共場所環境信息監測的需求。同時,系統所有硬件均采用模塊化設計,可以根據不同場合需求增加或更換不同的傳感器模塊,具有較強的可擴展性。系統還具有組網快、穩定性高等優點,有一定的科研意義和應用價值。
參考文獻
[1] 張曉芳.基于室內環境檢測的探討[J].自然科學,2016(8):113.
[2] 劉紅義,趙方,李朝暉,等.一種基于WiFi傳感器網絡的室內外環境遠程監測系統設計與實現[J]計算機研究與發展,2010,47(z2):361?365.
[3] 韋海成,王淼軍,魏鑫,等.基于STM32的室內空氣質量監測自適應調節系統[J].現代電子技術,2016,39(8):130?134.
[4]. 朱恒軍,張玉龍,靳展,等.基于ZigBee的室內空氣環境監控系統設計[J].電子技術應用,2015(2):86?88.
[5] 程小輝,康燕萍.基于STM32的RFID手持式閱讀器的研究與設計[J].電子技術應用,2013(8):130?133.
[6] 倪天龍.單總線傳感器DHT11在溫濕度測控中的應用[J].單片機與嵌入式系統應用,2010(6):60?62.
[7] 云中華,白天蕊.基于BH1750FVI的室內光照強度測量儀[J].單片機與嵌入式系統應用,2012(6):27?29.
[8] 胡曉芳.基于AVR單片機的室內環境檢測系統[J].自動化技術與應用,2014(7):117?119.
[9] WANG Y, LI J, JING H, et al. Laboratory evaluation and calibration of three low?cost particle sensors for particulate matter measurement [J]. Aerosol science & technology, 2015, 49(11): 1063?1077.
[10] 朱琎,楊占勇.基于CC2530的無線振動監測傳感器節點設計[J].儀表技術與傳感器,2012(8):56?58.
[11] 王曉蘭,劉徽.基于LabVIEW的風力機模擬裝置上位機監控系統設計[J].電氣自動化,2012(2):28?30.
[12] 郭潔,王召巴.基于LabVIEW的串行通信接口設計與實現[J].機械工程與自動化,2008(5):57?59.endprint