王 娜,石 晨
(河南工業職業技術學院,河南 南陽 473000)
路徑規劃是農業機器人研究領域的技術難點之一,其目的在于為機器人的作業過程尋找最優路徑。路徑規劃的研究和應用可以解決機器人在復雜作業環境中的安全行駛難題。目前,研究機器人路徑規劃最常用的算法有粒子群、螞蟻、遺傳、神經網絡、人工勢場算法等。為此,將人工勢場算法和模糊控制算法結合起來,實現了智能草坪修剪機器人的路徑規劃。
智能草坪修剪機器人路徑規劃首要條件是建立作業環境模型,在此基礎上才能較好地確定時間短、路徑短的最優路徑。在此,采用柵格法對機器人作業環境建模,先利用柵格的極坐標和直角坐標進行變換,再將作業環境分成單位相同的柵格,若作業環境存在障礙物或者其他物體,則將該區域標記為障礙物柵格。
采用柵格法建立智能草坪修剪機器人作業環境模型的流程:①建立直角坐標系,如圖1所示;不具體細分柵格,而是以障礙物的頂點確定障礙物的實際位置,如圖2所示。②在作業過程中,智能草坪修剪機器人會實時判斷是否會從障礙物穿過;若是,則判別會與障礙物發生碰撞。③為了實現機器人的路徑規劃,將每個障礙物的定點進行連線,在進行路徑規劃時,不允許規劃路徑穿過連線,確保不會發生碰撞行為。

圖1 智能草坪修剪機器人作業環境模型Fig.1 The working environment model of intelligent lawn mowing robot

圖2 障礙物簡化示意圖Fig.2 The brief sketch diagram of obstacles
采用圖1、圖2中柵格法表示障礙物,會延長智能草坪修剪機器人路徑規劃的時間,對機器人CPU性能要求也很高。因此,采用圓形域對不同形狀的障礙物進行表示,簡化智能草坪修剪機器人的計算。作業環境中,障礙物表示方法如圖3所示。

圖3 作業環境中障礙物表示方法Fig.3 Obobstacle representation in working environment
機器人的路徑規劃一般采用人為或者簡單的算法進行,假設遇到作業環境復雜可能無法快速獲得環境數據和計算出最優路徑,會大大降低工作效率。因此,引入人工勢場算法,根據機器人作業環境搭建勢場模型。在該模型中,智能草坪修剪機器人和障礙物之間存在排斥力,同目標地存在吸引力,當智能草坪修剪機器人和障礙物之間的距離越近時,則排斥力越大。
采用人工勢場對智能草坪修剪機器人進行路徑規劃,根據勢函數的下降方向進行避障處理,再快速向目的地進行移動。本文在傳統人工勢場的基礎上,引進了目標和智能草坪修剪機器人的歐幾里得距離,其表達式為
(1)
其中,Urep(q)為人工引力勢場;X為目標的歐幾里德距離;Xg為智能草坪修剪機器人的歐幾里德距離。
智能草坪修剪機器人和障礙物之間的斥力函數是負梯度,其方程式為
Frep(q)=-?Urep{q)
(2)
然后,分別使用Frep1和Frep2對ρ(q,q0)進行求導計算,即
(3)
(4)
其中,Frep1和Frep2均為矢量;Frep1為從智能草坪修剪機器人指向障礙物的方向;Frep2為從智能草坪修剪機器人指向目標點的方向。智能草坪修剪機器人的受力示意如圖4所示。

圖4 草坪修剪機器人的受力示意圖Fig.4 The force diagram of lawn mowing robot
為了實現對草坪修剪機器人移動路徑的精準優化,在人工勢場算法的基礎上引入了模糊邏輯控制方法。該算法在人工勢能獲取草坪修剪機器人期望的運動速度和期望的方向、當前的運動速度vs和運動方向as的變差量ea和ev。基于模糊邏輯改進人工勢場算法的草坪修剪機器人運動原理如圖5所示。

圖5 基于模糊邏輯改進人工勢場算法的運動原理圖Fig.5 The motion schematic diagram of improved artificial potential field algorithm based on fuzzy logic
在得到速度和運動的方向之后,可以采用模糊控制技術對其進行模糊化。本文在研究過程中,將速度和方向偏差值模糊化為大、中、小、中正、大正等幾種偏差,分別采用BNZ、MNZ、SZ、MPZ和BPZ等。速度和方向偏差的隸屬函數分布分別如圖6和圖7所示。

圖6 速度的隸屬函數分布示意圖Fig.6 The distribution diagram of membership function of velocity

圖7 方向偏差的隸屬函數分布示意圖Fig.7 The distribution diagram of membership function of direction deviation
為了實現速度和方向的快速控制,將得到的控制量設置為增量模式,即控制系統對控制量采用增量方式進行模糊化,對論域里設置大負、中負、小、中正和大正等增量,分別對應BNS、MNS、SS、MPS、BPS。速度和方向偏差增量的隸屬函數分布分別如圖8和圖9所示。

圖8 速度偏差增量的隸屬函數分布圖Fig.8 The distribution diagram of membership function of speed deviation increment

圖9 方向偏差增量的隸屬函數分布圖Fig.9 The distribution diagram of membership function of direction deviation increment
模糊控制的規則設定經過數次的實驗測試后才能得到,根據經驗可以設置草坪修剪機器人速度和角速度的控制增量。通過模糊化和制定規則后,在控制規則的作用下,可以將得到的控制量采用重心法計算出控制量增量(Δv和Δw)的準確值。這樣,可以根據以下表達式計算出草坪修剪機器人在人工勢能場的虛擬合力,并轉換成草坪修剪機器人的控制指令v(k|+1)和w(k|+1),即
(5)
草坪修剪機器人路徑規劃采用多邊形工作區域的模式,自主行走都是采用直線模式,割草機器人通過GPS傳感器獲取工作區域邊界坐標信息 ,以及多邊形區域的邊界定點和直線方程表達式。為了簡化計算量,以多邊形的第1個點為該工作區域的坐標原點,第1個點和第2個點之間的連線為y′軸,其與平面坐標系的轉換方式如圖10所示。

圖10 多邊形工作區域坐標轉換圖Fig.10 The coordinate transformation diagram of polygon working area


圖11 草坪修剪機器人多邊形作業區域示意圖Fig.11 The schematic diagram of polygon working area of lawn mowing robot
根據多邊形各個頂點在區域坐標系中的坐標求取邊界線Lj(j=0,1,...,N),在多變行作業區域的直線方程分為以下兩種:
1)如果j≤N-1,那么其直線方程表達式為
(6)
2)如果j≤N-1,那么其直線方程表達式為
(7)
首先,確定直線Gk在區域內的方程表達式為x′=kW,W為草坪修剪機器人割臺寬度;然后,結合式(6)和式(7),求出Gk和邊界線Lj的交叉點,計算出坐標后,根據圖12流程圖對草坪修剪機器人工作區域進行路徑規劃。

圖12 草坪修剪機器人路徑規劃流程圖Fig.12 The path planning flow chart of lawn mowing robot
為了檢驗基于模糊改進人工勢場算法的智能草坪修剪機器人路徑規劃系統的準確性和有效性,本文采用MatLab對智能草坪修剪機器人在避障和路徑規劃過程中遇到的問題進行了模擬和仿真。仿真過程中,機器人作業區域是一個四邊形,作業區域內有兩個黑色障礙物。MatLab仿真結果如圖13所示。

圖13 MatLab仿真結果圖Fig.13 The simulation results by MatLab
由圖13可以看出:模糊改進人工勢場算法可以實時、有效地控制智能草坪修剪機器人及時避開障礙物,準確從起點開始修剪草坪作業,并作業至目標終點,規劃的路徑也比較平滑,證實了算法的有效性和可行性。
為了實現智能草坪修剪機器人的自主避障和路徑規劃,對人工勢場算法的勢場函數進行了升級改進,同時引入了模糊控制算法,將機器人的速度和方向偏差進行模糊化,實現了該機器人的避障路徑規劃。MatLab仿真實驗表明:模糊改進人工勢場算法可以實時、有效地控制智能草坪修剪機器人及時避開障礙物,準確從起點開始修剪草坪作業,并作業至目標終點,規劃的路徑比較平滑,證實了算法的有效性和可行性。