王 發,艾 紅
(北京信息科技大學 自動化學院,北京100192)
隨著全球氣候的變化以及水資源的日益匱乏,旱災已成為世界范圍內影響十分嚴重的自然災害,對農業生產造成很大影響。加強農田土壤旱情監測和預報對于我國農業信息化發展意義重大。目前農田信息采集重點都在信息采集設備的開發和數據的傳輸,對數據的處理關注較少。本文引入BP神經網絡算法結合嵌入式系統、ZigBee和GPRS技術設計了旱災監控預警系統,將信息采集和數據處理有機結合,實現對土壤信息的監控與預測[1]。
系統包括主控平臺、信息采集終端、信息傳輸網絡、管理中心4部分。主控平臺以S3C6410處理器為核心,負責數據處理和發送。信息采集終端由ZigBee節點搭載溫濕度和光照強度傳感器采集土壤溫濕度和光照強度數據。信息傳輸網絡包括ZigBee無線傳感器網絡和GPRS網絡2部分。采集到的數據經ZigBee終端節點發送給ZigBee協調器節點后通過S3C6410處理后經GPRS模塊將信息上傳管理中心。管理中心對接收到的數據進行處理,運用BP神經網絡算法對旱情進行預測。系統結構如圖1所示。

圖1 系統結構Fig.1 Structure diagram of system
主控平臺的硬件分為2部分,其中S3C6410處理器與SDRAM、NandFlash、時鐘和復位電路等構成核心板;電源、UART以及其他接口電路構成底板。S3C6410是基于ARM1176JZF-S的16/32位RSIC微處理器,具有低成本、低功耗、高性能特點的應用處理器。SDRAM為操作系統和應用程序的運行提供存儲空間。NandFlash一部分空間保存啟動代碼和操作系統,其它空間則用來存儲數據。核心板與底板的連接是通過插針接口相連。
通信模塊包括ZigBee無線通信模塊和GPRS通信模塊。ZigBee無線通信模塊采用基于IEEE802.15.4協議的CC2530芯片,配以雙晶振和單級天線等外圍電路構成。由一個協調器節點和多個終端節點實現星型無線傳感器網絡,協調器與主控平臺通過串口UART0通信。終端節點搭載溫濕度和光照強度傳感器組成監控點,對土壤的各項指標進行數據采集。溫濕度傳感器采用SLHT5土壤溫濕度傳感器,將SLHT5時鐘線SCL和數據線SDA分別連接到CC2530的P0_0和P0_1接口,通過I/O口模擬I2C時序對傳感器進行控制。光照強度傳感器采用DZD-T4光照強度傳感器,將DZD-T4的串口發送引腳TXD連接到CC2530的P0_2引腳,將串口接收引腳連接到CC2530的P0_3引腳。GPRS通信模塊選用SIM900模塊實現。SIM900擁有GPRS/GSM雙頻模塊,具有性能穩定功耗低的優點。SIM900模塊通過串口UATR1與主控平臺進行通信,通信速率設定為115200 b/s。主控平臺通過AT指令對SIM900進行控制,完成相應的功能。
ZigBee數據采集、主控平臺數據處理和GPRS數據發送幾乎都是并行執行的,另外系統還要實現ZigBee模塊和GPRS模塊等外設驅動,這些用單片機很難實現,因此引入Linux系統。分別為這3個并行執行的程序開辟一個線程,由Linux系統完成對系統資源的分配與調度。另外Linux最大特點就是對系統進行定制,外接設備的驅動可編譯到內核中。要在S3C6410平臺上使用Linux系統,需對其進行移植。移植首先需建立交叉編譯環境,然后引導Bootloader,編譯Linux內核,最后制作根文件系統。交叉編譯是在一個平臺上生成可在另一個平臺上執行的代碼,從而實現宿主機上開發并編譯可在目標板上運行的代碼。Bootloader是操作系統內核和應用程序運行之前運行的一段程序,完成硬件設備初始化,為運行Linux內核做準備。Linux系統的移植主要是對Linux內核源碼中與硬件相關的代碼進行修改,比如MTD分區、Nand Flash驅動等使之可在目標板上運行。文件系統是一個物理設備上的任何文件組織和目錄,是操作系統中與管理文件有關的軟件和數據,在Linux下,所有文件和外部設備都以文件的形式掛接在這個文件系統上,系統宿主機采用的操作系統是Fedroa14 Linux,使用的交叉編譯器為 arm-linux-gcc-4.3.2,Bootloader選用的是U-boot-2013.04,內核版本為Linux3.8.3。
ZigBee無線通信模塊使用Z-Stack協議棧實現ZigBee無線組網,采集到的數據由終端節點通過ZigBee無線網絡發送到協調器節點。Z-Stack協議棧內嵌 OSAL(operating system abstraction layer)輪轉查詢式多任務操作系統[2],OSAL通過osal_add_task()函數向任務表數組中添加任務,形成一個任務鏈表,通過tasksEvents指針訪問任務表中的每一項,按照優先級的高低查詢是否有事件發生,如果有事件發生,就會執行相應的事件處理函數,處理完后,繼續訪問任務鏈表,查看是否有事件發生。
系統通過S3C6410對SIM900進行控制,與管理中心建立GPRS連接,將采集終端采集的數據傳輸到管理中心。GPRS模塊工作流程如圖2所示。

圖2 GPRS模塊工作流程Fig.2 GPRS module workflow
GPRS模塊通過UART1與主控平臺進行通信,通信協議采用AT指令集,該協議的格式是“AT+數據+回車”,每一條指令都有應答指令。系統首先對GPRS進行初始化,以TCP連接的方式連接到管理中心并定義好相應的發送函數解析AT命令,實現數據發送。如果到達系統設定的時間時串口中沒有數據要發送,模塊就會向管理中心端發送一個心跳包,心跳包就是在客戶端和服務器間定時通知對方自己狀態的一個自定義的數據,管理中心端可以對心跳包數據做丟棄處理[3]。
管理中心與主控平臺采用基于TCP/IP協議的網絡通信方式,主控平臺作為客戶端通過GPRS模塊發送傳感器采集的數據,管理中心作為服務器接收GPRS模塊發送來的數據。C++builder中網絡組件 TServerSocket和 TClientSocket封裝 Win Socket編程的各種基本功能,可實現客戶端與服務器編程。數據采集界面和數據變化曲線如圖3~圖6所示。

圖3 數據采集界面Fig.3 Data acquisition interface

圖4 土壤溫度變化曲線Fig.4 Soil temperature change curve

圖5 土壤濕度變化曲線Fig.5 Soil moisture change curve

圖6 光照強度變化曲線Fig.6 Light intensity change curve
BP神經網絡是一種按誤差逆傳播算法訓練的多層前饋網絡,拓撲結構包括輸入層、隱含層和輸出層,按減小輸出值與期望值誤差,使網絡的誤差平方和最小的原則,從輸出層經隱含層再回到輸入層,逐層修正連接權值,隨訓練的不斷進行,網絡對輸入模式匹配的正確率也將逐漸提高[4-5]。系統設計3層BP網絡,輸入層由土壤溫度、土壤濕度、光照強度組成,輸出層為土壤濕度,因此輸入層的神經元個數為3;隱含層節點數個數使用經驗公式和試湊法確定為5個,輸出層神經元個數為1個。BP神經網絡的算法可表示如下,Δwki是輸出層權值的修正量,Δak是輸出層閾值的修正量,Δwij是隱含層權值的修正量,是隱含層閾值的修正量。根據以上4個修正量不斷修正網絡中的閾值和權值,從而得到最佳的權值和閾值,是BP神經網絡可以根據輸入值準確進行預測。


選取系統中一個監控點的監測數據與精密儀器測量值進行比較,來測試系統數據采集的準確性,用歷史數據訓練BP神經網絡,通過輸入監測數據來預測未來5 d的土壤濕度,并與精密儀器測量值進行比較,來測試BP神經網絡預測的準確性。
選取一號監控點2014-04-20至2014-04-24采集的土壤溫濕度值和光照強度值分析,系統測量值與精密儀器測量的真實值關系如表1所示。

表1 測量值與真實值對比Tab.1 Comparison of measured value and the true value
從表中測量值與真實值的對比和誤差可看出,土壤溫度測量值與真實值誤差范圍為[-0.5,0.5],土壤濕度測量值與真實值誤差范圍為[-0.3,0.3],光照強度測量值與真實值誤差范圍為[-4,4],說明系統采集到的數據準確可靠。
系統采用BP神經網絡的方法對采集到的土壤濕度進行預測,可預測未來5 d內土壤濕度。將多組樣本數據輸入到網絡中,可以得到預測值,其中2014-06-04至2014-06-08的數據預測值和精密儀器實測值如表2所示。

表2 預測值與實測值對比Tab.2 Comparison of measured value and the true value
從表中實測值與預測值的對比和誤差可看出,預測值與實測值誤差范圍為[-0.9,0.9],說明系統可得到較理想的預測結果,預測精度高。
本方案引入BP神經網絡建立旱災預測模型,成功地將BP神經網絡結合嵌入式技術,物聯網技術應用于農田旱災的監測,并對旱情進行預測,強化了整個系統的功能。將比較多的新技術運用于農業中,較傳統農業信息監測方式有了較大的改進,具有廣闊的應用前景。
[1]姜立明,莊衛東.ZigBee/GPRS技術在精準農業中的應用研究[J].農機化研究,2014,36(4):185-188.
[2]郭家,馬新明,郭偉,等.基于ZigBee網絡的農田信息采集系統設計[J].農機化研究,2013,32(11):65-70.
[3]楊鑫,申長軍,王克武,等.基于SIM900的苗情圖像無線傳輸系統設計[J].中國農機化學報,2013,34(4):252-255.
[4]尹健康,陳昌華,邢小軍,等.基于BP神經網絡的煙田土壤水分預測[J].電子科技大學學報,2010,39(6):891-895.
[5]Liu Yan fang,Jiao Li min.The application of BP networks to land suitability evaluation[J].Geo-spatial Information Science,2002,5(1):55-61.