齊東蘭QI Dong-lan;魏永強WEI Yong-qiang
(①陜西職業技術學院,西安 710100;②西安測繪研究所,西安 710054)
農業是國民經濟的重要產業[1],傳統的農業管理通過人工現場勘查的方式判斷農作物的生長情況,效率不高,且會造成一定的人力資源浪費;隨著互聯網、物聯網等技術的發展,為農業的智能管理提供了條件。葛文杰等[2]對農業物聯網的概念和技術體系進行了闡述,總結出國內外農業物聯網感知技術、通訊傳輸技術和應用關鍵技術,指出了我國的農業物聯網發展存在應用局限性、產品不夠豐富、農業物聯網數據沒有得到充分挖掘利用等問題,為我國農業物聯網的發展提供了方向。李道亮等[3]對農業傳感器工藝、農業信息傳輸技術、農業業務模型等方面提出了多方面具體的要求,為農業物聯網的發展提供了技術依據。潘榮敏[4-7]等利用無線傳感器網絡、物聯網等技術,設計了一套基于物聯網技術的農業物聯網建庫系統,研究了農業智能管理系統的應用。本文在前人研究的基礎上,研究農業物聯網技術和數據傳輸加密技術,將物聯網監控系統和三維應用系統相結合,逼真地展現區域的三維地理環境、實時展示農業物聯網監測點信息,包括空氣溫度及濕度、光照、CO2濃度、土壤溫度及濕度、病蟲害等環境參數。可以根據具體的應用需求,對監測點信息進行分析處理,并以直觀的圖表、文字、視頻等多種方式展示分析結果,實現對農業的高效益規模化管理。
1.1農業物聯網數據云存儲技術 農業物聯網通過紅外感應器、激光掃描、射頻識別、全球定位系統等設備,在互聯網技術的基礎上,融合傳感器、信息處理、無線網絡等技術,獲取農作物生長的實時數據。這些數據具有種類繁多、數據量大、實時性要求高等特點,如何有效存儲農業物聯網數據以更好地應用到農業生產中是急需解決的問題。云計算能夠解決數據海量存儲問題,可以提高數據庫的訪問效率、性能和穩定性。
本文通過搭建大數據平臺Hadoop集群環境,建設以云存儲、云服務為核心的物聯網數據管理中心,提供數據分類、數據管理、數據分發功能。數據分類功能將傳感器數據按不同類型分類,例如溫度信息、濕度信息、GNSS信息等;數據管理功能實現海量傳感器數據的實時存儲并建立存儲緩沖池,設置數據應用接口以便未來應用擴展;數據分發功能通過提供數據實時分發接口,實時向系統推送數據。
將所有農業物聯網數據存儲在Hadoop集群環境下的各分布式數據庫HBase中,通過Hive數據倉庫工具來對數據進行存儲管理。利用并行計算,把實時獲取的物聯網數據分解為成百上千個小數據集,每個(或若干個)數據集分別由集群中的一個節點進行處理并生成中間結果,然后將這些中間結果采用并行計算的方式進行合并,形成最終結果進行數據分發,從而實現海量數據的快速存儲和并發訪問。
以傳統RDBMS技術和云計算技術兩套方案分別建設農業物聯網數據存儲環境,從數據并發訪問的角度對兩種存儲方式進行壓力測試,結果見表1。可見,兩種方式都能保證所有并發訪問,但云計算技術下的數據并發效率明顯優于傳統單機方式,尤其是數據量增加的情況下,其優勢更加明顯。
表1 RDBMS技術和云計算技術存儲方案的并發訪問效率對比
1.2基于RSA的數據加密技術RSA公鑰密碼體制是由Rivest、Shamirh和Adleman三人在1978年提出的[8],已成為公鑰數據加密的標準。它使用相互關聯的一對密鑰:一個公鑰和一個私鑰[9-10],公鑰是公開信息,而私鑰是需要保密的,基于加密和解密算法進行數據的加解密處理。數據從物聯網數據中心到三維應用系統要經過3G/4G無線網絡,到達運營商基站,再通過運營商基站接入互聯網,最終被對方接收。在這個過程中,數據要經過數次中轉,每一次中轉都有被竊聽和截斷的風險。為了保證系統中農業物聯網數據在實時傳輸過程中的安全性,必須在數據發送前對數據進行加密,待接收到數據后進行解密。物聯網數據中心和三維應用系統之間傳輸信息時通過RSA非對稱密碼算法進行數據加密處理。物聯網數據中心和三維應用系統各產生一組RSA非對稱密鑰,雙方保存好私鑰,公鑰提供給對方。物聯網數據中心使用三維應用系統的公鑰對農業信息進行加密處理,三維應用系統使用自己的私鑰進行解密,解析出需要的信息;同樣,三維應用系統使用物聯網數據中心提供的公鑰將分析出的預警數據進行加密處理,將數據傳送到物聯網數據中心,然后使用自己的私鑰進行解密,得到需要的信息,如圖1所示。
圖1 數據加解密過程
系統采用典型的B/S(瀏覽器/服務器)架構,利用SuperMap iServer提供場景服務,基于SuperMap iClient3D for Plugin進行客戶端開發。將三維模型服務與物聯網數據中心實時獲取的傳感器數據相互關聯,在Web端逼真地展現農業區域三維地理環境、以多種形式實時顯示物聯網監測點信息,并提供分析功能。系統由三維應用系統數據服務層、物聯網數據服務層和應用層組成,系統架構如圖2所示。①三維應用系統數據服務層:為系統提供三維數據服務,包括數據層和服務層。數據層由地形數據、影像數據和三維模型數據組成,其中三維模型數據包括重要物聯網監測點(安裝設備的大棚、露天監測點)的精細模型,該模型的編號與物聯網監測點建立一一對應關系;使用SuperMap iServer對數據進行服務發布,分別對應地形服務、影像服務、三維模型服務,為應用層提供服務支持。②物聯網數據服務層,負責農業信息的存儲和管理,維護農業數據之間的相互關系,并提供數據備份功能,包括感知層、傳輸層和服務層。感知層利用傳感器、讀卡器、音視頻采集器等實時獲取農業信息,包括溫度、相對濕度、pH值、光照強度、土壤養分、CO2濃度等信息;傳輸層通過各種網絡與互聯網的融合,實時準確地將數據傳遞到服務層;服務層對接收到的數據進行解析、分類、判斷后將有效數據存入數據庫,并提供數據分發服務。服務層采用云計算架構模式,通過搭建云平臺進行系統資源的整合,提升性能。③應用層,包括系統的三維場景瀏覽、量測、查詢等基本地圖操作,農業物聯網信息的多形式實時展示以及分析處理等應用。
圖2 農業物聯網三維應用系統架構
系統主要由三大功能模塊組成:基本操作、物聯網信息查詢與展示模塊、分析預警模塊,如圖3所示。
圖3 系統功能結構
3.1基本操作 包括三維場景瀏覽展示、標注、場景自動飛行、三維量測;地圖的放大、縮小、全幅、漫游、旋轉等基本的場景瀏覽功能;預先設計飛行路線、設定相關參數(如飛行速度、飛行總時間、是否鎖定方位角、高程等),然后自動飛行,以身臨其境的方式進入管理區域。
3.2物聯網信息查詢與展示模塊 包括物聯網基本信息展示、物聯網動態監測信息展示、物聯網監測的視頻實時播放與歷史視頻回放。通過在三維系統中接入農業物聯網信息,以文本形式展示基本信息;以儀表盤、折線圖等形式實時展示監控傳感器采集的數據;通過獲取監控視頻通道,實時展示監控區內的影像,也可以根據時間段查看歷史監控影像,對農作物的生長進行全程監控。農業物聯網數據的多種展現形式,直觀地反映農作物生長的實時信息,并且能夠快速及時地發現問題,準確定位問題農作物所在的位置,大大減輕工作量,并從整體上直觀地為農作物種植提供更加科學的決策依據,如圖4所示。
圖4 農業物聯網信息實時展示界面
3.3分析模塊 該模塊將接收到的農業物聯網數據實時存入數據庫,并進行分析處理,支持某時間段之內的歷史信息查詢,以便詳細觀察該時間段內的具體情況,為用戶提供分析決策依據。用戶可以自定義農作物的生長環境參數范圍,根據該范圍值判斷是否超出預警閾值,如果超出閾值,通過獲取預警類型的參數之后,計算出相應的編號,發送預警信息,如表2所示。
表2 農業分析預警數據
本文針對農業智能管理的需求,提出了將物聯網監控系統和農業三維應用系統相結合的解決方案,利用云計算技術,解決了農業網聯網海量數據的高效管理;基于SuperMap三維開發平臺,采用三維建模、物聯網數據云存儲、數據加密等技術,設計開發了農業物聯網的三維應用系統;以文字、圖形、視頻等多種形式實時展示物聯網信息,提供農業信息的預警分析功能,為農作物日常生長管理提供了方便直觀的方法;并在于洪區農業智能化管理中得到應用,對智慧農業進行了探索與實踐。