馮 琪,陳 光,陳澤虎
(東華大學信息科學與技術學院,上海 201620)
近年來,溫室大棚種植技術得到了迅速的推廣和應用,它提高了作物的產(chǎn)量,解決了作物生長的季節(jié)問題。然而,溫室作物對其種植環(huán)境要求較高,怎樣對室內(nèi)的溫度、濕度及光照度等環(huán)境因子進行智能控制已成為人們正在研究和解決的重要課題。從國外引進的智能溫室大棚價格昂貴,維護費用極高,因而研制高性能的大棚監(jiān)控系統(tǒng)具有重要的現(xiàn)實意義。
本文針對目前溫室價格昂貴、布線困難、功耗高的特點,設計了一個智能溫室監(jiān)控系統(tǒng)。通過各個模塊的軟硬件設計以及自適應加權數(shù)據(jù)融合算法的設計,實現(xiàn)溫室內(nèi)的各個因子的檢測、無線傳輸和實時監(jiān)控。
圖1 溫室智能監(jiān)控系統(tǒng)結構框圖
溫室智能監(jiān)控系統(tǒng)結構如圖1所示。MCU采用EFM32TG110,主要電路模塊[2]包括傳感器電路、電源電路、無線傳感電路。傳感器電路將實時參數(shù)發(fā)送給MCU,MCU對數(shù)據(jù)進行采集與預處理,并通過無線模塊發(fā)送給協(xié)調(diào)器,經(jīng)過數(shù)據(jù)融合,最終將參數(shù)通過串口在電腦上實時顯示出來,并能根據(jù)需要進行一定的調(diào)控。
單片機選用的是EFM32TG110[3]。該芯片是32位的ARM處理器,專業(yè)的低功耗芯片。最高頻率可達32 MHz。一共有5種功耗模式,其深度睡眠模式的最低功耗電流只有20 nA,具有超快的喚醒能力,電壓3.3 V。
傳感器電路由光照傳感器和溫濕度復合傳感器組成。溫濕度復合傳感器采用AM2301。采用單總線。若要準確讀數(shù),間隔時間最小是2 s。單片機采用I2C通信方式讀寫B(tài)H1750FVI,它作為本設計的光照傳感器。
本設計中的各節(jié)點選用CC2530芯片,作為Zig-Bee模塊,實現(xiàn)數(shù)據(jù)處理及ZigBee無線通信功能。拓撲結構上,本設計采用星型網(wǎng)絡,如圖2所示,1,2,3,...,n是無線傳感器網(wǎng)絡的傳感器節(jié)點。0是星形網(wǎng)絡的協(xié)調(diào)器節(jié)點,能將收集到的數(shù)據(jù)最終通過串口發(fā)送給PC接收。也能將PC的指令發(fā)送給各傳感器節(jié)點,最終通過串口發(fā)送給MCU來做出決策。
電源電路:電源芯片選TPS5430DDAR提供12 V的電壓,轉換成5 V和3.3 V。
燈控電路:此處使用繼電器JGX-3F來驅動日光燈的開斷。
最終輸出的數(shù)據(jù)經(jīng)過串口轉USB接口在電腦上顯示。顯示的內(nèi)容包括溫度信息(范圍0~50℃)、光照信息和串口端口選擇。如果溫度過高,將會產(chǎn)生報警。另外還可以通過選擇燈控開關來實現(xiàn)燈光的控制。
通訊協(xié)議用于實現(xiàn)上位機與下位機的通信,如表1所示。通信數(shù)據(jù)格式分為上行協(xié)議與下行協(xié)議。上行協(xié)議即MCU上傳數(shù)據(jù)的協(xié)議,上行協(xié)議的格式為首位為0xef,其次為辨識位、ID、數(shù)據(jù)高字節(jié)、數(shù)據(jù)低字節(jié)、校驗和0xfe;辨識位如表2所示,當Mcu收到下行協(xié)議之后,將溫度、光照、濕度數(shù)據(jù)封裝成上行協(xié)議,上位機對協(xié)議進行解析,當收到握手協(xié)議時說明連接成功,即可以進行轉換,根據(jù)辨識位、分離溫度、光照、濕度、燈狀態(tài)數(shù)據(jù),當收到上報結束指令時,將數(shù)據(jù)進行顯示。下行協(xié)議是使單片機發(fā)送數(shù)據(jù)的協(xié)議,其格式為:“0xef,0xc0,0x00,0x00,0x00,0xc0,0xfe”。另外,本系統(tǒng)也可以控制光照,開關燈的協(xié)議為首位為0xef,其次為 C5、ID、00或 01(關或開)、校驗和0xfe。
表1 通信協(xié)議
表2 辨識位
系統(tǒng)單片機的主程序流程如圖3所示。
圖3 主程序流程圖
系統(tǒng)上電之后,先進行時鐘、各I/O端口及通信端口初始化。傳感器初始化之后,MCU就開始對數(shù)據(jù)進行采集,并將數(shù)據(jù)放置在設置的緩沖區(qū)數(shù)組中。當單片機收到指令,產(chǎn)生中斷后,便對數(shù)據(jù)進行處理,并通過算術平均法,利用傳感器節(jié)點的緩存機制將多次采樣的同種類型的數(shù)據(jù)合并成一條數(shù)據(jù)信息。設節(jié)點的采樣頻率為f,可以設定,從上次接收的指令到這次接收的指令的時間間隔T,在T間隔內(nèi),MCU共采集了 k次數(shù)據(jù),這些數(shù)據(jù)為 xq(q=1,2,...,k)。MCU計算出緩存數(shù)據(jù)的算術平均值(k),通過MCU的串口發(fā)送給ZigBee。然后將緩存中的數(shù)據(jù)全部清除,為下一次采集N個數(shù)據(jù)做準備。
均值為:
圖4 傳感器及協(xié)調(diào)器節(jié)點程序流程圖
傳感器及協(xié)調(diào)器節(jié)點程序流程如圖4所示。ZigBee終端節(jié)點主要作用是傳輸MCU采集好的溫濕度,光照數(shù)據(jù)給ZigBee協(xié)調(diào)器[4],并接收來自協(xié)調(diào)器的相關命令。該節(jié)點上電后,首先硬件初始化和協(xié)議棧初始化,搜索可用信道并加入,成功加入后進入省電模式。普通情況下,ZigBee進入低功耗模式。有數(shù)據(jù)時,采用中斷喚醒的工作機制。當有數(shù)據(jù)傳輸請求時,喚醒工作,串口接收MCU采集的數(shù)據(jù)并通過無線模塊發(fā)送ZigBee協(xié)調(diào)器,發(fā)送完后重新回到低功耗模式。
協(xié)調(diào)器節(jié)點上電后,初始化芯片與協(xié)議棧,建立ZigBee網(wǎng)絡。當有節(jié)點申請加入網(wǎng)絡時,準許加入并分配一個16位的網(wǎng)絡短地址,協(xié)調(diào)器不能處于休眠狀態(tài),如果收到來自上位機的發(fā)送數(shù)據(jù)指令,則將通過無線通信發(fā)送給終端節(jié)點,當接收到來自終端節(jié)點的數(shù)據(jù)時,將會將原來的數(shù)據(jù)通過串口發(fā)送到上位機,以便上位機能夠對各種數(shù)據(jù)包進行解析。
無線傳感網(wǎng)中有很多的節(jié)點,數(shù)據(jù)融合是指將星型網(wǎng)絡中的各個傳感器的獲取值進行綜合,從而能夠減少無線傳輸?shù)臄?shù)據(jù)量,有效地減少各個節(jié)點的耗能,并且能夠消除數(shù)據(jù)采集的不確定性,提高準確度。對于數(shù)據(jù)來說,均方誤差越小,則融合值的波動越小,從而得到的數(shù)據(jù)越接近于真實值。
圖5 自適應加權數(shù)據(jù)融合模型圖
圖5是自適應加權數(shù)據(jù)融合模型圖,自適應加權數(shù)據(jù)融合算法[5]的實現(xiàn)方法是:根據(jù)傳感器節(jié)點傳輸?shù)臄?shù)據(jù)自適應地確定其對應的權數(shù),以使數(shù)據(jù)融合后的均方誤差最小為條件,來求融合值。如公式(3)所示。其中W1,W2,Wi為使得方差最小的權值。各傳感器節(jié)點的采集多次的數(shù)據(jù)平均值為(k),發(fā)送給協(xié)調(diào)器,協(xié)調(diào)器進行數(shù)據(jù)融合后的加權平均數(shù)據(jù)融合值為:
其中,W1,W2,…,Wn的權值和為1 且有:
總均方平方和誤差δ2為:
由于式(5)為多元二次函數(shù),有最小值,通過對其求導,就可以求得最優(yōu)加權因子為 W'i,如公式(6)。代入式(3)從而可求融合值。
為了驗證該系統(tǒng)獲得融合數(shù)據(jù)的可靠性,依次對傳感器各節(jié)點進行采樣。以溫度、濕度數(shù)據(jù)為例,相等的時間為間隔,一次采樣內(nèi),各個傳感器的數(shù)據(jù)如表3所示。
根據(jù)公式(3)和公式(5),用加權算法得到的最終結果溫度=25.6,濕度=57.7。總體方差溫度為0.0057635,濕度為 0.166444。對比之下,用均值算法得到的平均值,溫度為25.57,濕度為56.82,其方差溫度為0.08223,濕度為0.8839??梢园l(fā)現(xiàn)用自適應加權算法相對于均值算法來說具有更小的方差,其數(shù)據(jù)的穩(wěn)定性更強。
表3 溫濕度數(shù)據(jù)圖
圖6 上位機顯示圖
圖6是上位機上實時顯示的大棚內(nèi)的各項指標,可以實時顯示4個區(qū)域的值,其中包括溫度、濕度及光照,并且可以觸動按鍵從而控制繼電器以控制燈光,從而補光。最終實現(xiàn)對上述環(huán)境因素的實時監(jiān)測或控制。
由以上結果分析可得,本智能監(jiān)控系統(tǒng)不但能夠實現(xiàn)對環(huán)境因子的實時監(jiān)控,同時由于能夠有效地抑制誤差,提高了融合數(shù)據(jù)的精度,從而達到了節(jié)能的目的。
本文研究了智能大棚的溫度、濕度及光照等參數(shù)的采集、傳輸及監(jiān)控的原理和方法,并以EFM32TG110及CC2530芯片為核心硬件,設計了智能大棚監(jiān)控系統(tǒng)的總體結構,并通過數(shù)據(jù)采集、處理及通信的軟件設計以及數(shù)據(jù)融合算法的設計,實現(xiàn)了大棚內(nèi)的多點檢測、無線傳輸和實時智能監(jiān)控,具有良好的經(jīng)濟與實用價值。
[1]程雪,王彬,賈北平.基于無線通信的多點溫濕度采集系統(tǒng)的設計[J].農(nóng)機化研究,2009,31(8):191-192,201.
[2]高云,梁秀英,王為.基于MSP430的溫室多路數(shù)據(jù)采集系統(tǒng)[J].農(nóng)機化研究,2009,31(8):187-190.
[3]姚鋼.EFM 32 Gecko實現(xiàn)超低功耗設計[J].EDN China電子設計技術,2010,5:22,24.
[4]高守瑋,吳燦陽.ZigBee技術實踐教程[M].北京:北京航空航天大學出版社,2009:354-368.
[5]邱爽,吳巍.無線傳感網(wǎng)絡數(shù)據(jù)融合算法研究[J].武漢理工大學學報,2008,30(7):119-122.
[6]于福海,樊明輝,王龍奇.大棚溫濕度無線實時監(jiān)控系統(tǒng)的設計[J].物聯(lián)網(wǎng)技術,2012,2(10):29-31.
[7]韓敏,李書琴,張靜,等.智能溫室遠程監(jiān)控系統(tǒng)的研究與實現(xiàn)[J].微計算機信息,2007,23(29):67-68,300.
[8]張澤武,朱艷,葛桂月,等.環(huán)境智能傳感系統(tǒng)研制[J].無線互聯(lián)科技,2012(1):20-23.
[9]羅海勇,李錦濤,趙方,等.溫室無線測控網(wǎng)絡信息采集分系統(tǒng)設計研究[J].微電子學與計算機,2007,24(10):1-4,7.
[10]馬國美,宋仲康.基于DSP的智能大棚系統(tǒng)的設計[J].儀表技術,2011(8):36-37.
[11]文斌,寧志強,陳愛萍.基于“北斗一代”的ZigBee無線網(wǎng)關設計[J].電訊技術,2011,51(9):92-95.
[12]陳國紹,丁莉,王中生.基于ZigBee的大棚環(huán)境監(jiān)測系統(tǒng)設計[J].物聯(lián)網(wǎng)技術,2013,3(10):16-18.
[13]鞏大力,虎嘯.基于CAN總線交叉口交通監(jiān)控系統(tǒng)設計[J].河北工業(yè)大學學報,2009,38(2)115-118.
[14]章偉聰,俞新武,李忠成.基于CC2530及ZigBee協(xié)議棧設計無線網(wǎng)絡傳感器節(jié)點[J].計算機系統(tǒng)應用,2011,20(7):184-187,120.
[15]劉洪朋,葛廣英,周松林.基于ZigBee的電解槽溫度智能控制系統(tǒng)設計與實現(xiàn)[J].自動化與儀表,2012,27(2):37-40.
[16]衣翠平,柏逢明.基于ZigBee技術的CC2530糧庫溫濕度檢測系統(tǒng)研究[J].長春理工大學學報(自然科學版),2011,34(4):53-57.
[17]袁淑萍.ZigBee組網(wǎng)技術在智能溫室系統(tǒng)中的運用[J].信息安全與技術,2012(9):97-99,105.
[18]沈卓,張榮標,郭建光,等.基于ZigBee和CDMA的溫室遠程測控系統(tǒng)的設計[J].中國新通信,2010,12(1):73-76.
[19]羅巍巍,徐曉.基于ZigBee和RFID的環(huán)形流水線監(jiān)測系統(tǒng)設計[J].傳感器與微系統(tǒng),2013(11):98-100,104.