陳可飛,方賽銀,李 明
(1.西南林業(yè)大學(xué) 機(jī)械與交通學(xué)院,云南 昆明 650224;2.安徽工程大學(xué) 高端裝備先進(jìn)感知與智能控制教育部重點(diǎn)實(shí)驗(yàn)室,安徽 蕪湖 241000;3.安徽工程大學(xué) 電氣工程學(xué)院,安徽 蕪湖 241000)
隨著社會(huì)生產(chǎn)技術(shù)不斷發(fā)展,溫濕度數(shù)據(jù)的監(jiān)測和控制在很多領(lǐng)域都成為很重要的參數(shù)指標(biāo),在物聯(lián)網(wǎng)技術(shù)、通信技術(shù)及無線數(shù)據(jù)傳輸技術(shù)快速發(fā)展的今天,對(duì)于溫濕度的監(jiān)測與控制趨于遠(yuǎn)程化和無線化采集和監(jiān)測。目前用于無線傳感網(wǎng)絡(luò)協(xié)議主要有無線局域網(wǎng)(Wireless Fidelity,WiFi)、超寬帶通信(Ultra WideBand,UWB)、藍(lán)牙(Bluetooth)、紅外線數(shù)據(jù)通信(Infraed Data Association,IrDA)及ZigBee技術(shù)等[1]。包含IEEE802.15.4標(biāo)準(zhǔn)[2]的ZigBee技術(shù)具有低復(fù)雜度、低功耗和低成本等特點(diǎn),主要適合于自動(dòng)控制和遠(yuǎn)程控制領(lǐng)域,可嵌入各種設(shè)備中,并支持地理定位等功能[3]。如史艷紅[4]等基于ZigBee和LabVIEW的多地?zé)o線溫濕度監(jiān)測系統(tǒng)設(shè)計(jì),實(shí)現(xiàn)小范圍多區(qū)域無線溫濕度的監(jiān)測;付煥森[5]等基于PLC和組態(tài)技術(shù)現(xiàn)代農(nóng)業(yè)溫室控制系統(tǒng)設(shè)計(jì),對(duì)農(nóng)業(yè)大棚溫濕度進(jìn)行控制;劉志強(qiáng)[6]等基于ZigBee的溫室環(huán)境溫濕度采集系統(tǒng)的設(shè)計(jì);王欽[7]等基于ZigBee的倉庫溫濕度采集系統(tǒng)的設(shè)計(jì),利用ZigBee實(shí)現(xiàn)對(duì)倉庫環(huán)境溫濕度的監(jiān)測;劉增環(huán)[8]等基于虛擬儀器技術(shù)的果園生態(tài)環(huán)境監(jiān)測系統(tǒng),彭燕[9]等基于Zigbee技術(shù)的果園生態(tài)環(huán)境監(jiān)測系統(tǒng),利用ZigBee與虛擬儀器實(shí)現(xiàn)對(duì)果園環(huán)境的監(jiān)測;劉卉[10]等基于無線傳感器網(wǎng)絡(luò)的農(nóng)田土壤溫濕度監(jiān)測系統(tǒng)的設(shè)計(jì)與開發(fā),利用無線傳感器網(wǎng)絡(luò)實(shí)現(xiàn)對(duì)農(nóng)田土壤溫濕度的監(jiān)測與采集。因此,物聯(lián)網(wǎng)技術(shù)對(duì)于大跨度多區(qū)域環(huán)境數(shù)據(jù)的監(jiān)測有著廣泛地應(yīng)用。
本文提出了基于LabVIEW與ZigBee技術(shù)的分區(qū)域無線溫濕度監(jiān)測系統(tǒng)的設(shè)計(jì)方案,實(shí)現(xiàn)一個(gè)大跨度的分區(qū)域溫濕度數(shù)據(jù)實(shí)時(shí)采集、存儲(chǔ)、報(bào)警和顯示。放置于環(huán)境區(qū)域里的ZigBee終端將溫濕度傳感器采集的數(shù)據(jù)發(fā)送給遠(yuǎn)程控制室的ZigBee協(xié)調(diào)器,協(xié)調(diào)器又將數(shù)據(jù)通過串口通信傳輸至監(jiān)控PC端,在PC機(jī)上利用LabVIEW設(shè)計(jì)的監(jiān)控界面,實(shí)現(xiàn)一個(gè)遠(yuǎn)程溫濕度監(jiān)測、存儲(chǔ)和報(bào)警。實(shí)驗(yàn)表明:系統(tǒng)可以實(shí)現(xiàn)溫濕度多區(qū)域參數(shù)設(shè)置、數(shù)據(jù)監(jiān)測和存儲(chǔ),以及超限報(bào)警等功能,對(duì)于大棚種植中溫濕度的監(jiān)控提供一種借鑒和參考。
溫濕度監(jiān)測系統(tǒng)總體結(jié)構(gòu)如圖1所示。
圖1 結(jié)構(gòu)示意圖
系統(tǒng)主要應(yīng)用于大跨度多區(qū)域的小農(nóng)戶大棚種植環(huán)境,對(duì)這類環(huán)境的溫濕度數(shù)據(jù)進(jìn)行監(jiān)測和采集。整個(gè)系統(tǒng)主要由兩部分組成:上位部分和下位部分,其中上位部分是PC機(jī)(LabVIEW監(jiān)控界面);下位部分是協(xié)調(diào)器、多個(gè)終端以及傳感器組成。通過溫濕度傳感器DHT11實(shí)現(xiàn)對(duì)溫度和濕度的采集,將數(shù)據(jù)傳輸給各個(gè)ZigBee終端節(jié)點(diǎn),采用ZigBee技術(shù)的星型網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu),建立了一個(gè)協(xié)調(diào)器節(jié)點(diǎn),多個(gè)終端節(jié)點(diǎn)的無線網(wǎng)絡(luò),終端節(jié)點(diǎn)采集溫濕度數(shù)據(jù)每隔一定的時(shí)間輪流向協(xié)調(diào)器節(jié)點(diǎn)發(fā)送,協(xié)調(diào)器節(jié)點(diǎn)收到數(shù)據(jù)之后通過串口將各個(gè)終端節(jié)點(diǎn)的溫濕度數(shù)據(jù)傳給上位機(jī)監(jiān)控界面。在虛擬儀器LabVIEW開發(fā)平臺(tái)設(shè)計(jì)的監(jiān)控界面上實(shí)現(xiàn)數(shù)據(jù)的顯示和監(jiān)控,整體實(shí)現(xiàn)了對(duì)大跨度分區(qū)域溫濕度數(shù)據(jù)實(shí)時(shí)傳輸和監(jiān)控界面上實(shí)時(shí)顯示。
硬件節(jié)點(diǎn)的設(shè)計(jì)選用CC2530作為核心處理器,CC2530是TI公司在2.4 GHz頻段推出的支持IEEE802.15.4/ZigBee協(xié)議上的系統(tǒng)(Systemon a Chip,SoC)芯片。其內(nèi)部集成了高性能射頻(Radio Frequency,RF) 收發(fā)器、工業(yè)標(biāo)準(zhǔn)增強(qiáng)型8051 MCU內(nèi)核、256 KB Flash ROM (Read.OnlyMemory)和 8 KB RAM(Random Access Memory)[11]。該芯片不僅提供了JTAG接口用于程序的下載與調(diào)試,還包含了大量的 I/O 接口,RS232 串口和 USB接口方便上位機(jī)讀取串口數(shù)據(jù),主要負(fù)責(zé)傳感器數(shù)據(jù)采集、數(shù)據(jù)簡單處理、數(shù)據(jù)無線傳輸以及繼電器控制等功能[12]。該芯片同時(shí)具有低功耗、能建立強(qiáng)大的網(wǎng)絡(luò)節(jié)點(diǎn)等優(yōu)勢[13]。該ZigBee板,其核心板主要包括 CC2530 單片機(jī)、天線接口和晶振等;溫濕度傳感器采用DHT11型號(hào)傳感器,有較高的穩(wěn)定性,為單線串行接口,對(duì)數(shù)據(jù)的采集更為方便;無線傳感器由 3個(gè)模塊構(gòu)成,分別是傳感模塊、處理模塊和通信模塊。
在ZigBee通信棧協(xié)議中,有3種類型拓?fù)浣Y(jié)構(gòu)(即網(wǎng)狀、樹狀、星狀結(jié)構(gòu))。在本文的無線通信網(wǎng)絡(luò)設(shè)計(jì)中,采用星形拓?fù)浣Y(jié)構(gòu)進(jìn)行組網(wǎng),在該結(jié)構(gòu)中,一個(gè)功能強(qiáng)大的全功能器件作為網(wǎng)絡(luò)協(xié)調(diào)者位于網(wǎng)絡(luò)的中心[14],整個(gè)傳感器網(wǎng)絡(luò)的中心樞紐是協(xié)調(diào)器節(jié)點(diǎn),協(xié)調(diào)器在進(jìn)行網(wǎng)絡(luò)建立的同時(shí)還可以和終端節(jié)點(diǎn)進(jìn)行數(shù)據(jù)之間傳輸,終端節(jié)點(diǎn)的主要任務(wù)是溫濕度數(shù)據(jù)的采集,并將數(shù)據(jù)發(fā)送給協(xié)調(diào)器節(jié)點(diǎn)。
整個(gè)ZigBee網(wǎng)絡(luò)實(shí)現(xiàn)的基本流程:協(xié)調(diào)器建立網(wǎng)路,網(wǎng)絡(luò)建立成功后,終端節(jié)點(diǎn)發(fā)現(xiàn)網(wǎng)絡(luò)并請(qǐng)求加入網(wǎng)絡(luò),入網(wǎng)成功后,節(jié)點(diǎn)相互之間就可以進(jìn)行數(shù)據(jù)的傳輸和通信。
2.1.1 協(xié)調(diào)器節(jié)點(diǎn)和終端節(jié)點(diǎn)軟件設(shè)計(jì)
整個(gè)網(wǎng)路的重要核心部分是協(xié)調(diào)器,其主要的任務(wù)是構(gòu)建整個(gè)ZigBee無線通網(wǎng)絡(luò),給加入的終端節(jié)點(diǎn)分配網(wǎng)絡(luò)地址,并協(xié)調(diào)各節(jié)點(diǎn)之間的關(guān)系,實(shí)現(xiàn)數(shù)據(jù)從上位到下位的發(fā)送和接收工作。給協(xié)調(diào)器硬件通電之后,協(xié)調(diào)器節(jié)點(diǎn)串口和網(wǎng)絡(luò)初始化,開始進(jìn)行 ZigBee 網(wǎng)絡(luò)的建立,網(wǎng)絡(luò)建立成功后,主程序進(jìn)行事件的掃描和查詢。事件包括串口通信事件和無線通信事件等,當(dāng)檢測到有終端節(jié)點(diǎn)加入網(wǎng)絡(luò)時(shí),同意加入網(wǎng)絡(luò)并分配子節(jié)點(diǎn)的網(wǎng)絡(luò)地址,周期性接收數(shù)據(jù)并將數(shù)據(jù)發(fā)送給上位機(jī),上位機(jī)接收到數(shù)據(jù)后實(shí)時(shí)顯示。協(xié)調(diào)器節(jié)點(diǎn)的工作流程如圖2(a)所示。
終端節(jié)點(diǎn)的主要任務(wù)是數(shù)據(jù)采集和傳輸,在整個(gè)區(qū)域環(huán)境內(nèi)有很多的終端節(jié)點(diǎn)ZigBee模塊,其采集的溫濕度數(shù)據(jù)發(fā)送給匯聚節(jié)點(diǎn),匯聚節(jié)點(diǎn)再將數(shù)據(jù)發(fā)送給上位機(jī)進(jìn)行處理。給終端硬件通電后,終端進(jìn)行網(wǎng)絡(luò)初始化,如果接收到加入網(wǎng)絡(luò)的信息時(shí),則加入網(wǎng)絡(luò)并等待協(xié)調(diào)器分配終端節(jié)點(diǎn)的網(wǎng)絡(luò)地址;相反,當(dāng)沒有收到加入網(wǎng)絡(luò)信息,則終端節(jié)點(diǎn)向協(xié)調(diào)器發(fā)送加入網(wǎng)絡(luò)申請(qǐng)信息,入網(wǎng)成功后,周期性的采集溫濕度數(shù)據(jù),處理打包后將數(shù)據(jù)發(fā)送給協(xié)調(diào)器建節(jié)點(diǎn)。終端節(jié)點(diǎn)的工作流程如圖2(b)所示。
圖2 工作流程圖
2.1.2 協(xié)調(diào)器節(jié)點(diǎn)與終端節(jié)點(diǎn)數(shù)據(jù)傳輸通信
當(dāng)終端節(jié)點(diǎn)與協(xié)調(diào)器節(jié)點(diǎn)成功組建通信網(wǎng)絡(luò)之后,相互之間進(jìn)行綁定連接,然后終端節(jié)點(diǎn)自動(dòng)進(jìn)入溫濕度數(shù)據(jù)采集,并將溫濕度傳感器采集的數(shù)據(jù)通過無線網(wǎng)絡(luò)通信發(fā)送給協(xié)調(diào)器節(jié)點(diǎn)。協(xié)調(diào)器節(jié)點(diǎn)接收到數(shù)據(jù)后,觸發(fā)SYS-E-VENT_MSG事件,并對(duì)AF-INCOMING_MSG_CMD信息做處理[15],將處理完的數(shù)據(jù)通過USB數(shù)據(jù)線串口通信發(fā)送給PC機(jī)(labVIEW監(jiān)控界面)顯示。協(xié)調(diào)器節(jié)點(diǎn)與終端節(jié)點(diǎn)數(shù)據(jù)傳輸通信流程如圖3所示。
圖3 終端節(jié)點(diǎn)和協(xié)調(diào)器節(jié)點(diǎn)數(shù)據(jù)傳輸通信流程
系統(tǒng)監(jiān)控界面采用模塊化設(shè)計(jì),人機(jī)界面主要包括五個(gè)部分的功能模塊,分別為實(shí)現(xiàn)與下位部分通信的串口通信模塊,各工作按鈕、指示燈顯示模塊,溫濕度數(shù)據(jù)讀取、曲線顯示、溫濕度范圍報(bào)警設(shè)置及其數(shù)據(jù)儲(chǔ)存模塊,溫濕度歷史數(shù)據(jù)清除模塊,溫濕度歷史數(shù)據(jù)查詢模塊。監(jiān)控界面實(shí)現(xiàn)對(duì)溫濕度數(shù)據(jù)的監(jiān)測,以及后臺(tái)數(shù)據(jù)儲(chǔ)存,整體程序框圖如圖4所示。
圖4 LabVIEW整體程序框圖
選取整個(gè)程序框圖中的兩個(gè)小部分(即串口通信參數(shù)設(shè)置;各終端節(jié)點(diǎn)的溫濕度數(shù)值和曲線顯示)加以闡述。
(1)串口參數(shù)設(shè)置模塊
其中串口通信軟件程序如圖5所示,由于通信是采用USB接口進(jìn)行通信,故選用LabVIEW自帶的VISA函數(shù)進(jìn)行通信編寫,VISA實(shí)質(zhì)上是一個(gè)I/O口軟件庫及其規(guī)范的總稱,應(yīng)用于儀器編程的標(biāo)準(zhǔn)I/0應(yīng)用程序接口,是工業(yè)上通用的儀器驅(qū)動(dòng)器標(biāo)準(zhǔn)API,采用面向?qū)ο缶幊?,具有良好的兼容性、擴(kuò)展性和獨(dú)立性。該部分用于實(shí)現(xiàn)軟件系統(tǒng)和外部硬件系統(tǒng)的相互通信;在對(duì)應(yīng)的前面板中,串口通信的參數(shù)為波特率38 400,數(shù)據(jù)位8,停止位1,校驗(yàn)位None,其中需要特別注意端口的選擇,一旦設(shè)置不合理將導(dǎo)致系統(tǒng)不工作并影響其他通道。
圖5 串口參數(shù)設(shè)置軟件程序
(2)各終端節(jié)點(diǎn)溫濕度數(shù)值和曲線顯示模塊
各終端節(jié)點(diǎn)溫濕度數(shù)值和曲線顯示軟件程序如圖6所示,該程序部分主要實(shí)現(xiàn)溫濕度的數(shù)值和趨勢曲線的顯示,以及溫濕度上下限的參數(shù)設(shè)置,在對(duì)應(yīng)的前面板中可以對(duì)溫濕度的上下限進(jìn)行設(shè)置并能實(shí)時(shí)顯示溫濕度的數(shù)值和曲線。
圖6 各終端節(jié)點(diǎn)溫濕度數(shù)值和曲線顯示軟件程序
由上述的程序框圖設(shè)計(jì)出的監(jiān)控平臺(tái),不僅實(shí)現(xiàn)了上位機(jī)部分與下位機(jī)部分之間的通信,同時(shí)在監(jiān)控界面上能夠?qū)崟r(shí)地顯示各終端的溫濕度數(shù)值和趨勢,并將采集的溫濕度數(shù)據(jù)儲(chǔ)存在上位機(jī)后臺(tái)的Excel表格中。此外,還可以設(shè)置各終端節(jié)點(diǎn)溫濕度的上下限。本程序框圖中溫濕度實(shí)時(shí)采集曲線顯示只設(shè)計(jì)了三個(gè)終端節(jié)點(diǎn),可以根據(jù)實(shí)際的情況設(shè)計(jì)多個(gè)終端節(jié)點(diǎn),其原理和方法同理。
為測試系統(tǒng)監(jiān)控和數(shù)據(jù)傳輸?shù)挠行院头€(wěn)定性,在通海錦海農(nóng)業(yè)科技花卉產(chǎn)業(yè)基地選取了部分溫室花卉大棚進(jìn)行實(shí)驗(yàn)測試。通過USB數(shù)據(jù)線將ZigBee協(xié)調(diào)器與PC機(jī)連接,計(jì)算機(jī)識(shí)別端口后,打開LabVIEW監(jiān)控界面,串口號(hào)選擇為COM5,設(shè)置相應(yīng)波特率、數(shù)據(jù)位、停止位、校驗(yàn)位的參數(shù);設(shè)置溫濕度上下限參數(shù);各終端節(jié)點(diǎn)程序燒錄和通電,硬件電路正常工作;點(diǎn)擊LabVIEW前面板上的運(yùn)行按鈕。監(jiān)控界面顯示信息如7所示。
實(shí)驗(yàn)結(jié)果表明:系統(tǒng)能夠?qū)貪穸冗M(jìn)行實(shí)時(shí)監(jiān)測,并在曲線圖上顯示溫度、濕度趨勢,當(dāng)溫濕度的采集值超過設(shè)定值區(qū)域時(shí),報(bào)警燈會(huì)由綠色變成紅色,數(shù)據(jù)可以實(shí)時(shí)存儲(chǔ)在Excel表格中,如圖8所示;點(diǎn)擊顯示界面“退出系統(tǒng)”即可退出整個(gè)系統(tǒng),通過實(shí)驗(yàn)結(jié)果及其分析可知,本系統(tǒng)可以實(shí)現(xiàn)溫濕度實(shí)時(shí)監(jiān)測。
圖7 溫濕度監(jiān)控界面測試
圖8 數(shù)據(jù)存儲(chǔ)顯示圖
文中針對(duì)大跨度分區(qū)域大棚環(huán)境溫濕度的監(jiān)測,采用了DHT11溫濕度傳感器對(duì)溫度和濕度進(jìn)行采集,通過ZigBee搭建星型無線傳感器網(wǎng)絡(luò)實(shí)現(xiàn)數(shù)據(jù)的傳輸和采集、利用LabVIEW設(shè)計(jì)出的溫濕度界面系統(tǒng)進(jìn)行監(jiān)控,實(shí)現(xiàn)了分區(qū)域溫濕度的數(shù)值和曲線顯示、超限報(bào)警、數(shù)據(jù)存儲(chǔ)等功能。通過實(shí)驗(yàn)測試得出,該監(jiān)測系統(tǒng)達(dá)到了預(yù)期的設(shè)計(jì)要求;同時(shí),對(duì)于小農(nóng)戶大棚種植分區(qū)域環(huán)境溫濕度的監(jiān)測提供一種方法和思路,對(duì)于在今后實(shí)際的應(yīng)用場景中,還是要依據(jù)實(shí)際的需求進(jìn)行進(jìn)一步的完善與修正。