蘇靜池 韓改寧 李永鋒 張潔 石妍
摘 要:為了實現(xiàn)水資源合理利用,發(fā)展節(jié)水供水,改善生態(tài)環(huán)境,設(shè)計一種基于無線傳感器網(wǎng)絡(luò)的智能灌溉系統(tǒng)。該設(shè)計以無線傳感器網(wǎng)絡(luò)為基礎(chǔ),采用基于CortexTM-A8體系結(jié)構(gòu)的S5PV210處理器芯片作為應(yīng)用網(wǎng)關(guān)的核心處理器,使用ZigBee模塊進行無線短距離通信,并且利用傳感器獲取土壤信息,控制層每個節(jié)點都是使用基于Cortex-M3t體系的STM32F103RBT6單片機作為主控CPU,最終控制水閥開關(guān)以及噴水時間,實現(xiàn)農(nóng)業(yè)中的智能控制。實驗表明,該設(shè)計達到了預(yù)期目標。
關(guān)鍵詞:CortexTM-A8;STM32;ZigBee;智能灌溉;無線傳感器;網(wǎng)關(guān)
中圖分類號:TP39文獻標識碼:A文章編號:2095-1302(2020)10-00-05
0 引 言
水資源已成為21世紀可持續(xù)發(fā)展的一個關(guān)鍵問題。中國水資源已處于相當匱乏的狀態(tài),并且全國大量的廢、污水未經(jīng)處理或處理未達標就直接排放造成了嚴重的水污染,少量的河流水質(zhì)低于農(nóng)田供水標準。水是農(nóng)業(yè)的命脈,是生態(tài)環(huán)境的控制性要素,同時又是戰(zhàn)略性的經(jīng)濟資源[1]。為了實現(xiàn)水資源合理利用,發(fā)展節(jié)水供水,改善生態(tài)環(huán)境,采用智能灌溉系統(tǒng)抽取地下水灌溉農(nóng)田,是我國目前物聯(lián)網(wǎng)農(nóng)業(yè)的關(guān)鍵,也是實現(xiàn)可持續(xù)發(fā)展的基礎(chǔ)。運用先進的物聯(lián)網(wǎng)技術(shù)、計算機和控制技術(shù)可以有效地提高農(nóng)業(yè)灌溉用水效率和生產(chǎn)效率。利用智能灌溉系統(tǒng),使傳統(tǒng)的灌溉模式得以突破和發(fā)展,是當今世界供水、節(jié)水技術(shù)發(fā)展的總趨勢。智能灌溉系統(tǒng)在一些發(fā)達國家起步也較早應(yīng)用較廣泛,技術(shù)發(fā)展相對成熟,特別是以色列、美國和加拿大等國。
1 系統(tǒng)總體設(shè)計方案
本文設(shè)計的基于無線傳感器網(wǎng)絡(luò)的智能灌溉系統(tǒng)功能強大,最主要的是價格低廉,非常適用于普通農(nóng)戶和城市基礎(chǔ)設(shè)施。本系統(tǒng)通過傳感器獲取田地的環(huán)境參數(shù)信息并且通過ZigBee傳送給處理器(CortexTM-A8),處理器做出相應(yīng)的信息處理并將處理完成后的信息再次通過ZigBee傳送給主控CPU(Cortex-M3t),CPU發(fā)出相應(yīng)的指令控制水閥(電機)的運轉(zhuǎn)。系統(tǒng)架構(gòu)如圖1所示。
2 系統(tǒng)硬件設(shè)計
系統(tǒng)硬件整體可分為4個模塊,分別是數(shù)據(jù)處理模塊(嵌入式處理器系統(tǒng))、數(shù)據(jù)傳輸模塊(無線傳感網(wǎng)絡(luò)ZigBee或者WiFi)、數(shù)據(jù)采集模塊(末端傳感器)和被控模塊(控制水閥及營養(yǎng)液輸送)。
數(shù)據(jù)處理模塊:采用基于CortexTM-A8體系結(jié)構(gòu)的Samsung公司S5PV210處理器芯片做為應(yīng)用網(wǎng)關(guān)的核心處理器。
數(shù)據(jù)傳輸模塊:采用ZigBee。
傳感器模塊:采用溫濕度傳感器AM2321。
被控模塊:每個節(jié)點都使用基于Cortex-M3體系的STM32F103RBT6單片機作為主控CPU。另外還配備有電機驅(qū)動。
2.1 數(shù)據(jù)處理模塊
數(shù)據(jù)處理時處理器采用基于CortexTM-A8體系結(jié)構(gòu)的S5PV210處理器芯片作為應(yīng)用網(wǎng)關(guān)的核心處理器。于此同時應(yīng)用網(wǎng)關(guān)配備有種類豐富的外圍接口,可以通過多種方式獲取傳感器數(shù)據(jù),并進行本地處理,如果有需要,也可通過WiFi或者3G的方式將數(shù)據(jù)上傳至更上層的網(wǎng)絡(luò)服務(wù)器或者云端服務(wù)器。
S5PV210是一個16/32位RISC微處理器,是Samsung公司為移動電話和通用產(chǎn)品設(shè)計的低成本,低功耗,高性能的應(yīng)用處理器方案。S5PV210具有高質(zhì)量的外部存儲器接口,用來適應(yīng)高端通信服務(wù)所要求的高存儲器帶寬。存儲器系統(tǒng)具有兩個外部存儲器接口,其中DRAM接口可配置成支持LPDDR1(MobileDDR),DDR2和LPDDR2內(nèi)存IC顆粒;而FLASH/ROM 接口可支持NOR FLASH,NAND FLASH,OneNAND,RAM和ROM類型的外設(shè)。S5PV210基于ARMCortex-A8核,包括32 KB指令和32 KB數(shù)據(jù)Caches,512 KB L2Cache,MMU以支持虛擬內(nèi)存管理。S5PV210的工業(yè)標準特征支持多種工業(yè)標準操作系統(tǒng)[2]。
2.2 數(shù)據(jù)傳輸模塊
ZigBee無線通信方式的核心是圍繞美國TI公司提供的CC2530 型單片機(硬件)以及滿足 ZigBee 2006標準的Z-Stack協(xié)議棧實現(xiàn)。
2.2.1 處理器CC2530
CC2530為美國TI公司推出的支持ZigBee協(xié)議的單片機,屬于ZigBee開發(fā)時的硬件資源。CC2530-EB核心板主要包括CC2530單片機、天線接口、晶振以及I/O擴展接口。CC2530-EB核心板原理如圖2所示。
CC2530的FLASH容量具有選擇性,并且CC2530片上系統(tǒng)解決方案包括若干設(shè)備,表1提供了每個設(shè)備不同外設(shè),內(nèi)存大小等的概述和信息。
CC2530中的存儲器可映射到代碼和外部數(shù)據(jù)的存儲器空間。這樣除了保證程序代碼和常量的正確性,還可以允許非易失性存儲器保存應(yīng)用程序必要的數(shù)據(jù),這樣保證了數(shù)據(jù)在設(shè)備重啟后的重復(fù)利用性。并且在開發(fā)人員使用此功能時,也可以用來保存具體的網(wǎng)絡(luò)參數(shù),當系統(tǒng)再次上電后此保存的網(wǎng)絡(luò)參數(shù)可以直接加入網(wǎng)絡(luò)中。
2.2.2 協(xié)議棧
Z-Stack是ZigBee的協(xié)議棧,并且ZigBee無線網(wǎng)絡(luò)的實現(xiàn),是建立在此協(xié)議?;A(chǔ)上的。協(xié)議棧定義了通信軟件和硬件在不同級如何協(xié)同工作,并且通信雙方需要遵循協(xié)議棧的標準進行正常的數(shù)據(jù)收發(fā)。協(xié)議棧采用分層的的結(jié)構(gòu)使各層相對對立,每一層都提供特定的服務(wù),使開發(fā)者可以更高效率地進行開發(fā)。Z-Stack具體分為兩部分:IEEE 802.15.4定義的物理層和MAC層技術(shù)規(guī)范;網(wǎng)絡(luò)層,安全層和應(yīng)用層技術(shù)規(guī)范。Z-Stack協(xié)議棧就是將各層定義的協(xié)議都集合在一起,以函數(shù)的形式實現(xiàn),并給用戶提供一些API,供用戶學(xué)習(xí)使用。使用Z-Stack協(xié)議棧進行開發(fā)步驟如下:
(1)用戶對ZigBee無線網(wǎng)絡(luò)的應(yīng)用層程序開發(fā)設(shè)計,采用C語言實現(xiàn);
(2)在ZigBee網(wǎng)絡(luò)中采集數(shù)據(jù)時,只需要在應(yīng)用層加入讀取傳感器的函數(shù)即可完成ZigBee網(wǎng)絡(luò)中的數(shù)據(jù)采集;
(3)為了提高系統(tǒng)的節(jié)能性,可以定時喚醒ZigBee的終端節(jié)點,然后自動完成傳感器數(shù)據(jù)采集,并將采集到的數(shù)據(jù)發(fā)送給ZigBee協(xié)調(diào)器。
此模塊采用廣州飛瑞敖電子科技有限公司生產(chǎn)的IOT-L02-06型物聯(lián)網(wǎng)開發(fā)應(yīng)用實驗設(shè)備,如圖3所示。
2.3 傳感器模塊
在傳感器模塊中使用溫濕度傳感器AM2321。AM2321數(shù)字溫濕度傳感器是含有己校準數(shù)字信號輸出的溫濕度復(fù)合型傳感器。該傳感器包括一個電容式感濕元件和一個高精度集成測溫元件,并與一個高性能微處理器即8位單片機相連接。AM2321傳感器進行過極為精確的濕度校驗,無需對數(shù)字進行二次計算,也無需對濕度進行溫度補償,便可得到準確的數(shù)據(jù)[3]。因其本身具有超小的體積、極低的功耗,信號傳輸距離可達20 m以上,成為開發(fā)者的首選。產(chǎn)品為3引線(單總線接口)連接方便。AM2321的響應(yīng)時間約2 s,相比一般溫濕度傳感器的響應(yīng)時間更快[5]。
2.3.1 AM2321原理圖及引腳參數(shù)
溫濕度傳感器的電路原理圖如圖4所示,其SDA口連接到的STM32的PA4引腳上進行單總線通信,R11為上拉電阻。各PIN的分配見表2所列。
2.3.2 AM2321單總線通信協(xié)議
SDA可用于微處理器與AM2321溫濕度傳感器之間的通信和同步,并且采用單總線通信。單總線即只有一根數(shù)據(jù)線,系統(tǒng)中的數(shù)據(jù)和控制信號均由數(shù)據(jù)線完成。單總線通信格式一次傳輸即可傳送40位數(shù)據(jù),并且采用高位先出的規(guī)則,具體如圖5所示。
單總線格式定義如下:當起始信號發(fā)出時,微處理器把數(shù)據(jù)總線(SDA)拉低一段時間(至少800 μs),通知傳感器準備數(shù)據(jù)。此時響應(yīng)信號發(fā)出,傳感器把數(shù)據(jù)總線(SDA)拉低80 μs,再拉高80 μs以響應(yīng)主機的起始信號。在收到主機起始信號后,傳感器一次性從數(shù)據(jù)總線(SDA)串出40位數(shù)據(jù),高位先出。其中溫濕度的分辨率都為16 bit,并且高位在前;傳感器傳出的溫濕度值是實際溫濕度值的10倍[4]。
總線數(shù)據(jù)說明[5]:接收到的40位數(shù)據(jù)見表3所列。
濕度及溫度的值計算見表4所列。
2.3.3 外部設(shè)備讀取溫濕度流程
外部設(shè)備讀取溫濕度流程如圖6所示。
2.4 控制模塊
控制模塊CPU采用基于Cortex-M3內(nèi)核的高性能32位處理器—STM32,它的特點是,功耗低,時鐘頻率高,中斷延遲短。STM32微處理器在結(jié)構(gòu)上可以分為4個部分,這4個部分包括處理器的內(nèi)核,存儲單元,總線接口以及跟蹤調(diào)試單元[4]。
STM32系列的芯片眾多,可供選擇的型號多在使用時可以根據(jù)自己系統(tǒng)的需求來選擇自己所需要的芯片型號。STM32的硬件資源豐富而且又具有低功耗的功能,是開發(fā)項目的首要之選,本次項目根據(jù)實驗需求選擇的是STM32F103RBT6。
2.5 被控模塊
被控模塊應(yīng)用L298電機驅(qū)動芯片[5-6]。該芯片具有兩個TTL/CMOS兼容電平的輸入,并且具有良好的抗干擾性能;可用I/O口提供控制信號,支持5 V和3.3 V邏輯電平,而且一塊L298芯片可以驅(qū)動2個減速電機;電路簡單,易用,穩(wěn)定,具有較高的性價比[5]。
2.6 總體電源模塊
STM32電源電壓需要3.3 V的電源供電,還需要5 V電壓給ZigBee模塊及S5PV210處理器供電,使用AMS1117芯片將5 V電壓轉(zhuǎn)化成3.3 V供給STM32以及其他的芯片使用,如圖7所示。
3 系統(tǒng)軟件設(shè)計
系統(tǒng)軟件總體分為3個部分,分別是無線ZigBee網(wǎng)絡(luò)連接,水閥控制程序與Qt顯示界面。系統(tǒng)軟件主要提供了用戶端的顯示界面,水閥的自動控制與數(shù)據(jù)的傳輸控制。
3.1 無線ZigBee網(wǎng)絡(luò)連接
ZigBee基于IEEE 802.15.4協(xié)議,是一種功耗低、短距離的通信技術(shù)。系統(tǒng)控制器與節(jié)點之間的通信通過ZigBee無線網(wǎng)絡(luò)實現(xiàn)。
ZigBee節(jié)點有3種類型,分別是路由器、協(xié)調(diào)器和終端設(shè)備。ZigBee的網(wǎng)絡(luò)形式有樹狀,星狀和網(wǎng)狀類型。ZigBee模塊無線通信流程如圖8所示。
3.2 水閥控制程序的設(shè)計
管道中水流的大小通過水閥控制,即通過電機的啟動與否對水閥進行控制。電機控制命令需使用傳感器節(jié)點采集到的數(shù)據(jù),將判斷是否進行調(diào)節(jié)的程序?qū)懭胩幚砥?,通過處理器判斷,即超過參考值停止放水或者低于參考值則放水,之后由ZigBee模塊發(fā)送到主控CPU,主控CPU接收到信息(是否啟動電機進行控制)后發(fā)出指令,控制電機實現(xiàn)水閥的開關(guān),實現(xiàn)智能調(diào)節(jié),也可通過后臺發(fā)出指令,人工控制水閥開關(guān)。
3.3 顯示界面設(shè)計
本界面主要實現(xiàn)的功能有:當彈出對話框時,在對話框中填寫用戶名和密碼,并按下登錄按鈕;如用戶名和密碼正確則進入主窗口,假設(shè)有錯,則彈出警告對話框。具體設(shè)計效果如圖9~圖12所示。
4 測試結(jié)果及分析
為了驗證系統(tǒng)的性能,本文進行了如下實驗:實驗中將1個溫濕度傳感器節(jié)點與PC機相連,并放置在選取的土壤中,同時將傳感器節(jié)點與步進電機節(jié)點進行ZigBee組網(wǎng),人工測試后進行系統(tǒng)測試。從測試結(jié)果來看,數(shù)據(jù)傳輸穩(wěn)定,顯示界面正常顯示,系統(tǒng)可正常運轉(zhuǎn),表明此系統(tǒng)具有極高的準確性和可靠性。
5 結(jié) 語
本文結(jié)合最新的ZigBee技術(shù),設(shè)計了一款智能化灌溉系統(tǒng)。系統(tǒng)通過布置AM2321傳感器,對土壤中的溫度及濕度進行檢測,檢測的數(shù)據(jù)經(jīng)CC2530處理后通過無線網(wǎng)絡(luò)傳送給主控CPU,利用Cortex-M3對接收到的數(shù)據(jù)進行保存及處理。管理員可通過系統(tǒng)處理結(jié)果對土壤環(huán)境進行針對性的處理。系統(tǒng)具有檢測精度高,誤差小及可靠性高的優(yōu)點,適用于農(nóng)業(yè)園林等環(huán)境,具有較大的推廣價值和廣闊的市場前景。
參考文獻
[1]李時輝.基于無線傳感器網(wǎng)絡(luò)的溫室智能監(jiān)測系統(tǒng)研究[J].江西理工大學(xué)學(xué)報,2013,33(1):70-73.
[2]王濤,夏路易.基于ZigBee2007的無線網(wǎng)絡(luò)控制系統(tǒng)的構(gòu)建[J].機械管理開發(fā),2011,25(4):11-12.
[3]佚名.溫濕度數(shù)字傳感器AM2302.pdf[EB/OL].[2017-10-19]. http://www.Datasheet4U.com.
[4]何友國,袁朝春.基于SIM908的冷藏車箱內(nèi)溫濕度監(jiān)測系統(tǒng)設(shè)計[J].制造業(yè)自動化,2015,37(22):138-142.
[5]朱武,涂祥存,操瑞發(fā),等.基于L6506/L298芯片細分步進電機驅(qū)動系統(tǒng)設(shè)計[J].電氣自動化,2011,33(1):10-12.
[6]夏葉媚,徐松,吳晨彤,等.基于STM32單片機的直流電機調(diào)速電源設(shè)計[J].河南科技,2017,41(17):73-74.
[7]劉海龍,宿宏毅,郭浩.基于物聯(lián)網(wǎng)關(guān)聯(lián)的光照監(jiān)控與節(jié)水灌溉系統(tǒng)設(shè)計[J].現(xiàn)代電子技術(shù),2016,39(20):149-153.
[8]張育斌,魏正英,張磊,等.非充分灌溉下精量灌溉決策方法研究[J].現(xiàn)代電子技術(shù),2017,40(1):115-118.
[9]毛威,來智勇,耿楠.基于WSN的溫室智能灌溉系統(tǒng)軟件設(shè)計[J].現(xiàn)代電子技術(shù),2017,40(16):5-9.
[10]呂坤,吳瓊,閆偉.基于ARM的物聯(lián)網(wǎng)智能灌溉系統(tǒng)的研究[J].物聯(lián)網(wǎng)技術(shù),2019,9(11):57-58.