吳厚波, 孟志軍, 劉 卉, 陳競平
(1.首都師范大學信息工程學院,北京 100048; 2.北京農業智能裝備工程技術研究中心,北京 100097)
近年來,伴隨著現代農業技術的發展以及農村勞動力減少的現狀,農業機械多功能化、精準化和智能化已成為發展趨勢[1]。作為典型的農機智能裝備,自動駕駛拖拉機可以解放人力,降低生產成本,同時提高農業生產的可持續性和精準性,在如噴藥、施肥等使用化學物質的作業任務中可以避免對人體的傷害和降低對土地、作物的過量污染。此外,小型農田機器人的研究也得到關注,在一些重型機械不適合的環境中,如潮濕、泥濘的土地或小規模地塊中,可以起到更好的效果,也可以減少作業后土壤的板結度,并減少能源的消耗[2]。
大型農田智能裝備技術研究通常以拖拉機為平臺,而小型農田作業機器人的研發需要獨立的平臺,機械設計成本較高;并且農田范圍廣,基礎設施條件受限,對機器人能源供給提出了更高的要求。目前國內外關于小型農田作業機器人的研究仍處于技術探索階段,潛在應用方向包括田間自主巡查、測繪農田數據、監測作物生長狀況,并在需要時對農田進行高精度的精準除草和選擇性收獲[3]。農田機器人BoniRob,通過激光雷達、慣性測量單元和GPS(全球定位系統)進行定位導航,已經可以用于農田部分作物巡查作業,并輔以其他傳感器監測作物生長狀況,用戶可以通過WLAN(無線局域網)遠程獲取監測數據和修正運動路線[4]。Chen設計了1個植物監測機器人,可以通過攝像系統監測一些不便接近的植物,并可同時監測多個小型植物[5]。
首先農田巡查機器人需要追蹤預先規劃好的農田路徑,完成自動巡航,因此機器人應具有高精度的定位和路徑追蹤功能。Griepentrog等針對農村小面積農田中缺少低價的高精度定位條件,提出了1種基于紅外跟蹤裝置的小型農田機器人定位系統,通過在農田邊緣架設紅外跟蹤裝置,安裝了紅外傳感器的機器人,可以實現低成本且較高精度的定位[3]。Velasquez等設計了農田機器人Helvis,通過使用激光雷達和SLAM算法探測玉米地環境并定位,使其實現在無路徑規劃下玉米地中的自動行走[6]。宋健等在田間預先埋設高頻電流的導線,為機器人加裝電磁感應傳感器,通過導線產生誘導信號,機器人通過1對電磁感應傳感器的信號電壓差值來定位并追蹤路徑[7]。陳艷等利用GPS獲取車輛的實時位置,通過機器視覺獲取導航路徑,實現GPS與視覺融合的導航方式[8]。以上方法仍有不足之處,紅外和電磁傳感需要在農田中預先鋪設傳感器,激光和視覺傳感器需要以農田作物作為參照,且對天氣有一定要求。但GPS可以做到不受環境條件限制,全天候高精度定位。
此外機器人應具備避障功能,楊小菊等將超聲波傳感器、紅外傳感器和電子羅盤相結合,通過模糊神經網絡控制機器人避障[9]。金兆遠等組合使用多個超聲波傳感器,采用二分法與模糊控制相結合方式實現避障功能[10]。還有一些采用圖像識別與人工神經網絡識別物體的方法[11]。相比較而言,激光測距傳感器測距精度高、分辨率好、抗干擾能力強,特別適用于實時控制系統的環境感知研究[12]。
本文以Seekur機器人平臺為基礎,通過加裝高精度雙天線GPS和激光測距儀構建農田巡查機器人硬件系統。采用Microsoft Visual C++集成開發環境,應用ARIA機器人程序庫和ArcEngine地圖組件進行基于行為的程序設計與編碼。本研究采用了雙參數P控制算法實現目標路徑追蹤,使用模糊控制的方法避開路徑上的障礙物,并通過試驗驗證了算法的有效性。
基于Seekur平臺的農田機器人系統如圖1所示,主要包括Seekur機器人平臺、R60S雙天線定位定向接收機、激光測距儀Sick LMS-200。

Seekur是由MobileRobotsActiveMedia公司推出的可以全天候運行、四輪獨立轉向的智能通用型機器人平臺。Seekur內部可安裝5臺工控機,有效實現數據的集群運算和統一處理,并具有較重的負載能力和額外接口,允許在機器人上加裝其他傳感器及執行機構。
R60S是聯適導航公司一款高精度北斗/GNSS(全球衛星導航系統)雙天線定位定向型接收機,具有抗干擾性好、初始化速度快、性能穩定等優點,能提供各種靜態或動態平臺精確的實時位置、航向、俯仰或橫滾姿態角,可運用在多種運動載體上。
激光測距儀LMS-200是SICK公司研制的激光雷達探測儀,通過計算發射激光脈沖的返回時間來探測前方障礙物。激光測距儀具有掃描時間短及不受環境、物體顏色和結構影響等優點,能有效探測物體的體積和位置,為機器人避障提供精準數據。
ARIA是Seekur機器人配套的程序庫,支持在Microsoft Visual C++集成開發環境下進行程序開發。ARIA采用面向對象的設計模式,將機器人底層控制功能封裝成類,包含串口通信、狀態包和命令包的處理以及多線程控制、同步和異步機制等功能。用戶根據機器人應用需求調用ARIA庫函數開發實現相應功能。
ArcEngine是ESRI公司推出的1款嵌入式GIS(地理信息系統)組件庫,用于構建定制應用,它提供了豐富的GIS相關接口,如地圖編輯、坐標轉換等功能。
本研究采用Microsoft Visual C++集成開發環境,應用ARIA機器人程序庫和ArcEngine地圖組件進行程序設計與編碼,實現了加載目標路徑、機器人定位、路徑追蹤顯示、障礙物探測及有效避障。
針對農田機器人典型的田間巡查作業,按照“農田巡查作業完成作業的任務組合執行任務的基本行為單元序列”逐級分層的研究思路,遵循機器人控制領域行為設計的針對性、唯一性和最小性的基本原則,解析出最小、唯一且可直接控制執行的機器人基本行為單元,構建農田機器人的基礎行為庫。如圖2所示,農田機器人巡查作業具有半結構化特征,其行為具有功能性、時間性和關聯性,可分為理性行為和感性行為2類。
理性行為是基于“感知-思考-行為”的行為,屬于高層行為,其行為結果不會影響機器人當前的狀態,而是決定未來的行動。例如路徑規劃行為,根據農田環境和設定的目標規劃生成巡查作業路徑;障礙物探測行為,檢測機器人周邊環境是否出現障礙物;感性調度行為,根據其他理性行為的需求喚醒或休眠感性行為;自檢行為,定時檢查機器人自身狀態是否出現異常情況。

感性行為是基于“感知-行為”的行為,屬于低層行為。感性行為耗時短,直接影響機器人的當前狀態。例如路徑追蹤行為,追蹤當前規劃路徑的行為;避障行為,控制機器人繞開前方障礙物的行為;故障處理行為,當系統故障或遭遇其他不可預知的狀況時,為保證機器人安全的緊急制動行為。
以感性行為為例,將行為拆分為基本動作單元。如路徑追蹤行為可以拆分為GPS定位、計算轉向角和轉向3個基本動作單元;避障行為可以拆分為GPS定位、計算速度、計算轉向角、轉向、加速和減速6個基本動作單元。不同行為的實現過程,即為多個基本動作單元的時序組合。通過基本行為庫,再實現農田巡查機器人“執行任務的基本行為單元序列完成作業的任務組合農田巡查作業”逐級組合。
采用統一建模語言(UML)描述機器人的行為,建模行為類及不同行為類之間的關聯,圖3為農田機器人的UML行為建模圖。

圖3中包含傳感器交互、理性行為、感性行為、Seekur控制4個部分的內容。
(1)傳感器交互。由GPS傳感器GPSSensor類和激光傳感器LaserSensor類分別負責與GPS接收機和激光傳感器的交互、數據解析及傳遞等功能。
(2)理性行為。其中PathPlaning類為路徑規劃行為,負責導入地塊及路徑信息,通過GPS坐標生成新的路徑,將路徑傳遞給路徑追蹤行為Navigation類。ObstacleDetection類為障礙物探測行為,負責根據激光掃描數據解析障礙物信息,判斷是否需要避開障礙物,并將障礙物信息傳遞給避障行為ObstacleAvoid類;Dispatch類為感性調度行為,根據其他理性行為傳遞的信息,判斷激活或休眠感性行為;SelfCheck類是自檢行為,監控機器人運行狀態,并在故障時通過調度行為喚醒故障處理行為。
(3)感性行為。其中Navigation類為路徑追蹤行為,控制機器人即時追蹤路徑;ObstacleAvoid類為避障行為,控制機器人避開前方障礙物;FaultDisposal類為故障處理行為,在機器人故障時停止機器人運行,避免進一步的損失。
(4)Seekur控制。Seekur類為機器人控制類,負責與機器人本體的交互,從而控制機器人運動。
從路徑規劃行為中獲取目標路徑,采用北京54坐標系投影將GPS獲取的實時經緯度數據轉換為平面坐標。
在機器人路徑追蹤控制方面,白辰甲設計了1個基于計算機視覺和深度學習的控制系統,通過計算機視覺獲取農機前方路況,再通過卷積神經網絡學習和預測轉向角,進而自動控制農機,但是機器視覺對環境要求較高,且通常只適用于某些地塊和作業類型,普適性較差[13]。張琳潔采用GPS進行定位,利用PID算法設計轉向控制器,為車輛的轉向機構建立運動學模型,設計了單因子自調整的模糊控制,再利用神經網絡的自學習和自適應功能,建立模糊神經網絡控制算法,計算農田機器人轉角,實現在低速和平坦環境中有效地追蹤目標路徑[14]。該系統采用了多種方法,提高了精度,但也導致耗時較長,且需要大量數據預先進行學習。本研究采用改進的雙參數P控制方法,結合GPS定位,可以適應大多數農田地塊,耗時短,能夠實現有效的路徑追蹤行為。
如圖4所示,黑色直線為目標路徑,ε為機器人重心到目標路徑的距離,φ為機器人航向與目標路徑之間的夾角。

經典的P控制方法,以機器人當前位置偏差ε為輸入,通過設置適當的比例系數kε,控制機器人前輪相對轉向角ψk,可以實現基本的路徑追蹤。
發布會現場,兄弟(中國)董事長兼總經理尹炳新先生為新品發布致辭。他指出,隨著中國經濟的發展,個人消費升級趨勢明顯。針對家用市場的需求和變化,Brother不斷研發出與用戶需求更契合、更能激發用戶創造力的產品,以此滿足中國市場的需求。兩位生活達人受邀前來分享了各自關于品質生活、收納整理方面的心得。城市里的生活忙碌中夾雜著喧囂。如何在有限的時間和空間里保有品質?唯有取舍有道。每個人心中所求不同,而Brother能為追求簡約、時尚的人們帶去更多選擇。
ψ(k)=kεε(k)。
(1)
但是這種方法存在不少問題:其一,單參數P控制會導致航向偏差不斷累加,存在穩態誤差,還可能導致計算的轉向角過大,使機器人出現逆向行駛;其二,由于不斷累加的航向偏差會使機器人的航向與目標路徑航向間存在較大誤差,需要經過多次振蕩后才能與路徑航向一致。本研究對單參數P控制算法進行了改進,采用基于位置偏差和航向偏差的雙參數P控制算法,可以有效地改善單參數P控制算法的缺陷。
ψ(k)=kεε(k)+kφφ(k)。
(2)
式中:ε(k)為位置偏差,mm;φ(k)為航向偏差,°;kε為位置偏差比例系數;kφ為航向偏差比例系數;ψ(k) 為機器人轉向角,°。
在雙參數P控制算法中,位置偏差ε(k)和航向偏差φ(k)是相互協作制衡的關系。在追蹤過程中,位置偏差ε(k)為正值時,航向偏差φ(k)通常為負值,反之亦然。通過選擇合適的比例系數kε和kφ,當機器人和目標路徑距離較遠時,kεε(k)較大,令ψ(k) 為正值,機器人轉向目標路徑。當機器人和目標路徑距離較近,且航向偏差較大時,kφφ(k)較大,令ψ(k)為負值,令機器人提前反向調整轉角。通過提前反向調整的緩沖,使得最后的轉角不會引起逆行,也可以有效地減小機器人抵達目標路徑時,機器人和目標路徑間的航向偏差,減小追蹤過程中的振蕩。因為有航向偏差φ(k)參與作為緩沖,可以有效地降低系統穩態誤差,并且控制方法簡單。
3.3.1 Seekur機器人標定試驗
3.3.1.1 Seekur車輪轉速標定 Seekur的左右輪轉速存在細微差異,在進行試驗前需進行車輪轉速標定。令Seekur靜止,以0.5 m/s的速度,沿正前方行駛30 s。其間每隔0.1 s記錄1次Seekur的左輪速度vl、右輪速度vr、旋轉速度vrot。
3.3.1.2 GPS雙天線航向安裝偏差標定 在Seekur平臺上安裝GPS雙天線時,前后天線的連線與Seekur的中軸線存在初始安裝偏差。首先記錄Seekur初始的GPS坐標及航向φg,然后令Seekur以0.5 m/s的速度沿直線方向行駛20 s,記錄Seekur停止時的GPS坐標及相對于初始位置的航向誤差φs。根據行駛軌跡生成路徑并計算路徑航向φp,則GPS雙天線航向安裝偏差為
Δφ=φp-φs-φg。
(3)
3.3.1.3 標定結果 按照前述方法對Seekur車輪轉速和GPS雙天線航向安裝偏差進行多次重復試驗,計算誤差均值,詳見表1。


表1 標定試驗結果

表2 路徑追蹤參數及結果
當kε不變時,調整比例系數kφ,隨著kφ的增加,橫向偏差均值的變化如同1個波谷,標準差的值則不斷減小;當kφ不變時,調整比例系數kε,隨著kε的增加,橫向偏差均值不斷減小,標準差的變化如同1個波谷。尋找調節過程中均為波谷的參數值作為最后的結果。在上述試驗中,通過合理調整比例系數,能夠實現Seekur機器人的路徑追蹤。圖5中,虛線為目標路徑,實線為kε=0.025和kφ=0.5時的追蹤路徑,從數據結果分析,Seekur系統的標準差較小,說明算法具有較好的穩定性,但仍存在一定的系統偏差,使得橫向偏差均值較大,還需進一步的算法改進。

障礙物探測行為在機器人運動過程中不斷接收解析激光數據,判斷前方是否有障礙物[14],有障礙物時是否進入預警范圍,當有障礙物進入預警范圍時,通過感性調度行為喚醒避障行為,并傳遞障礙物信息。
農田機器人避障行為使用模糊控制算法。如圖6所示,障礙物與機器人間距離為ε0,夾角為φ0,機器人下一步轉向角為ψ(逆時針為正)。其中,距離ε0和夾角φ0為輸入量,下一步轉向角ψ為輸出量。

輸入值中距離ε0的量化論域Xε=[-4,4],其語言值的模糊子集為{很近,近,居中,遠,很遠},即{VN,N,M,F,VF};夾角φ0的論域為Xφ=[-6,6],其語言值的模糊子集為{左大,左中,左小,零,右小,右中,右大},即{LL,LM,LS,ZO,RS,RM,RL}。
輸出值轉向角ψ的量化論域Xψ=[-3,3],其語言值的模糊子集為{負大,負中,負小,零,正小,正中,正大},即{NL,NM,NS,ZO,PS,PM,PL}。
采用三角隸屬函數計算輸出值:
(4)
式中:n代表本次輸入激活的子集個數;με(xi)為激活子集的距離隸屬度;μφ(yi)為激活子集的角度隸屬度;Yi為當前激活子集對應的輸出轉向角論域的值;ψ為最終輸出的轉向角,°。
模糊控制規則見表3。

表3 避障模糊控制規則
在Seekur機器人仿真環境MobileSim中,加載使用Mapper3繪制的具有障礙物的農田地圖,對避障過程進行仿真。如圖7所示,機器人在探測到障礙物后,能根據激光掃描信息,使用模糊控制的方法避開障礙物,繼續追蹤原路徑。目前的避障算法僅能應對數量較少的障礙物,難以應對復雜環境及運動障礙物,還需開展進一步研究。

(1)以Seekur機器人平臺為基礎,通過加裝高精度雙天線GPS接收機和激光測距儀構建農田巡查機器人硬件系統。
(2)針對農田機器人典型的田間巡查作業,按照逐級分層思想,解析最小、唯一且可直接控制執行的機器人基本行為單元,研究不同行為間的關系,構建農田機器人的基礎行為庫。
(3)采用改進的雙參數P控制方法實現機器人的路徑追蹤行為,開展田間試驗,調整距離參數和角度參數,最終穩定追蹤時橫向偏差均值為 4.55 cm,標準差為1.06 cm,能夠實現較準確的目標路徑追蹤任務。
(4)采用模糊控制方法實現機器人的避障行為,以障礙物和機器人間距離和角度為輸入量,以機器人轉向角為輸出量,建立模糊規則。當其被障礙物探測行為通過感性調度行為喚醒時,控制機器人避開障礙物,通過仿真驗證了模糊控制規則的可行性。