王 瑜
(西安航空學院 機械工程學院,陜西 西安 710077)
基于Labwindows/CVI的無線多路溫濕度測控系統研究
王 瑜
(西安航空學院 機械工程學院,陜西 西安 710077)
溫濕度是人們生產生活中重要的物理量,多路溫濕度的遠程測控應用十分廣泛。無線多路溫濕度測控系統利用Labwindows/CVI 2012開發平臺,以C8051F350單片機為數據采集控制芯片,通過ESP8266無線WiFi模塊將3個DHT11溫濕度傳感器采集的3路數據送往上位機,上位機對3路溫濕度數據進行處理,并通過6路繼電器模塊對負載進行控制。系統具有對3路溫濕度進行檢測、無線傳輸、控制、存儲等功能。
Labwindows/CVI;無線;溫濕度;測控系統
在人們的日常生產生活中,需要對溫濕度進行測控的場合很多,如糧倉、儲存水果的冷庫、溫室等。隨著科技和物聯網技術的快速發展,對溫濕度測控系統的自動化程度和數據傳輸距離的要求不斷提高。各種數據測控系統,特別是無線數據測控系統應運而生,其中,無線溫濕度測控系統就是一種非常具有代表性的無線測控系統,在工農業生產和科研實踐中具有很高的使用價值[1]。
本文結合ESP8266 WiFi模塊的無線多路溫濕度測控系統,設計了一種以C8051F350為數據采集控制芯片,基于Labwindows/CVI的開發平臺。
Cygnal公司生產的高速、高性能混合信號處理單片機C8051F350,除了具有標準8052單片機的數字控制部件之外,片內還集成了數據采集和控制系統中常用的模擬部件和其它數字外設及功能部件,包括模擬多路選擇器、可編程增益放大器、ADC、DAC、電壓比較器、電壓基準等[2],系統的成本低,并且減少了硬件電路的設計。本系統選用ESP8266芯片,是一款專門針對無線連接的需求而開發,既能獨立運行,也可作為slave搭載于其他Host運行。ESP8266性能穩定、體積小、支持完善簡潔高效的AT指令,提供AP、STA和AP+STA共存三種模式[3]。本文將ESP8266模塊設置為Station模式,結合Labwindows/CVI 2012和C8051F350單片機,將DHT11溫濕度傳感器采集的3路溫濕度數據,通過ESP8266模塊和局域網中的計算機通信,并利用計算機中安裝的上位機軟件控制三臺風扇和三臺加濕器工作,實現了多路溫濕度的無線遠程測控。
無線多路溫濕度測控系統由控制器模塊C8051F350、穩壓電源模塊、ESP8266無線WiFi模塊、3路溫濕度傳感器模塊DHT11、6路繼電器模塊、上位機、三臺風扇模塊和三臺加濕器模塊組成。穩壓電源模塊給整個系統供電,3路溫濕度傳感器DHT11采集溫濕度信號,將其轉換為數字信號送入控制器模塊C8051F350,ESP8266無線WiFi模塊與局域網的路由器連接,安裝有上位機軟件的計算機作為服務器,控制器模塊C8051F350按照上位機發送的命令,控制6路繼電器模塊,實現溫濕度數據的遠程無線傳輸和三臺風扇、三臺加濕器的遠程無線控制。系統結構框圖如圖1所示。
2.1 3路溫濕度檢測電路
本系統采用3個溫濕度傳感器DHT11,分別采集3個地點的溫濕度數據。DHT11數字溫濕度傳感器是一款含有已校準數字信號輸出的溫濕度復合傳感器,利用專用的數字模塊采集技術和溫濕度傳感器技術,確保產品的可靠性和長期穩定性。傳感器包括一個電阻式感濕元件和一個NTC測溫元件,并能與一個高性能8位單片機相連[4]。3路溫濕度檢測電路如圖2所示。
本系統中,3路溫濕度傳感器DHT11的Dout引腳分別與C8051F350的IO口P00、P10和P11連接,將溫濕度信號送入C8051F350單片機,3路DHT11的VCC引腳接電源,3路DHT11的NC引腳懸空,3路DHT11的GND引腳接地。
2.2 ESP8266無線WiFi模塊及電源電路
ESP8266無線WiFi模塊及電源電路如圖3所示。

圖3 ESP8266無線WiFi模塊及電源電路
ESP8266系列芯片是樂鑫信息科技在2015年推出的WiFi芯片,該芯片是實現WiFi遠程控制的一種選擇。ESP8266支持softAP、station、softAP+station共存三種模式[5]。本文采用station模式,即把ESP8266模塊當作一個客戶機,進行TCP連接,從而實現溫濕度數據、控制命令的發送和接收。本系統采用ASM1117芯片和電阻R4、R5及電容C1、C2、C3產生3.3V電源信號,3.3V電源接ESP8266模塊的VCC引腳,ESP8266的CH_PD引腳通過1K電阻接VCC引腳,ESP8266的GND引腳接地,ESP8266的UTXD引腳接C8051F350的P05引腳,ESP8266的URXD引腳接C8051F350的P04引腳,ESP8266的GPIO2、RST和GPIO0懸空。
2.3 6路繼電器控制電路
本系統采用C8051F350控制6路繼電器,從而控制三個地點的三臺風扇和三臺加濕器,調節系統的溫度和濕度。6路繼電器控制電路如圖4所示。

圖4 6路繼電器控制電路
C8051F350的P12-P17共6個IO接口,分別通過200歐姆電阻與三極管基極連接,控制6個繼電器的線圈,從而通過繼電器的觸頭實現對三臺風扇和三臺加濕器的控制,使溫度和濕度保持在設定值范圍。
3.1 上位機軟件設計
Labwindows/CVI作為一種以ANSI C為核心的交互式虛擬儀器開發環境,在無損檢測、電力儀表系統、溫控系統、流程控制系統、故障診斷等領域中得到了廣泛的應用[6]。本系統上位機利用Labwindows/CVI 2012軟件平臺開發,上位機界面如圖5所示。
上位機界面主要由兩個部分組成:TCP服務器-客戶機部分和3路溫濕度數據測控部分。在TCP服務器-客戶機部分中的端口號控件中輸入端口號,點擊“連接”按鈕,創建TCP服務器,如果TCP服務器創建成功,命令按鈕“連接”變成灰色,與命令按鈕“斷開”形成互鎖控制,TCP服務器指示燈控件變成紅色,并在服務器IP和服務器名控件中顯示創建TCP服務器的IP地址和用戶名。當有客戶機連接到TCP服務器時,客戶機指示燈變成紅色,并在客戶機IP控件中顯示連接TCP服務器的客戶機的IP地址。

圖5 上位機界面
3路溫濕度數據測控部分主要完成設置3路溫濕度數據的設定值、顯示實際值、數據存儲和對三臺風扇和三臺加濕器的控制。在各路溫度的“設定值”控件中輸入各路溫度的設定值,點擊“確定”按鈕,完成設置3路溫濕度數據設定值。點擊“開始”按鈕,在各路溫度的“實際值”控件中顯示當前各路DHT11溫濕度傳感器采集到的溫度的實際值,在各路濕度的“實際值”控件中顯示當前各路DHT11溫濕度傳感器采集到的濕度的實際值。當各路溫度的實際值大于設定值時,通過繼電器控制風扇運行,并使各路風扇指示燈控件變成綠色;當各路濕度的實際值小于設定值時,通過繼電器控制加濕器運行,并使各路加濕器指示燈控件變成綠色。點擊“停止”按鈕,通過繼電器控制三臺風扇和三臺加濕器停止運行,點擊“存儲”按鈕,將3路溫濕度數據的當前值保存到文檔中,便于后續分析。上位機作為服務器的軟件流程如圖6所示。

圖6 上位機作為服務器的軟件流程圖
首先獲取服務器的端口號,注冊服務器,如果服務器注冊成功,獲取服務器的IP地址和用戶名。接著判斷是否有客戶機連接,如果有客戶機連接到服務器,則獲取客戶機的IP地址,判斷檢測第幾路溫濕度數據,如果檢測第1路(第2路或第3路)溫濕度數據,則通過WiFi向客戶機發送命令,并通過WiFi從客戶機讀取第1路(第2路或第3路)溫濕度數據,判斷是否第1路(第2路或第3路)濕度小于設定值或溫度大于設定值,如果是,則通過WiFi向客戶機發送繼電器模塊1或2(3或4、5或6)控制命令。
3.2 C8051F350控制器模塊軟件設計
結合Keil C軟件平臺設計,測控系統采用C8051F350單片機作為控制器模塊。控制器模塊軟件主要由三部分組成:DHT11溫濕度檢測部分、ESP8266數據通信部分和6路繼電器控制部分。DHT11器件采用簡化的單總線通信,單總線即只有一根數據線,系統中的數據交換、控制均由單總線完成。C8051F350單片機發送一次開始信號后,DHT11從低功耗模式轉換到高速模式,待C8051F350開始信號結束后,DHT11發送響應信號,送出40bit的數據,并觸發一次采集[7]。C8051F350單片機作為客戶機的軟件流程如圖7所示。

圖7 C8051F350單片機作為客戶機的軟件流程圖
首先,使用AT+CWMODE=1命令設置ESP8266 WiFi模式為station,獲取服務器的端口號及IP地址,使用AT+CWJAP=“路由器用戶名”,“路由器密碼”命令使ESP8266連接到局域網路由器。然后,使用AT+CIPSTART=“TCP”,“aa.aa.aa.aa”,cccc命令使ESP8266作為客戶機連接到服務器[8],如果連接成功,獲取服務器的IP地址和用戶名。C8051F350再通過ESP8266無線WiFi模塊接收上位機的命令,如果收到“采集第1路(第2路或第3路)數據”命令,C8051F350通過DHT11采集第1路(第2路或第3路)溫濕度數據,通過WiFi將第1路(第2路或第3路)溫濕度數據發送到上位機,接著判斷是否接收到上位機控制命令。如果接收到控制命令,C8051F350根據命令控制繼電器模塊1打開加濕器1,或控制繼電器模塊2打開風扇1,或C8051F350根據命令控制繼電器模塊3打開加濕器2,或控制繼電器模塊4打開風扇2,或C8051F350根據命令控制繼電器模塊5打開加濕器3,或控制繼電器模塊6打開風扇3。
本文以C8051F350單片機為數據采集控制芯片,以Labwindows/CVI 2012作為上位機軟件開發平臺,設計了一種基于Labwindows/CVI的無線多路溫濕度測控系統。通過ESP8266無線WiFi模塊將C8051F350單片機采集到的3路溫濕度數據送往上位機,充分發揮了C8051F350數據采集優勢、ESP8266無線通信優勢以及Labwindows/CVI庫函數豐富優勢。系統具有對3路溫濕度數據的采集、無線傳輸、控制和存儲等功能,而且溫度和濕度可以根據需要設定,能夠滿足絕大多數場合對溫濕度的需求。經實驗證明,該系統穩定性強,濕度的控制范圍:32-74%RH,溫度的控制范圍:18-31℃。濕度誤差小于±5%RH,溫度誤差小于±2℃,非常適合在科學實驗室、機房、高精度數控機床車間以及養殖、種植等場合應用。
[1] 劉承橋,張耀南,馮克庭,等.MSP430F149的無線溫濕度環境實時監測系統[J].單片機與嵌入式系統應用,2015,15(5):61-64.
[2] 劉鵬程,樓然苗.基于單片機的液晶觸摸屏的設計[J].數字技術與應用,2015,10(5):140-141.
[3] 孫靜,徐奕,何瀟.基于移動客戶端的智能教室光溫無線控制系統[J].電子技術與軟件工程,2015,73(12):32-33.
[4] 王登宏,厲佳男,賀雪輝,等.基于Arduino的手機同步顯示溫濕度檢測系統的設計與實現[J].工業控制計算機,2016,29(7):42-45.
[5] 曹振民,陳年生,馬強,等.基于ESP8266的無線控制電路設計[J].工業控制計算機,2017,30(1):68-69.
[6] 胡錦超,趙祥模,王潤民,等.基于LabWindows/CVI的光電三極管虛擬測試儀設計[J].計算機測量與控制,2016,24(5):287-290.
[7] 溫濕度模塊DHT11產品手冊[EB/OL].(2016-03-30)[2017-04-20].http://pan.baidu.com/s/1cDhcAi.
[8] ESP8266 AT Command Examples[EB/OL].(2016-07-27)[2017-04-20].http://www.espressif.com/en/support/download/documents.
[責任編輯、校對:東 艷]
Multi-Channel Wireless Measurement and Control System of Temperature and Humidity Based on Labwindows/CVI
WANGYu
(School of Mechanical Engineering,Xi′an Aeronautical Institute,Xi′an 710077,China)
Temperature and humidity are important physical quantities in production and daily life.The multi-channel remote measurement and control of temperature and humidity are used extensively.Labwindows/CVI 2012 is used as the developing platform of the multi-channel wireless measurement and control system of temperature and humidity,and C8051F350 microcontroller is used as the data acquisition and control chip.Data collected from three temperature and humidity sensors DHT11 are sent to host computer through ESP8266 wireless WiFi module.The host computer can process the data of three temperature and humidity,and control load by six channel relay module.This system is mainly composed of the following five parts:host computer,C8051F350 controller module,and temperature and humidity sensors module,WiFi module and relay module.The system is designed with the functions such as data acquisition,wireless transmission,control and storage of three channel temperature and humidity.
Labwindows/CVI;wireless;temperature and humidity;measurement and control system
2017-04-07
王瑜(1981-),女,江蘇徐州人,講師,主要從事機電一體化技術、嵌入式系統應用、圖像處理等方面的研究。
TP273
A
1008-9233(2017)03-0050-06