于泓博,李靜輝,陶佰睿
(1.齊齊哈爾大學 通信與電子工程學院,齊齊哈爾 161006;2.齊齊哈爾大學 現代教育中心,齊齊哈爾161006)
近年來農業(yè)的發(fā)展也緊跟時代的腳步隨之變遷,有機農業(yè)、智能農業(yè)的興起極大程度地將互聯網、物聯網等新興產業(yè)與農業(yè)相融合,為行業(yè)的發(fā)展注入了新的活力。農田的監(jiān)測信息是分析的重要數據來源,其迅速、實時和連續(xù)采集是實現精細農業(yè)的基礎。但是農業(yè)具有地域分散、對象多樣、遠離都市、通信條件落后、環(huán)境因子不確定和受環(huán)境影響明顯等特點,這些都給農田環(huán)境信息的快速獲取帶來了困難[1]。本設計提出了基于北斗衛(wèi)星系統的農田環(huán)境監(jiān)測系統解決方案,選取針對農田環(huán)境的主要幾種傳感器,通過ZigBee模塊進行無線組網,將數據匯總到ARM模塊處理,并通過北斗導航模塊進行定位從而實現數據的實時傳輸,其中ZigBee是一種非常適合農田實時監(jiān)測的無線網通訊技術,而北斗導航系統作為我國擁有自主知識產權的全球衛(wèi)星定位系統與ZigBee技術融合應用于農業(yè)環(huán)境監(jiān)測上,具有一定的創(chuàng)新性,推動實現物聯網+農業(yè)的發(fā)展,為智慧農業(yè)的實現起到一定的推動作用[2]。
北斗衛(wèi)星導航系統是中國自行研制的全球衛(wèi)星導航系統,繼美國全球定位系統GPS、俄羅斯和歐盟衛(wèi)星導航系統之后第四個成熟的衛(wèi)星導航系統。北斗衛(wèi)星導航系統空間段由5顆靜止軌道衛(wèi)星和30顆非靜止軌道衛(wèi)星組成[3]。2020年左右,建成覆蓋全球的北斗衛(wèi)星導航系統。其構成的衛(wèi)星系統向全球用戶提供高質量的定位、導航和授時服務,北斗衛(wèi)星導航系統構成如圖1所示。
圖1 北斗衛(wèi)星導航系統構成Fig.1 Beidou satellite navigation system
北斗衛(wèi)星導航系統促進了衛(wèi)星導航產業(yè)鏈形成,形成了完善的國家衛(wèi)星導航應用產業(yè)支撐、推廣和保障體系,推動了衛(wèi)星導航在國民經濟社會各行業(yè)的廣泛應用。該系統可在全球范圍內全天候、全天時為各類用戶提供高精度、高可靠的定位、導航、授時服務并兼具短報文通信能力[4]。
本系統主要包括PM2.5傳感器模塊、土壤濕度檢測模塊、空氣溫度檢測模塊、ZigBee終端節(jié)點和協調器節(jié)點、ARM主控模塊、北斗定位模塊和LCD顯示模塊,系統具體方案如圖2所示。
圖2 系統方案框圖Fig.2 System scheme block diagram
主控模塊采用ARM7中STM32模塊,該芯片屬于32位的微控制器,主要負責對北斗模塊和顯示模塊進行相關初始化,并接收和處理ZigBee協調節(jié)點發(fā)送來的數據信息,處理好的信息將在LCD屏中顯示,同時北斗衛(wèi)星模塊將這些數據實時地發(fā)送至農田環(huán)境監(jiān)控中心。由于ZigBee具有自動組網功能,所以系統采用多個ZigBee終端節(jié)點組成大規(guī)模監(jiān)控網絡,使監(jiān)控范圍增加,多個終端節(jié)點采集的數據最終匯聚到ZigBee協調器節(jié)點,協調器節(jié)點在整個網絡中只有一個,負責ZigBee無線傳感網的建立及維護[5]。同時接收各終端節(jié)點發(fā)來的數據,并通過串口轉發(fā)給主控模塊。終端節(jié)點負責采集所需的測量參數。每個節(jié)點都與PM2.5傳感器模塊、空氣溫度傳感器模塊和土壤濕度傳感器相連接,實現對空氣中的懸浮顆粒物濃度、空氣的溫度以及土壤濕度進行實時檢測和傳輸。本系統采用UM220北斗芯片模塊,完成地理坐標定位,得到所在點的經緯度,在主控模塊的控制下,將定位信息和傳感器采集農田環(huán)境參數發(fā)送至監(jiān)控中心[6],同時這些信息將顯示到LCD屏幕上。
本文采用基于雙系統多頻率的高性能SOC芯片和芯星通UM220-III N雙系統高性能GNSS模塊,能夠同時支持BD2、B1、GPS L1兩個頻點。UM220是針對車輛監(jiān)控、氣象探測和電信電力授時等應用推出的BD2/GPS雙系統模塊,其工作電壓為2~3.7 VDC,工作溫度為-40~+85℃,定位精度為 2.5 m,是市場上尺寸最小的BD2/GPS模塊,集成度高、功耗低,非常適合北斗系統大規(guī)模應用的需求。
作為相互通信需要,將北斗UM220的TXD2引腳連接嵌入式ARM 7模塊STM32的PA10引腳發(fā)送數據,將北斗UM220的RXD2引腳連接嵌入式STM32的PA9引腳接收數據。UM220的接口電路設計如圖3所示。
圖3 UM220接口電路Fig.3 UM220 interface circuit diagram
采用ILI9326LCD顯示屏,該模塊與主控模塊直接相連,主要負責動態(tài)顯示來自主控模塊的測量數據和定位信息,接口電路設計如圖4所示,LCD的DB0到DB15引腳連接到STM32的D0到D15引腳,用于傳輸顯示數據,LCD+和-用來調節(jié)顯示屏背光燈的亮度。
圖4 LCD接口電路Fig.4 LCD interface circuit diagram
本設計中,CC2530終端節(jié)點作為測量終端,也是任務的真正執(zhí)行者,除了具有基本的最小電路外,必須要同任務相關的DS18b20溫度傳感器、PM2.5空氣質量傳感器、YL-69土壤濕度傳感器相連接,終端節(jié)點接口電路如圖5所示,其中P05與YL-69的模擬輸出AO相連接,P06與PM2.5傳感器的模擬輸出AO相連接,P07與DS18B20的數據輸出DQ相連接。在本設計中均采用采集其模擬量的辦法,并通過CC2530內部的ADC(數模轉換)功能模塊,進行采集量從模擬量到數字量的轉換。DS18B20采用1-WIRE通信方式,其余CC2530僅通過DQ-P07連接。節(jié)點通過DQ根據協議發(fā)出不同的電平變化即可操作相關寄存器,進行初始化及讀取測量值。
圖5 終端節(jié)點模塊電路Fig.5 Terminal node module circuit diagram
CC2530協調器節(jié)點因為其主要任務是建立和維護網絡,并與ARM主控模塊進行串口通信,所以協調器上并未安置其他傳感器,本設計中選用其最小系統電路來作為CC2530協調器節(jié)點的基本電路設計。
YL-69土壤濕度傳感器可用于檢測土壤的水分含量,接口電路如圖6所示。當土壤水分含量低到預先設定的閾值時,傳感器輸出一個高電平,反之輸出低電平。傳感器的比較器采用LM393芯片,工作穩(wěn)定,其工作電壓為3.3 V~5 V,靈敏度可調。
圖6 濕度傳感器YL-69電路Fig.6 Humidity sensor YL-69 circuit diagram
本文中YL-69的探頭將探測到的數據傳由LM393比較芯片進行電壓的比較,將比較的結果通過OUT1引腳輸出至ZigBee CC2530的P0引腳。
系統的軟件分為3大部分,分別是ZigBee、ARM和北斗。從上電開始,系統分別進入初始化,傳感器節(jié)點將檢測到的溫度、濕度、可燃氣體濃度和光照強度等數據發(fā)送至協調器節(jié)點,協調器節(jié)點將數據發(fā)送至ARM進行數據解析,同時,北斗也將其定位信息發(fā)送到ARM,ARM在解析數據后,將其顯示在LCD屏幕上,系統的軟件流程如圖7所示。
由于系統外接模塊較多,所以每個功能獨立設計成子函數的形式,再由主程序依次調用每個子函數,從而實現不同的功能[7]。在編程語言上,本文采用適合將程序模塊化的C語言來實現,這樣不但可以提高編程速率,也方便了各個程序之間的調用和嵌套,使整個應用系統能更穩(wěn)定地運行下去[8]。該系統中的核心部分就是路由與終端節(jié)點算法,此算法決定系統整個ZigBee網絡通信的組成和信息的傳輸[9],算法流程如圖8所示。
圖7 系統軟件流程Fig.7 Schematic flow chart of system software
圖8 路由與終端節(jié)點工作流程Fig.8 Routing and terminal node work flow chart
系統初始化主要是在上電后,對各個模塊完成初始化,以便之后的程序加載[10],首先,加載頭文件#include"MT_UART.h"來進行串口的初始化、#inclu de"ds18b20.h"來進行溫度傳感器DS18B20的初始化、#include"hal_adc.h"來進行芯片內部數模轉換功能的初始化,#include"SampleApp.h"來進行ZigBee軟件的初始化,對各個采集模塊進行宏定義:
選取不同時間段對大田的溫度、土壤的濕度以及空氣的PM2.5進行測量,驗證系統準確度,該系統測得的測量值與標準化設備計量得的標準值進行比較,并進行誤差分析,具體如表1所示。
表1 溫度、濕度及PM2.5標準值、測量值及誤差Tab.1 Temperature,humidity and PM2.5 standard value,measured value and error
從表1中可以看出,實驗中分別測量了7個不同時刻的溫、濕度及PM2.5數據,對測得數據分析,該系統測量的溫濕度存在一定的誤差,溫度的相對誤差值在±2%的范圍之內,測量值比實際值偏??;濕度誤差值小于2%,測量值比實際值偏大;PM2.5實際值比測量值偏小,相對誤差在±2.5%之間,在傳感器的允許的范圍之內。以上的實驗數據說明,系統誤差值在允許的誤差范圍之內,系統的準確性達到要求。
本文設計的監(jiān)測系統實現了遠距離無線農田環(huán)境主要數據的采集,其中ZigBee終端可以自由組成無線傳感器網,該網絡具有容量大、傳輸距離遠和可擴展等特點,可以對大面積農田的土壤濕度、空氣溫度以及空氣質量PM2.5進行實時性遠程監(jiān)測,與傳統的監(jiān)測方式相比,不受時間和空間的限制,從而提高管理人員的工作效率,更加及時地了解農作物的生長環(huán)境。本文采用的北斗通信技術是我國未來衛(wèi)星通信業(yè)務的主流,不受地域、時域和周邊環(huán)境限制,實現對農田的遠程監(jiān)測,系統具有測量誤差小、數據通信穩(wěn)定以及效率高等特點,其應用領域和前景廣闊。
[1]任偉,顧小莉,王麗華.基于ZigBee的低功耗無線溫室環(huán)境監(jiān)測系統設計[J].農機化研究,2014(9):103-107.
[2]王士明,俞阿龍,楊維衛(wèi).基于ZigBee的大水域水質環(huán)境監(jiān)測系統設計[J].傳感器與微系統,2014,33(11):102-105.
[3]于泓博,于泓琦,王志良.基于北斗和ZigBee的環(huán)境質量監(jiān)測系統設計[J].計算機測量與控制,2014,22(8):2374-2376.
[4]Qian Y,Wu X,Lu J.Sencond-order consensus of multi-agent systems with nonlinear dynamics via impulsive control[J].Neuro computing,2014(125):142-147.
[5]Meng D,Jia Y.Formation control for multi-agent systems through an iterative learning design approach[J].International Journal of Robust and Nonlinear Control,2014,24(3):340-361.
[6]Sahu P K,Wu E H K,Sahoo J.Dual RSSI trend based localization for wireless sensor networks[J].IEEE Sensors Journal,2013,13(8):3115-3123.
[7]De Almeida A,Santos B,Paolo B,et al.Solid state lighting review-potential and challenges in Europe[J].Renewable and Sustainable Energy Reviews,2014(34):30-48.
[8]Li J B,Hu Y Z.Design of ZigBee network based on CC2530[J].Electronic Design Engineering,2011,19(16):108-111.
[9]Cakici S,Erturk I,Atmaca S,et al.A novel cross-layer routing protocol for increasing packet transfer reliability in mobile sensor networks[J].Wireless Personal Communications,2014,77(3):2235-2254.
[10]Tan D D,Kim D S.Dynamic traffic-aware routing algorithm for multi-sink wireless sensor networks[J].Wireless Networks,2014,20(6):1239-1250.