(西南交通大學(xué) 機(jī)械工程學(xué)院,成都610031)
隨著我國(guó)經(jīng)濟(jì)的快速發(fā)展,作為一個(gè)傳統(tǒng)的農(nóng)業(yè)大國(guó),提高它的經(jīng)濟(jì)效益是現(xiàn)階段農(nóng)業(yè)發(fā)展的迫切需求。基于此,發(fā)展智能溫室大棚變得十分有意義??萍嫉倪M(jìn)步使無(wú)線傳感網(wǎng)絡(luò)在此領(lǐng)域中具有廣闊的應(yīng)用前景,ZigBee技術(shù)作為無(wú)線網(wǎng)絡(luò)中的一種協(xié)議標(biāo)準(zhǔn),更是以其低功耗、低成本、高可靠性等優(yōu)點(diǎn)[1]而廣泛應(yīng)用于工業(yè)、醫(yī)療、農(nóng)業(yè)等領(lǐng)域中。在此,采用ZigBee技術(shù)實(shí)現(xiàn)下位機(jī)與上位機(jī)的無(wú)線通信,有效地減少了溫室大棚的地理位置[2]、物理路線、復(fù)雜環(huán)境因素的影響,提高了數(shù)據(jù)的傳輸效率[1-2]。該系統(tǒng)采用上位機(jī)WinCC友好的人機(jī)交互界面,對(duì)下位機(jī)上傳的數(shù)據(jù)實(shí)時(shí)監(jiān)控,根據(jù)相關(guān)的數(shù)據(jù)處理分析,發(fā)送命令給工控機(jī)從而做出相應(yīng)的處理措施。系統(tǒng)的實(shí)時(shí)性好,用戶操作方便,符合溫室大棚智能管理的需求[3]。
根據(jù)溫室大棚系統(tǒng)的要求,將該系統(tǒng)劃分為4個(gè)模塊[4],分別為數(shù)據(jù)采集模塊、數(shù)據(jù)傳輸模塊、數(shù)據(jù)處理模塊、控制模塊,如圖1所示。
圖1 溫室大棚系統(tǒng)整體構(gòu)架Fig.1 Overall framework of the greenhouse system
數(shù)據(jù)采集模塊由多個(gè)溫室大棚子系統(tǒng)構(gòu)成,每個(gè)子系統(tǒng)由多個(gè)ZigBee的無(wú)線網(wǎng)絡(luò)協(xié)調(diào)器以及多個(gè)傳感器節(jié)點(diǎn)所組成。傳感器節(jié)點(diǎn)所采集的數(shù)據(jù)以無(wú)線的方式傳到ZigBee的網(wǎng)絡(luò)協(xié)調(diào)器中,經(jīng)過(guò)串口通信將數(shù)據(jù)傳到ARM板上,然后實(shí)時(shí)地顯示出來(lái),最后經(jīng)過(guò)嵌入式網(wǎng)關(guān)將數(shù)據(jù)傳輸?shù)缴衔粰C(jī),通過(guò)上位機(jī)對(duì)數(shù)據(jù)的監(jiān)控與分析,發(fā)送相應(yīng)的命令給工控機(jī),從而做出相應(yīng)的應(yīng)對(duì)措施。
數(shù)據(jù)采集模塊如圖2所示,各節(jié)點(diǎn)上分別連有溫濕度傳感器、光照傳感器、CO2濃度傳感器、測(cè)土壤pH值傳感器,分別采集溫室大棚的溫濕度、光照強(qiáng)度、CO2濃度以及土壤的酸堿性等相關(guān)數(shù)據(jù)[5],所有分布式節(jié)點(diǎn)的數(shù)據(jù)都匯聚在ZigBee的網(wǎng)絡(luò)協(xié)調(diào)器上,最后將這些數(shù)據(jù)通過(guò)串口傳到ARM板上。
圖2 數(shù)據(jù)采集模塊構(gòu)架Fig.2 Frame of data acquisition module
在各節(jié)點(diǎn)向網(wǎng)絡(luò)協(xié)調(diào)器傳送數(shù)據(jù)的時(shí)候,網(wǎng)絡(luò)協(xié)調(diào)器只需要輸入各節(jié)點(diǎn)的MAC地址,將各節(jié)點(diǎn)加入到該協(xié)調(diào)器的網(wǎng)絡(luò)上,無(wú)需對(duì)節(jié)點(diǎn)進(jìn)行任何配置,節(jié)點(diǎn)上也不需要任何配置接口,連接非常方便。各節(jié)點(diǎn)的數(shù)據(jù)傳送到網(wǎng)絡(luò)協(xié)調(diào)器上,再經(jīng)過(guò)串口通信傳到ARM板上。
目前,市場(chǎng)上的無(wú)線射頻發(fā)送芯片的種類(lèi)很多[2],工作頻段從433 MHz,968 MHz到ZigBee的2.4 GHz等有多個(gè)頻段。在此采用TI公司推出的CC2530芯片。符合IEEE802.15.4標(biāo)準(zhǔn)的2.4 GHz射頻發(fā)射器,用來(lái)實(shí)現(xiàn)ZigBee應(yīng)用的單片RF收發(fā)器。該芯片的工作頻率范圍是2400~2483.6 MHz,支持?jǐn)?shù)據(jù)傳輸率到250 kb/s,它集成了業(yè)界領(lǐng)先的RF收發(fā)器,增強(qiáng)工業(yè)的8051MCU,可編程FLASH存儲(chǔ)器、8 kB RAM及其它強(qiáng)大功能,具有高度集成、低成本、低功耗、低電壓等特點(diǎn),能夠進(jìn)行魯棒的無(wú)線通信。因此,采用CC2530芯片可以滿足溫室大棚系統(tǒng)的無(wú)線數(shù)據(jù)接收與發(fā)射的要求。將CC2530芯片的P0口設(shè)為優(yōu)先級(jí)高的SPI串口,經(jīng)SPI通信接口將各傳感器所采集的信息傳到CC2530的射頻電路上[3,6],電路結(jié)構(gòu)如圖3、圖4所示。
圖3 DHT11溫濕度傳感器連接結(jié)構(gòu)Fig.3 DHT11 temperature and humidity sensor connection structure
圖4 BH1750光照傳感器連接結(jié)構(gòu)Fig.4 BH1750 light sensor connection structure
另外,pH值傳感器和CO2傳感器與CC2530的連接結(jié)構(gòu)圖與圖3,圖4所示的2個(gè)傳感器類(lèi)似,這里不再贅述。圖4之所以加有1個(gè)100 nF的電容,是因?yàn)閭鞲衅魃想姾笠3? s以越過(guò)其不穩(wěn)定的狀態(tài),在此期間無(wú)法發(fā)送任何指令,增加1個(gè)電容可以起到去耦濾波的作用。
所設(shè)計(jì)的數(shù)據(jù)采集系統(tǒng)主要是溫室大棚系統(tǒng)中傳感器對(duì)大棚內(nèi)環(huán)境信息的采集,主要的操作流程如下:對(duì)CC2530芯片進(jìn)行GPIO口、時(shí)鐘的初始化;設(shè)置ADC的工作模式、時(shí)鐘、采樣周期、觸發(fā)方式、數(shù)據(jù)對(duì)齊方式。完成ADC的參數(shù)配置后就可以等待采樣數(shù)據(jù)了。當(dāng)有中斷源觸發(fā)中斷時(shí),就會(huì)進(jìn)入中斷服務(wù)子程序啟動(dòng)A/D轉(zhuǎn)換,對(duì)4個(gè)傳感器所連接的通道進(jìn)行檢測(cè),接收傳感器所采集的數(shù)據(jù)。其程序流程如圖5所示。
圖5 數(shù)據(jù)采集節(jié)點(diǎn)程序流程Fig.5 Data acquisition node program flow chart
底層數(shù)據(jù)采集完畢,數(shù)據(jù)采集終端節(jié)點(diǎn)開(kāi)始向ZigBee網(wǎng)絡(luò)協(xié)調(diào)器發(fā)送數(shù)據(jù)。RFD節(jié)點(diǎn)的這個(gè)工作過(guò)程大致分為3個(gè)階段:?jiǎn)?dòng)階段、發(fā)送階段、接收階段。
啟動(dòng)階段創(chuàng)建一個(gè)basicRfcfg_t的數(shù)據(jù)體結(jié)構(gòu),這個(gè)結(jié)構(gòu)體中的參數(shù)包含有節(jié)點(diǎn)的PANID,RF通道等參數(shù)。接著調(diào)用basicRfZint()的函數(shù)進(jìn)行協(xié)議的初始化。
發(fā)送階段創(chuàng)建一個(gè)buffer,將要傳入的數(shù)據(jù)放入playload中,最多可以放103個(gè)字節(jié);將playload放入buffer中,調(diào)用basicRfsendPacket(u16destAddr,u8*plaiload,u8length)函數(shù)發(fā)送。等待接收端的應(yīng)答,若返回的是SUCCESS,則發(fā)送成功,否則發(fā)送失敗。basicRfsendPacket()函數(shù)調(diào)用起來(lái)十分方便,只需要傳遞3個(gè)參數(shù),即接收端的地址、playload指向發(fā)送緩沖區(qū)的指針以及發(fā)送數(shù)據(jù)長(zhǎng)度length,就可以將數(shù)據(jù)發(fā)送出去。
接收階段上層通過(guò)檢測(cè)函數(shù)basicRfPacketIsReady(),實(shí)時(shí)檢測(cè)是否收到一個(gè)數(shù)據(jù)包。如果收到數(shù)據(jù), 則調(diào)用 basicRfReceive(u8pRxData,u8len,u16*pRssi)將接收的數(shù)據(jù)復(fù)制到buffer中,然后讀取buffer中的數(shù)據(jù)即可,接收端的函數(shù)也只需要配置3個(gè)參數(shù):接受的數(shù)據(jù)、接收數(shù)據(jù)的長(zhǎng)度、指向接受的緩沖區(qū)的指針。
ZigBee網(wǎng)絡(luò)協(xié)調(diào)器[7]接收數(shù)據(jù)后,經(jīng)過(guò)串口通信將數(shù)據(jù)傳到ARM芯片上,ARM接收到信息后可以實(shí)時(shí)地顯示出來(lái),并設(shè)置其參數(shù)閾值,當(dāng)超過(guò)預(yù)定值,則可以以短信的方式發(fā)給用戶。最后將這些采集完的數(shù)據(jù)打包通過(guò)嵌入式網(wǎng)關(guān)發(fā)送給上位機(jī)[7]。匯聚節(jié)點(diǎn)程序流程如圖6所示。
圖6 匯聚節(jié)點(diǎn)程序流程Fig.6 Sink node program flow chart
上位機(jī)軟件采用了WinCC組態(tài)軟件。WinCC是一個(gè)集成人機(jī)界面和監(jiān)控管理的系統(tǒng),是結(jié)合西門(mén)子公司在過(guò)程自動(dòng)化領(lǐng)域中的先進(jìn)技術(shù)和Microsoft PC軟件技術(shù)的強(qiáng)大功能的產(chǎn)物。它提供了適用于工業(yè)的圖形顯示、消息報(bào)警、過(guò)程值歸檔以及報(bào)表打印等模塊,具有高性能的過(guò)程耦合、快速的畫(huà)面更新,以及可靠的數(shù)據(jù)管理功能。能夠滿足客戶的復(fù)雜要求。
所采用的組態(tài)軟件WinCC,通過(guò)ARM的通信模塊實(shí)現(xiàn)連接,自動(dòng)動(dòng)態(tài)采集子系統(tǒng)的信號(hào),對(duì)監(jiān)控的參數(shù)進(jìn)行實(shí)時(shí)報(bào)警,實(shí)現(xiàn)遠(yuǎn)程監(jiān)控[8-9]。針對(duì)溫室大棚系統(tǒng)的特點(diǎn),靈活設(shè)計(jì)動(dòng)畫(huà)動(dòng)態(tài)顯示、流程控制、數(shù)據(jù)采集、網(wǎng)絡(luò)數(shù)據(jù)傳輸、工程報(bào)表、數(shù)據(jù)與歷史曲線和實(shí)時(shí)曲線顯示等諸多功能,并能保存歷史數(shù)據(jù)為系統(tǒng)分析使用,系統(tǒng)功能如圖7所示。
圖7 WinCC人機(jī)交互界面功能Fig.7 WinCC human-computer interactive interface function
所研究的溫室大棚系統(tǒng)中充分利用了ZigBee無(wú)線技術(shù)的低功耗、低成本、高可靠性的優(yōu)點(diǎn),解決了實(shí)際生活中溫室大棚系統(tǒng)布線問(wèn)題;采用了操作性和交互性良好的上位機(jī)軟件WinCC,使得用戶可以方便地隨時(shí)查看各個(gè)溫室大棚子系統(tǒng)的環(huán)境參數(shù)信息[8],WinCC根據(jù)采集到的信息能夠進(jìn)行實(shí)時(shí)監(jiān)控[9],根據(jù)監(jiān)控的信息實(shí)時(shí)地反饋給工控機(jī),從而能夠保證自動(dòng)地去調(diào)節(jié)和控制溫室大棚系統(tǒng),使整個(gè)系統(tǒng)真正能夠發(fā)揮其在實(shí)際生活中的作用。
[1]張偉濱.基于Zigbee溫室大棚遠(yuǎn)程監(jiān)控系統(tǒng)研究與實(shí)現(xiàn)[D].黑龍江:東北石油大學(xué),2014.
[2]張勝.基于ZigBee無(wú)線傳感網(wǎng)和模糊控制的溫室番茄智能灌溉系統(tǒng)設(shè)計(jì)[D].浙江:浙江大學(xué),2011.
[3]龍建明,熊剛,張爭(zhēng)剛,等.基于STC89C52的溫室大棚溫濕度控制器[J].計(jì)算機(jī)與現(xiàn)代化,2015,31(3):88-90.
[4]張青山.段建東基于ZigBee的開(kāi)關(guān)柜觸頭溫度在線監(jiān)測(cè)預(yù)警系統(tǒng)[J].高壓電器,2015,58(4):29-35.
[5]譚成兵.基于ZigBee技術(shù)的溫室大棚環(huán)境監(jiān)控系統(tǒng)應(yīng)用探究[J].電子測(cè)試,2015,33(4):110-112.
[6]王素青,吳超.基于CC2530的環(huán)境監(jiān)測(cè)系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)[J].計(jì)算機(jī)測(cè)量與控制,2015,23(8):2650-2653.
[7]張新,陳蘭生,趙俊.基于物聯(lián)網(wǎng)技術(shù)的智慧農(nóng)業(yè)大棚設(shè)計(jì)與應(yīng)用[J].中國(guó)農(nóng)機(jī)化學(xué)報(bào),2015,36(5):90-95.
[8]田野,徐保強(qiáng),于欣欣,等.溫室大棚環(huán)境遠(yuǎn)程監(jiān)控及自動(dòng)灌溉系統(tǒng)的設(shè)計(jì)[J].機(jī)械工程與自動(dòng)化,2015,44(3):149-151.
[9]馬海.基于ZigBee無(wú)線傳感器網(wǎng)絡(luò)的遠(yuǎn)程數(shù)據(jù)監(jiān)測(cè)的設(shè)計(jì)與實(shí)現(xiàn)[D].湖北:武漢理工大學(xué),2010.