任冬冬 胡斌 王玉超 傅振濤 黃萌
【摘 要】本文設(shè)計(jì)了一個(gè)基于ZigBee無線網(wǎng)絡(luò)的單片機(jī)智能溫室控制系統(tǒng),本智能系統(tǒng)可通過各種傳感器實(shí)時(shí)監(jiān)測(cè)溫室環(huán)境內(nèi)各類環(huán)境因子(包括溫度、濕度、光照強(qiáng)度、CO2濃度等),并將其數(shù)據(jù)通過Zigbee無線網(wǎng)絡(luò)傳輸至控制系統(tǒng)單片機(jī),由無線網(wǎng)絡(luò)將控制系統(tǒng)發(fā)出指令傳送至相應(yīng)的執(zhí)行機(jī)構(gòu),實(shí)時(shí)調(diào)節(jié)溫室環(huán)境,保證溫室永遠(yuǎn)處于一個(gè)對(duì)農(nóng)作物最為有利的生長(zhǎng)環(huán)境。本系統(tǒng)很好的解決了實(shí)時(shí)數(shù)據(jù)監(jiān)測(cè)的問題,改變了過去只靠操作人員通過觀察作物生長(zhǎng)狀態(tài)而進(jìn)行測(cè)報(bào)的相對(duì)落后狀態(tài),對(duì)生產(chǎn)作物進(jìn)行即時(shí)的自動(dòng)監(jiān)測(cè),促進(jìn)生產(chǎn)資源集約高效利用,從而能夠大幅度提高的農(nóng)業(yè)生產(chǎn)力。
【關(guān)鍵詞】無線網(wǎng)絡(luò);ZigBee;智能溫室;無線傳輸
中圖分類號(hào): TP277 文獻(xiàn)標(biāo)識(shí)碼: A 文章編號(hào): 2095-2457(2017)29-0045-002
【Abstract】In this paper,we design a SCM intelligent greenhouse control system based on ZigBee wireless network.The intelligent system can monitor various environmental factors (including temperature,humidity,light intensity,CO2 concentration,etc.) in the greenhouse environment in real time through various sensors The data is transmitted to the control system microcontroller through the Zigbee wireless network,and the control system sends instructions to the corresponding implementing agencies by the wireless network to adjust the greenhouse environment in real time to ensure that the greenhouse is always in the most favorable growth environment for the crops.The system is a good solution to the real-time data monitoring problems,changing the past by observing the growth of crops by the operator state of the relatively backward state of the newspaper,the production of crops for real-time automatic monitoring, and promote the efficient use of productive resources and thus Can greatly improve the agricultural productivity.
【Key words】Wireless network;ZigBee;Smart greenhouse;Wireless transmission
0 引言
近年來,農(nóng)業(yè)作為國(guó)家優(yōu)先發(fā)展產(chǎn)業(yè)正受到各級(jí)政府的高度重視,增加億萬農(nóng)民收入是我們國(guó)家當(dāng)前的基本國(guó)策,農(nóng)業(yè)現(xiàn)代化是我們追求的目標(biāo),基于計(jì)算機(jī)和自動(dòng)化技術(shù)的智能溫室是農(nóng)業(yè)現(xiàn)代化的一個(gè)重要方面。溫室為農(nóng)作物提供了一個(gè)能透光、保溫(或加溫)適于生長(zhǎng)的環(huán)境。特備是在不適宜植物生長(zhǎng)的季節(jié),溫室能提供生育條件和增加產(chǎn)量,還用于低溫季節(jié)喜溫蔬菜、花卉、林木等植物栽培或育苗等。溫室內(nèi)存在各種變量參數(shù)(如溫度、濕度等),是一個(gè)多變量、多耦合、非線性、大滯后的復(fù)雜動(dòng)態(tài)系統(tǒng),需要由各種檢測(cè)裝置對(duì)環(huán)境因子進(jìn)行檢測(cè),但往往檢測(cè)出環(huán)境發(fā)生變化時(shí)再由執(zhí)行機(jī)構(gòu)來改變溫室環(huán)境是滯后的,并不能實(shí)現(xiàn)實(shí)時(shí)監(jiān)測(cè)實(shí)時(shí)調(diào)節(jié)。因此建立一個(gè)有預(yù)見性、及時(shí)的控制系統(tǒng)來調(diào)節(jié)溫室環(huán)境,以提供最為合適的農(nóng)作物生長(zhǎng)環(huán)境是非常有必要的。
1 總體方案設(shè)計(jì)
基于Zigbee無線傳輸智能溫室控制系統(tǒng)主要包含上位機(jī)和下位機(jī)兩大模塊,其系統(tǒng)框圖見圖1。上位機(jī)選用微機(jī),為主控制系統(tǒng),下位機(jī)則采用單片機(jī)實(shí)現(xiàn)分級(jí)控制。上位機(jī)主要是實(shí)現(xiàn)面向客戶各種環(huán)境因子數(shù)據(jù)的設(shè)置及顯示,從而適用于各種農(nóng)作物的環(huán)境控制,同時(shí)能將環(huán)境因子數(shù)據(jù)及控制指令歷史數(shù)據(jù)存儲(chǔ)下來。下位機(jī)的工作是在接受監(jiān)控PC機(jī)發(fā)出的控制信號(hào)后,可以通過上位機(jī)已經(jīng)預(yù)設(shè)好的各項(xiàng)數(shù)據(jù)的閥值來實(shí)現(xiàn)對(duì)執(zhí)行機(jī)構(gòu)的控制。下位機(jī)控制器是以CC2530單片機(jī)為核心的,整個(gè)下位機(jī)系統(tǒng)包含兩個(gè)下級(jí)模塊,分別是ZigBee無線主模塊和單片機(jī)自動(dòng)控制模塊。其中ZigBee無線主模塊又由模數(shù)轉(zhuǎn)換系統(tǒng)、數(shù)據(jù)采集系統(tǒng)、無線網(wǎng)絡(luò)傳輸系統(tǒng)以及通信系統(tǒng)組成。系統(tǒng)通過各種傳感器實(shí)時(shí)監(jiān)測(cè)溫室內(nèi)的二氧化碳濃度、溫濕度和光照強(qiáng)度等溫室環(huán)境因子,將其采集的數(shù)據(jù)上傳到ZigBee子節(jié)點(diǎn),再通過無線網(wǎng)絡(luò)傳到ZigBee網(wǎng)絡(luò)總節(jié)點(diǎn),最后通過RS-232串行口總線將數(shù)據(jù)傳到上位機(jī)上并顯示反饋給用戶。單片機(jī)自動(dòng)控制模塊包括數(shù)據(jù)模塊和執(zhí)行機(jī)構(gòu)控制模塊。數(shù)據(jù)采集模塊可以完成對(duì)ZigBee總節(jié)點(diǎn)通過網(wǎng)絡(luò)通信層所傳遞給單片機(jī)數(shù)據(jù)的收集和預(yù)處理,同時(shí)將結(jié)果通過RS-232串行口總線送至數(shù)據(jù)存儲(chǔ)器或監(jiān)控服務(wù)器存儲(chǔ)和管理。執(zhí)行機(jī)構(gòu)控制模塊則是通過比較實(shí)時(shí)監(jiān)控的環(huán)境因子參數(shù)和預(yù)設(shè)閥值來實(shí)現(xiàn)對(duì)溫室大棚內(nèi)的各個(gè)執(zhí)行機(jī)構(gòu)(如遮陽系統(tǒng)、保溫系統(tǒng)、升溫系統(tǒng)、濕窗簾/風(fēng)扇降溫系統(tǒng)、噴滴灌系統(tǒng)或滴灌系統(tǒng))的啟動(dòng)與關(guān)閉。endprint
2 ZigBee無線網(wǎng)絡(luò)模塊設(shè)計(jì)
本智能溫室控制系統(tǒng)最主要的特點(diǎn)在于數(shù)據(jù)的傳輸是基于ZigBee實(shí)現(xiàn)的。ZigBe技術(shù)是一種復(fù)雜性不高、低能耗、運(yùn)行速率較低、傳輸距離較短、設(shè)計(jì)成本不高的雙向無線通訊技術(shù)[2],并且在實(shí)際的設(shè)計(jì)中ZigBee網(wǎng)絡(luò)有著非常強(qiáng)大的延展性[3]。依據(jù)控制要求和溫室自身的特點(diǎn),可選用適合ZigBee無線網(wǎng)絡(luò)技術(shù)的處理芯片,構(gòu)建一個(gè)合乎情理的網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)來實(shí)現(xiàn)ZigBee網(wǎng)絡(luò)的無線傳輸,把協(xié)調(diào)器、處理器以及終端設(shè)備有機(jī)的整合在一起,通過軟件編程實(shí)現(xiàn)數(shù)據(jù)在無線網(wǎng)絡(luò)中的暢通傳輸。
2.1 ZigBee技術(shù)的軟件開發(fā)環(huán)境的介紹
本設(shè)計(jì)所使用的軟件開發(fā)環(huán)境是IAR,它是一個(gè)非常強(qiáng)大的開發(fā)環(huán)境,幾乎所有可用的工具都可以完整地嵌入這個(gè)軟件中,相對(duì)于其他的開發(fā)環(huán)境,IAR 開發(fā)環(huán)境是一種具備入門容易、使用方便和代碼簡(jiǎn)潔等特點(diǎn)的強(qiáng)大軟件,IAR開發(fā)環(huán)境的主要特點(diǎn):
1)高度優(yōu)化的IAR AVR C/C++編譯器;
2)AVRIAR匯編器;
3)通用IAR XLINK Linker;
4)IARXAR庫創(chuàng)建器和IAR XLIB Librarian一個(gè)強(qiáng)大的編輯器;
5)一個(gè)工程管理器;
用戶可以在IAR開發(fā)環(huán)境下做一些對(duì)新的項(xiàng)目開發(fā)設(shè)計(jì),而且這個(gè)開發(fā)環(huán)境界面簡(jiǎn)潔、清晰,用戶很輕松就可以熟練駕馭這個(gè)具有大量代碼繼承能力的IAR開發(fā)環(huán)境。
2.2 ZigBee星型網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)的搭建
為了使溫室環(huán)境的監(jiān)測(cè)能夠準(zhǔn)確,在一定范圍內(nèi)要設(shè)置溫室環(huán)境因子的監(jiān)測(cè)設(shè)備,其所監(jiān)測(cè)到的數(shù)據(jù)要通過無線傳輸網(wǎng)絡(luò)輸送至上位機(jī)。合理的設(shè)計(jì)溫室環(huán)境因子監(jiān)控設(shè)備在溫室中的分布以及無線傳輸網(wǎng)絡(luò)的拓?fù)浣Y(jié)構(gòu)都能提高系統(tǒng)的實(shí)時(shí)反饋的速度和效率。因此設(shè)計(jì)一個(gè)合理的無線傳輸網(wǎng)絡(luò)的拓?fù)浣Y(jié)構(gòu)是非常重要的。本系統(tǒng)設(shè)計(jì)了一個(gè)全功能設(shè)備作為系統(tǒng)的ZigBee主節(jié)點(diǎn)和多個(gè)精簡(jiǎn)功能設(shè)備作為ZigBee網(wǎng)絡(luò)的子節(jié)點(diǎn)的星型網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu),星型拓?fù)浣Y(jié)構(gòu)設(shè)計(jì)較為簡(jiǎn)單、在應(yīng)用中易于實(shí)現(xiàn)、而且網(wǎng)絡(luò)的能耗較低。
2.2.1 全功能設(shè)備的功能配置
每一個(gè)星型結(jié)構(gòu)中都只有一個(gè)全功能設(shè)備(FFD)節(jié)點(diǎn),也就是ZigBee星型無線網(wǎng)絡(luò)的總節(jié)點(diǎn)。全功能設(shè)備(FFD)節(jié)點(diǎn)在星型無線網(wǎng)絡(luò)中作為ZigBee協(xié)調(diào)器(Coordinator),是無線網(wǎng)絡(luò)的主節(jié)點(diǎn),主要負(fù)責(zé)整個(gè)網(wǎng)絡(luò)的初始化、頻率通道;并且負(fù)責(zé)整個(gè)設(shè)備的啟停;當(dāng)該主節(jié)點(diǎn)被激活后它就會(huì)建立一個(gè)無線個(gè)網(wǎng),之后容許其他的ZigBee網(wǎng)絡(luò)的子節(jié)點(diǎn)掃描并申請(qǐng)加入網(wǎng)絡(luò)。除此之外主節(jié)點(diǎn)還要負(fù)責(zé)接收和存儲(chǔ)由子節(jié)點(diǎn)收集的溫室環(huán)境因子數(shù)據(jù)。
2.2.2 精簡(jiǎn)功能設(shè)備的功能配置
系統(tǒng)預(yù)設(shè)了3個(gè)精簡(jiǎn)功能設(shè)備(RFD)作為ZigBee無線傳輸網(wǎng)絡(luò)的子節(jié)點(diǎn)。其主要功能是把由單片機(jī)收集到的傳感器網(wǎng)絡(luò)傳來的實(shí)時(shí)數(shù)據(jù)通過網(wǎng)絡(luò)傳遞到主節(jié)點(diǎn)。
2.2.3 ZigBee星型網(wǎng)絡(luò)的組建過程
任何一個(gè)網(wǎng)絡(luò)的建立都離不開協(xié)調(diào)器設(shè)備,可以說協(xié)調(diào)器(coordinator)是一個(gè)網(wǎng)絡(luò)中最重要的組件,因?yàn)閰f(xié)調(diào)器是組網(wǎng)的關(guān)鍵所在。星型網(wǎng)絡(luò)的建立過程如下:
首先,ZigBee網(wǎng)絡(luò)的建立需要一個(gè)網(wǎng)絡(luò)協(xié)調(diào)器,該協(xié)調(diào)器是全功能設(shè)備;初始化協(xié)調(diào)器,ZigBee協(xié)調(diào)器初始化化后,在信道內(nèi)搜索其他協(xié)調(diào)器,若是有其他協(xié)調(diào)器在工作,則向該協(xié)調(diào)器發(fā)組網(wǎng)申請(qǐng)。若是沒有其他協(xié)調(diào)器,則該設(shè)備自己組建ZigBee無線網(wǎng),主節(jié)點(diǎn)在初始化后就開始對(duì)所在通信通道做出監(jiān)視和等待狀態(tài);一旦有一個(gè)子節(jié)點(diǎn)向協(xié)調(diào)器發(fā)出組網(wǎng)請(qǐng)求后,協(xié)調(diào)器會(huì)分配一個(gè)16位PAN ID給這個(gè)子節(jié)點(diǎn)作為它唯一的標(biāo)識(shí),這個(gè)網(wǎng)絡(luò)短地址的內(nèi)容是依據(jù)這個(gè)子節(jié)點(diǎn)所處通道中所檢測(cè)到的通道能量及網(wǎng)絡(luò)號(hào)來決定的,在子節(jié)點(diǎn)分配完網(wǎng)絡(luò)段地址后就成功的加入了這個(gè)無線網(wǎng)。
在網(wǎng)絡(luò)建立以后,如果系統(tǒng)的設(shè)備很多的話,可能會(huì)出現(xiàn)網(wǎng)絡(luò)堆疊或者PAN ID沖突的現(xiàn)象,所以為了盡量減少這種錯(cuò)誤 可以在子節(jié)點(diǎn)出現(xiàn)沖突后初始化協(xié)調(diào)器來重置子節(jié)點(diǎn)的地址。
2.3 ZigBee節(jié)點(diǎn)與單片機(jī)控制模塊的無線傳輸
本系統(tǒng)的無線傳輸網(wǎng)絡(luò)搭建完畢后,需要進(jìn)一步對(duì)數(shù)據(jù)傳輸進(jìn)行軟件的設(shè)計(jì)。不管是監(jiān)測(cè)數(shù)據(jù)還是控制命令都是通過無線網(wǎng)絡(luò)傳輸?shù)?,因此ZigBee的總節(jié)點(diǎn)和子節(jié)點(diǎn)都與單片機(jī)的控制模塊有聯(lián)系。在對(duì)大棚室內(nèi)的環(huán)境數(shù)據(jù)進(jìn)行采集時(shí),CC2530芯片的主要工作流程:第一步是當(dāng)STC89C52單片機(jī)將采集到的數(shù)據(jù)傳給子節(jié)點(diǎn)時(shí),CC2530芯片會(huì)讀取串口數(shù)據(jù);在讀取到數(shù)據(jù)后系統(tǒng)會(huì)向總節(jié)點(diǎn)發(fā)出信息,觸發(fā)子節(jié)點(diǎn)發(fā)送任務(wù);最后CC2530芯片會(huì)將環(huán)境信息通過無線網(wǎng)絡(luò)發(fā)送到總節(jié)點(diǎn)。ZigBee無線網(wǎng)絡(luò)通信模式一共有兩種,其中一種是非信標(biāo)模式,而另一種就是信標(biāo)網(wǎng)絡(luò)模式。而我們的系統(tǒng)選擇非信標(biāo)網(wǎng)絡(luò)模式作為網(wǎng)絡(luò)通信模式,因?yàn)榉切艠?biāo)模式比較靈活,其子節(jié)點(diǎn)通過競(jìng)爭(zhēng)的方式加入擁擠的信道,而且芯片不會(huì)一直發(fā)送周期信標(biāo)幀。在非信標(biāo)工作方式下,發(fā)送MAC層或命令數(shù)據(jù)幀時(shí),會(huì)有一個(gè)隨機(jī)的等待周期,在這個(gè)周期過后,如是確定信道沒有處在忙碌(busy)狀態(tài),再發(fā)送MAC層命令和數(shù)據(jù)幀;如果確定當(dāng)前的信道狀態(tài)處于非常忙碌的狀態(tài),那么系統(tǒng)會(huì)再等一個(gè)任意長(zhǎng)的時(shí)間后,第二次再嘗試接入當(dāng)前信道。當(dāng)CC2530芯片收到單片機(jī)傳輸來的數(shù)據(jù)后,會(huì)直接給單片機(jī)傳輸一個(gè)確認(rèn)信號(hào),而不會(huì)理會(huì)當(dāng)前信道是否忙碌,ZigBee子節(jié)點(diǎn)會(huì)根據(jù)確認(rèn)信號(hào)來判斷數(shù)據(jù)發(fā)送成功與否[4]。
3 單片機(jī)控制模塊設(shè)計(jì)
本系統(tǒng)中的單片機(jī)控制模塊是系統(tǒng)控制的核心,單片機(jī)其中一個(gè)重要的功能是負(fù)責(zé)收集各個(gè)ZigBee子節(jié)點(diǎn)上所監(jiān)測(cè)到的環(huán)境因子數(shù)據(jù),控制數(shù)據(jù)的傳遞,將數(shù)據(jù)上傳至上位機(jī)。它的運(yùn)行過程見圖2:在給所有的設(shè)備的電源通電后,單片機(jī)在完成其初始化之后就進(jìn)入數(shù)據(jù)采集的狀態(tài)。一旦傳感器給單片機(jī)一個(gè)中斷請(qǐng)求信號(hào),單片機(jī)就進(jìn)入與該傳感器相應(yīng)的工作狀態(tài),通過模數(shù)轉(zhuǎn)換完成數(shù)據(jù)通道的檢測(cè),分別采集溫濕度、CO2濃度以及光照強(qiáng)度的實(shí)時(shí)檢測(cè)值,單片機(jī)能將這些數(shù)據(jù)進(jìn)行預(yù)處理,然后打包發(fā)送給ZigBee子節(jié)點(diǎn),最后這些數(shù)據(jù)通過ZigBee無線數(shù)據(jù)傳輸網(wǎng)絡(luò)傳遞到上位機(jī)。
4 總結(jié)
本文設(shè)計(jì)了一款基于ZigBee無線網(wǎng)絡(luò)的單片機(jī)智能溫室控制系統(tǒng),利用ZigBee技術(shù)的可擴(kuò)展性和傳輸快速等特點(diǎn),組建了能夠?qū)崟r(shí)監(jiān)測(cè)溫室環(huán)境并實(shí)時(shí)進(jìn)行自動(dòng)改善環(huán)境的智能控制系統(tǒng)。本系統(tǒng)很好的解決了實(shí)時(shí)數(shù)據(jù)監(jiān)測(cè)的問題,改變了過去只靠操作人員通過觀察作物生長(zhǎng)狀態(tài)而進(jìn)行測(cè)報(bào)的相對(duì)落后狀態(tài),對(duì)生產(chǎn)作物進(jìn)行即時(shí)的自動(dòng)監(jiān)測(cè),促進(jìn)生產(chǎn)資源集約高效利用,從而能夠大幅度提高農(nóng)業(yè)生產(chǎn)力。
【參考文獻(xiàn)】
[1]丁為民,汪小旵,李毅念.溫室環(huán)境控制與溫室模擬模型研究現(xiàn)狀分析[J].農(nóng)業(yè)機(jī)械學(xué)報(bào),2009,40(5):162-168.
[2]金純,羅祖秋,等.ZigBee技術(shù)基礎(chǔ)及案例分析.國(guó)防工業(yè)出版社,2008.
[3]王東.無線傳感器網(wǎng)絡(luò)系統(tǒng)設(shè)計(jì)與應(yīng)用[D].重慶:重慶大學(xué),2007.
[4]馬巧娟,鄭萍,等.基于ZigBee和LabVIEW的多點(diǎn)無線溫濕度采集系統(tǒng)設(shè)計(jì)[J].2009.
[5]黃萌.基于STM32集智能溫室和殺蟲為一體的控制系統(tǒng)的設(shè)計(jì)[J].湖北農(nóng)機(jī)化,2015(3):60-62.endprint