龔曉嵐,巨凱鋒
(北京靈圖軟件技術有限公司,北京 100083)
農林植保無人機利用無人機搭載噴藥裝置,通過集成通信技術、自動控制技術、傳感技術以及地理信息定位技術等多種相關技術,實現對作物的定量精準噴藥,是一種技術集成度很高的智能農業設備[1]。相對于傳統的植保作業,農林植保無人機能夠減少人員與農藥直接接觸的機會,具有噴灑效果好、噴霧效率高、不受地形限制、省藥省水減少污染等優勢,能夠降低人力成本,省時高效[2]。同時,由于應用了通信技術、地理信息定位技術,無人機的數字作業和管理也迎來了更多的機遇[3-4]。植保無人機的作業包括作業地塊規劃、飛行調度、施藥等各個環節,都會產生大量的數據,其中相當一部分是包含了位置信息的數據。通過地理信息系統技術,可以對植保無人機作業相關的數據進行收集、整合和利用,實現對植保無人機作業的監控和管理。
隨著農業現代化的推進,農林植保無人機逐步在水稻、玉米、小麥、棉花、林木等領域開展航空施藥應用,適用于平原、丘陵、山地等多種環境,為農業植保的統防統治做出了貢獻[5]。植保無人機除了可實現精準施藥外,還被逐步應用于農田信息快速分析及診斷、農田無人巡查、病蟲草害監測、作業生產情況評估、產量預測等環節[6-8]。2021 年,我國植保無人機保有量預估達到16 萬架,作業面積也高達14 億畝[9],植保無人機成為我國農業生產中新的產業戰略,也為無人機應用打開了巨大的市場前景。
地理信息系統是利用計算機軟硬件,對地理位置相關的數據進行采集、儲存、管理、運算、分析和展示的技術系統。地理信息系統技術在農業領域有廣泛的應用,王娜等人[10]提出了基于地理信息的農機調度優化系統,通過對空間數據進行分析,再結合導航電子地圖和路徑規劃算法,實現農機作業狀態動態信息的可視化以及調度系統的優化。
伴隨科技的發展,世界各個國家將云計算、互聯網、移動通信、人工智能等技術應用于無人機的云端管理,實現大區域范圍內規?;療o人機的位置、飛行狀態、工作狀態的管理。譚均銘等人[11]闡述了美國、歐洲、新加坡及我國應用地理信息技術實現無人機云端管理的現狀,研究了各國無人機監管云平臺的建設框架。王家耀[12]提出無人機的運行管理需要天地一體的地理信息系統,實現無人機的信息交互與協同作業。黃瑞金等人[13]研發了無人機集群指揮管理平臺,設計了多無人機協同調度模型,實現了無人機集群協作測繪全流程管理系統。張波等人[14]設計并開發了精準農業航空服務的互聯網綜合服務平臺,平臺面向植保服務商和農戶,提供多種農林植物保護作業服務的訂單形成、作業、支付等功能。姜城等人[15]通過無人機遠程視頻增強技術,構建了無人機視頻數據增強現實的地理信息系統,為無人機的監控及相關工作提供了良好的位置服務。王昀等人[16]面向無人機飛手,搭建了無人機調度大數據平臺,實現了飛手和農戶供需的無縫對接,提高了飛手的收益。
植保無人機主要由飛行平臺(直升機、固定翼、多軸飛行器)、飛控模塊和噴灑系統3 個部分組成,其中飛控模塊與噴灑系統是植保無人機的核心部分。飛控模塊是植保無人機的控制核心,由線路導航控制子模塊、高度控制子模塊、噴灑控制子模塊和植保綜合管理模塊組成[9]。國內的全豐、大疆、極飛等知名的植保無人機企業都有各自的無人機飛控模塊,但飛控模塊的數據標準和傳輸協議不統一,給無人機規?;慕y防統治管理造成了阻礙。為解決不同飛控模塊傳輸協議不統一的問題,黑龍江省采用為植保無人機免費加裝智能信息終端的方式,實現了對全省植保無人機作業的數字化、可視化統一管理[3,17]。
綜上所述,植保無人機有巨大的市場應用前景,也需要統一的監管平臺實現數字化、可視化的管理。目前地理信息技術已經在無人機監控管理領域逐步開始應用,而無人機飛控模塊數據標準和傳輸協議不統一是制約無人機統一監控的重要因素。目前植保無人機在作業地塊的統一規劃和管理方面的應用仍較少。本文針對植保無人機飛控模塊回傳的數據標準不統一、回傳數據的位置信息與作業信息關聯性差、飛行軌跡展示方式單一等問題,結合地理信息系統技術,對無人機的作業地塊進行規劃和管理,并且將無人機的回傳數據進行標準化處理,關聯無人機的噴灑作業信息和飛行軌跡信息,在地理信息平臺上對上述信息進行分析、統計和可視化展示,實現無人機作業調度規劃管理、位置匹配、實時監控、軌跡分析與作業統計分析等功能,從而充分發揮植保無人機回傳數據的作用,實現對植保無人機作業統一的數字化、可視化監管。
植保無人機作業管理云平臺采用面向服務(Service Oriented Architecture, SOA)的體系架構,分為3 層結構:數據訪問層、中間業務邏輯服務層和應用層,具體架構如圖1所示。其中,數據層用于獲取和存儲植保無人機作業相關的數據,包括基礎地圖數據、作業地塊數據、無人機飛行回傳的數據及設備和操作人員或管理人員數據。服務層提供數據服務和應用服務,包括數據統計分析、數據查詢、地圖展示、生成圖表、位置匹配、軌跡回放、作業參數管理、地塊數據管理、錯誤報警等相關功能,并支持應用層的服務調用。應用層主要實現注冊管理、設備管理、地塊管理、航線管理、無人機實時監控以及作業任務分析統計等功能。

圖1 植保無人機作業管理云平臺系統架構
目前植保無人機飛控模塊在回傳數據時,回傳機制和回傳數據的格式、參數名稱定義都由各飛控廠商自定義,有的采用WebSocket 推送,有的采用接口請求;回傳的位置數據坐標系,有的采用WGS84 坐標系,有的采用GCJ02 坐標系。植保無人機通用參數,例如速度、高度、噴幅、流量、每畝用藥量等字段定義也各不相同,并且沒有與位置數據關聯。由于回傳數據的坐標系不統一、數據字段不統一、傳輸方式不統一,導致了回傳的位置數據偏移問題,給數據的統一分析、統計、展示等應用帶來了很多的不便。針對上述問題平臺首先需要對回傳數據進行標準化處理,通過對回傳數據的對接服務進行數據的坐標系統一、屬性關聯與位置匹配,實現飛控回傳數據的整合。
首先,判斷不同的飛控回傳數據的機制,在推送模式建立連接后進入推送流程,依據回傳機制接收數據;接口模式依據接口定義采用輪巡進行數據獲取。其次,針對飛控回傳的位置數據進行坐標系轉換,依據坐標系判斷,將WGS84轉換為GCJ02。第三,將回傳數據的位置信息、飛行狀態、作業狀態進行關聯。第四,將回傳的位置信息進行位置匹配,匹配到具體的縣級行政區域。最后,將標準化處理后的數據,包括采用GCJ02 坐標系的飛行位置信息、飛行時關聯的作業區域、飛行速度、高度、噴藥量等信息存儲到飛行回傳數據庫。
植保無人機作業實時監控管理的關鍵技術之一在于實現植保無人機回傳數據與其作業地塊位置的快速匹配。依據空間對象的位置、形狀或對象之間的空間關系按一定的順序排列可以建立空間索引,這種數據結構能夠有效地提升空間數據的檢索效率[18]。楊澤等人[19]基于R 樹空間索引實現了植保無人機與植保作業的快速匹配。在實際應用中,基于R 樹空間索引匹配算法在匹配運算并發量較大時效率會明顯下降。為了克服這一缺點,本研究利用通用搜索樹(Generalized Search Trees, GiST)的索引機制,實現了無人機回傳數據與作業地塊的快速位置匹配。
本平臺使用PostgreSQL 關系型數據庫以及它的空間擴展PostGIS 來存儲空間數據,平臺先建立全國的省市區縣基礎數據表,再對全國范圍進行空間劃分,建立空間索引,以該索引作為判斷飛控模塊回傳的位置信息所在區域的依據。同時建立區縣內作業地塊的空間索引。本平臺利用PostGIS中的ST_Within 函數的索引過濾功能進行位置匹配,利用函數ST_Within(geometry A, geometry B)進行區域判定,如果幾何A 完全在幾何B 內,則返回true。在實際應用中先將無人機回傳的位置數據進行區縣判定,再依據無人機的作業狀態判定其作業位置與計劃作業地塊的位置關系。
通過將作業地塊的位置、面積、方位、地塊內有無障礙物、地塊內作物類型等信息登記到平臺,可以實現作業地塊的精確管理;結合地理信息平臺,可以實現作業地塊的可視化展示、地塊作業完成情況的統計等功能。
植保無人機的作業時長受到無人機的電池容量、載重能力、地塊形狀、作物類型等因素的約束[5]。在進行無人機作業航線設計時,需要考慮植保作業的類型、環境約束、無人機的飛機高度、作業時間、裝載藥量和電池的續航能力。
當地塊形狀為矩形時,一般選擇牛耕往復法以減少轉彎次數;對于凸多邊形地塊,可劃分為多個規則的子區域,在子區域內分別進行航向角的優化和飛行航線設計;對于凹多邊形地塊,可以將凹多邊形分割為多個子凸邊型,再分別進行飛行航線設計[5]。對于包含障礙物的作業地塊,可以基于柵格法對目標工作區域進行路徑點采樣,獲得所有有效路徑點;同時結合混合粒子群算法對路徑點進行排序,從而獲得有效的飛行航線[1]。對于三維作業區域,可采用基于改進蟻群算法的航線規劃方法[20]。
通過對作業地塊的精確管理,在航線設計時充分考慮無人機作業的各種影響因素,減少現場打點劃定地塊的工作量,提高無人機的有效作業時間。
平臺服務層的錯誤報警服務通過調用植保無人機實時回傳的作業數據,可以獲取單個無人機的飛行位置、飛行高度、當前速度、噴幅等信息。對比該無人機計劃的飛行線路、噴幅等數據,如果出現異常,則向應用層推送錯誤報警,從而應用層可以實時了解無人機是否出現異常作業。
平臺服務層的軌跡管理服務通過調用植保無人機實時回傳的位置信息,結合地圖展示服務可以將無人機的作業位置、當前速度、高度、噴幅、作業面積等相關信息展示在地圖上,供用戶實時查看,從而了解實時的作業情況,如圖2 所示。

圖2 無人機實時監控地圖可視化展示
通過平臺的地圖展示功能,還可以查看當前作業中的無人機實時位置,統計在線無人機數量、總作業時長、總作業面積、總作業架次、地塊信息、地塊總面積。通過動態實時地監控無人機的飛行軌跡和噴幅等信息,可以做到精準施藥,避免重噴、漏噴、錯噴等現象。
平臺服務層的軌跡管理服務通過調用植保無人機歷史軌跡信息,結合地圖展示服務,可以將植保無人機的飛行軌跡進行動畫展示或靜態展示。針對業務結算或有效作業質量檢查,在展示飛行軌跡時可利用其關聯的相關作業參數分不同顏色進行展示。例如根據無人機是否開噴灑裝置,軌跡展示為不同顏色,以便了解噴灑作業質量是否正常。分不同顏色對軌跡進行展示的效果如圖3 所示。

圖3 分不同顏色查看軌跡回放的示例圖
利用無人機回傳的數據及服務層的統計分析服務,平臺可以按照任務、地塊、時間、機型等指標進行噴灑作業的統計,結合地圖展示服務或圖表生成服務向用戶進行統計信息展示,從而讓用戶能直觀地了解植保無人機當日的作業面積、飛行架次、飛行時長、累計作業面積、報警數據、不同地區的作業面、任務完成情況等信息,以便植保無人機管理部門完善作業的區域部署以及任務調整。平臺統計數據展示效果如圖4 所示。

圖4 平臺分析統計展示功能
應用分析統計功能還可以針對作業任務進行統一管理,通過制定任務要求與時限,根據每日實際完成的作業數據統計,可以生成任務燃盡圖,如圖5 所示,從而監控任務執行情況,及時調整植保無人機作業數量和架次等參數。

圖5 任務統計示例
通過平臺的注冊管理模塊,可以對操作或管理人員進行注冊,并登記植保無人機的各類信息。通過為每個人員及每臺無人機分別分配唯一的ID 號,可以實現不同類型的人員權限管理,也可以實現設備的管理。
在平臺實現時,應用層采用傳統HTML+JavaScript 的響應式框架Svelte 進行開發,地圖交互采用現有的SmartMapX地理信息平臺,服務層采用NodeJs+Sequlize 進行搭建,數據層使用PostgreSQL 關系型數據庫以及其空間擴展PostGIS進行空間數據存儲。
平臺應用于河南省某市植保無人機的監控和管理,實現了對植保無人機數據的注冊與接入、回傳數據的位置匹配、入庫、存儲、管理,以及植保無人機的航線管理、作業的實時監控、任務執行的統計分析等功能。截止到2022 年8 月作業任務統計,該市植保無人機作業管理云平臺總計上線飛機3 580 架,平臺完成回傳數據標準化處理服務544 141 次,無人機總作業時長為33 692.28 小時,總作業面積為4 243 440.85 畝。
以平臺在某縣作業的統計結果為例,調取在該區域作業的500 架次飛行記錄,作業面積2 684.56 畝,總作業時長50 小時47 分13 秒,其在平臺上的軌跡分色展示效果如圖6所示。

圖6 500 架次歷史數據統計及軌跡展示
本文通過搭建基于地理信息系統的植保無人機作業管理云平臺,將植保無人機不同飛控模塊的數據進行標準化處理,即統一位置信息坐標系、將位置信息與植保作業信息相關聯,飛行軌跡信息匹配到作業地塊,便于不同類型的飛控模塊數據的統一存儲、管理和利用;結合地理信息平臺,可實現無人機作業地塊與航線的管理以及作業的實時監控、軌跡展示與任務統計分析等功能,實現了植保無人機作業管理的數字化和可視化,有利于無人機作業的大規模統防統治。平臺的設計與應用可以有效提高植保無人機作業的管理水平,提升農林植保的作業效率,為相關的地理信息技術與無人機應用提供了實例和參考。