楊保香
(西安航空職業技術學院,陜西 西安 710089)
伴隨著信息科技的不斷發展與應用,精準農業領域發生著日新月異的變化。在此背景下,自動導航等先進技術的研究與實踐,已經成為現代智能化農業發展的必然趨勢,并被廣泛應用在田間作業中,如土地平整、自動噴藥等。在自動導航定位中,精準定位和路徑控制是其關鍵的技術。在自動定位方面,GPS、GLONASS、北斗和伽利略等定位系統是當前主流的定位方式,并已成為自動導航應用的重點。如張碩等[1]提出了一種基于GNSS(global navigation satellite system,全球導航衛星系統)/MIMU/DR 組合的拖拉機自動定位方法,并結合PID控制方法,大大提高了拖拉機運行的精度。而在自動導航的路徑控制方面,目前的研究通常集中在PID模糊控制、最優控制、模糊控制、滑膜控制、純追蹤模型理論等。如熊中剛[2]以高速插秧機作為研究對象,提出一種基于模糊PID控制的自動轉向方法,并采用直線和曲線路徑跟蹤的方法,完成對高速插秧機路徑和轉向的控制;張聞宇等[3]提出一種基于SVR算法的逆向農機導航純追蹤方法,大大提高了純追蹤模型的動態性能;孟慶寬等[4]在PID控制中引入改進粒子算法對參數進行優化,改進后自動導航精度顯著高于傳統的控制方法。在實際應用中,考慮到農田環境的多樣性,農業機械導航的精度還需要進一步改進,并且不同的算法也都存在不同的問題,如PID控制時,其魯棒性較差;模糊控制過程中,對大曲率轉彎作業的導航效果不佳[5];粒子群算法的計算相對復雜;傳統的追蹤模型很難實現對農業機械狀態的自適應調整[6-7]。對此,筆者提出一種基于GNSS的農業機械導航系統,并對系統進行了測試。
本文設計的目的是通過硬件和軟件的搭建,實現對農業機械的自動導航,進而使得農業機械在作業的過程中,能嚴格按照設定的路徑進行作業,減少路徑運行的誤差。系統的整體架構設計如圖1所示。

圖1 系統整體架構搭建
該系統包含可編程邏輯控制器(PLC)、前輪轉角檢測裝置、方向控制裝置、GNSS定位裝置。具體的控制原理圖如圖2所示。首先通過GNSS對農業機械進行定位,同時結合對前輪轉角的測量,將數據發送給PLC控制模塊。PLC控制模塊在完成對偏差的計算后,將指令發布給方向控制系統,完成對運行路徑的修正。

圖2 系統控制原理圖
圖3為兩輪拖拉機運動簡化模型,即將兩輪拖拉機的運動簡化到一個二維平面上。為方便建模,采用三自由度的建模方法,即建模時只考慮拖拉機的橫向、縱向和橫擺3個自由度,忽略拖拉機運動過程中出現的滑移,同時假設輪胎側偏角度為小角度。

圖3 兩輪拖拉機運動簡化模型
在圖3中,XOY為導航坐標系;O為導航坐標系的原點;xCy為車身坐標系;C點為拖拉機質心;R為拖拉機的轉向半徑;Fx1,Fy1分別為拖拉機的前輪在縱向和側向方向上的作用力;Fx2,Fy2分別為后輪在縱向和側向上的作用力;vC,v1,v2分別為拖拉機質心、前輪、后輪的速度;β,α1,α2分別為質心、后輪側偏角、前輪側偏角;δ為前輪的轉向角;θ為拖拉機的行駛方向角;φC,φe分別為質心在慣性坐標系之下的航向角度和偏差;φP為P點的航向角;L為前視距離;yP為P點在橫向位置出現的偏差;a,b為質心到前后輪的距離。

(1)
(2)
式中:ω為拖拉機的橫向擺角;ρP為轉向曲率。
β無法直接得出,若質心沿x軸方向的速度為vx,沿y軸方向的速度為vy,則β為:
(3)
結合兩輪拖拉機運動簡化模型,可以得到拖拉機-路徑動力學模型。
(4)

為保證拖拉機能夠沿著直線進行跟蹤,將式(4)進一步變形,從而可得:
(5)
式中:A11,A12,A21,A22,B1,B2為拖拉機-路徑動力學模型狀態方程的系數。
為實現對拖拉機直線路徑的實時追蹤,對式(7)進行線性變換,從而可以得到直線路徑跟蹤偏差方程:
(6)
本文構建的自動導航軟件包括上機位和下機位。其中上機位在工控機中運行,主要負責數據的存儲、收發等;下機位在PLC中運行,主要接收上機位發送的控制命令,并對導航控制進行反饋。
上機位主要負責將系統采集到的GNSS數據和PLC數據等進行分析,然后顯示出拖拉機的路徑、姿態,以及相關的偏差角度信息。具體功能模塊如圖4所示。

圖4 上機位功能模塊
上機位軟件的數據處理流程設計如圖5所示。

圖5 上機位軟件數據處理流程
在上機位軟件數據處理流程中,通過多線程串口通信的方式完成對不同數據的收發,以保證數據通信的可靠性,同時提取GNSS 坐標,在對坐標進行變換以后,完成路徑的搜索,最終發送相關的控制指令。
對于下機位軟件的實現采用C++編程和MFC技術框架。下機位的功能模塊如圖6所示,包括通信模塊、控制模塊和AD/DA模塊3個部分。

圖6 下機位功能模塊
為驗證系統的可行性,以雷沃重工股份有限公司的TG1254拖拉機作為載體,搭建和開發該導航測試平臺。具體試驗方案為:以拖拉機直線路徑模型中的前視距離L處航位偏差為零作為目標,以實時采集到的拖拉機位姿信息來計算橫向位置偏差和航向角偏差,并將其與實際的結果進行比較,進而評價導航控制的優劣。同時設定前視距離為4.5m,采樣頻率和控制頻率都為5Hz,采樣時間為60s。在試驗之前,結合農田的實際情況規劃出一條直線的路徑,并結合導航系統標定起點和終點的坐標,進而得到目標路線。然后拖拉機靠近該路線,并啟動自動導航模式。試驗過程中,結合實時采集到的拖拉機位置坐標,計算出其實時橫向位置偏差和航向角偏差。
設定拖拉機的速度v分別為0.6m/s、0.9m/s,從而可以得到如圖7所示的測試結果。

圖7 目標路徑與實際運動軌跡
通過統計可以得到航向軌跡的最大誤差、最小誤差和均方根誤差,具體結果見表1。

表1 直線路徑導航試驗結果
將本文構建的方法與傳統的PID控制算法進行比較,可以得到如表2所示的誤差對比。

表2 本文控制方法與模糊控制算法誤差比較
本文構建的拖拉機運動路徑系統,可實時完成對路徑的自動導航。在導航中,系統可根據采集到的信息,自動調整偏差和方位角。而在本文構建的控制算法中,經過測試發現,車輛的速度越大,與目標路徑之間的偏差越大。由此可以看出,本文構建的導航系統在農用拖拉機導航作業上具有一定的實用價值。