李文彪
(廣州華商學院數據科學學院,廣州 510535)
當前工業機器人在各個領域都得到廣泛應用,包括智能巡檢、產品分揀、滅火作業、自動采摘等。工業機器人需要在不同場景下,針對周圍環境信息做出相應行為,完成工作人員下達的指令任務,從而滿足不同領域的需求。避障路徑規劃問題是機器人的研究重點,在工業機器人工作環境中,規劃一條無碰撞路徑,因此,研究工業機器人避障路徑規劃方法,選擇一條最優路徑,提高機器人對工作場景的適應性,具有重要意義[1]。
現階段,國外機器人避障路徑規劃相關研究較為成熟,當機器人工作場景較為簡單時,分析目標點和障礙物對機器人產生的合力,判斷機器人移動軌跡,當機器人工作場景過于復雜時,采用搜索算法,確定機器人最短移動路徑中,所有臨近節點的優先級[2]。國內機器人避障路徑規劃相關研究同樣取得較大進展,利用傳感器獲取障礙物信息,通過網格表示機器人所處的環境,根據蟻群算法、粒子群算法等,建立目標吸引函數,利用自適應學習機制,提高最優避障路徑的選擇概率[3]。
但常規機器人避障路徑規劃方法規劃時間和路徑長度不理想,規劃成功率較低,針對這一問題,結合現有的研究理論,提出基于深度強化學習的工業機器人避障路徑規劃方法。
分別在工業機器人前方、左側和右側,安裝傳感裝置,探測機器人與障礙物之間的距離方位,獲取周圍環境信息。利用角度探測范圍為0°到360°的電子羅盤,根據地磁場檢測的空間方向矢量,采集機器人運動方位角信息,表達式為:

其中a為機器人方位角,b為高斯白噪聲,A、B分別為水平方向和垂直方向的位置分量。根據式(1),確定機器人的移動方向,將移動方向與障礙物的夾角,作為機器人和障礙物之間的方位角E。利用超聲波傳感器測定障礙距離,當發射波遇到障礙物時形成反射波,通過發射換能器進行接收。考慮超聲波傳感器分布在機器人不同方位,包括前方、左側和右側,針對這一情況,判斷傳感器和機器人位置存在偏差,為此,通過坐標轉換,確保傳感器的測定距離能夠直接表示機器人位置。設機器人坐標系為X1Y1Z1,全局坐標系為X2Y2Z2,傳感器在X1Y1Z1中的位置為(x1,y1),(x1,y1)與X1Y1Z1橫坐標的夾角為C,c時刻的機器人位姿為(x(c),y(c) C(c)),對(x1,y1)進行位置變換,包括旋轉和平移等,得到X2Y2Z2中的傳感器坐標(x2(c),y2(c)),表達式為:

分析超聲波測距原理,根據周圍環境信息(x2(c),y2(c)),定位機器人,機器人與障礙物之間的最短距離D計算公式為:

其中d為X2Y2Z2原點到障礙物的垂直距離[4]。采用卡爾曼濾波融合算法,融合機器人和最近障礙物的方位信息E和距離信息D。至此完成工業機器人障礙距離和障礙方位的測定。
建立工業機器人狀態空間和動作空間,狀態空間包括距離和方位,計算機器人每個避障決策的獎賞值。將機器人移動方向與目標點的夾角,作為機器人和目標點的方位角f。計算機器人與目標點的距離F,公式為:

其中G為X2Y2Z2原點到目標點的垂直距離。把數據E、D、f、F實時傳輸至機器人控制模塊,獲得機器人狀態空間信息[5]。根據機器人線速度和角速度,把機器人運動狀態劃分為5種,分別為大幅度右轉、小幅度右轉、直行、小幅度左轉、大幅度左轉,構成機器人避障動作空間。
通過避障獎賞、機器人接近目標點的連續性獎賞,共同組成避障決策獎賞函數,其中連續性獎賞包括機器人與目標方位獎賞、機器人與目標距離獎賞、機器人到達目標獎賞。設機器人朝向目標點的角度范圍為[-g,g],計算機器人執行一個避障動作后,與目標點之間的方位角f',公式為:

其中(H,h)i為第i個運動狀態的動作指令,H、h分別為線速度和角速度。計算機器人與目標方位獎賞I,公式為:

當機器人更朝向目標點,f' 其中F'為機器人執行一個避障動作后與目標點的距離,k為起始點與目標點的距離。當機器人更靠近目標點,F' 避障獎賞僅考慮機器人和障礙物之間的最短距離,設定碰撞閾值為0.3m,當D值小于0.3m,判定機器人處于碰撞障礙物狀態,給予-300的懲罰獎賞值,當D值大于0.3m,判定機器人成功躲避障礙物,獎賞值為正。由于機器人主要運動狀態是前行,前行獎賞值應大于轉彎,小幅度轉彎獎賞值應大于大幅度轉彎。機器人避障獎賞函數K表達式為: 其中i=1表示運動狀態為直行,i=2,3分別表示小幅度右轉、小幅度左轉,i=4,5分別表示大幅度右轉、大幅度左轉。通過式(9),使機器人意識到障礙物危險。由式(6)~式(9),組成工業機器人避障決策獎賞函數,至此完成獎賞函數的定義。 把傳感器測得的狀態空間信息,包括距離和方位,輸入BP神經網絡,通過深度強化學習,使機器人學習到避障能力,將最大化避障決策獎賞函數作為優化目標,得到最優避障路徑。構建BP神經網絡結構,由于訓練周期、學習率、各個網絡層神經元數量等參數,都影響了BP神經網絡的深度強化學習效果和時間,為此,測試各項參數與深度強化學習性能的關系,選擇使得學習效果和效率最高的各項數據。將BP神經網絡劃分為兩個部分,分別為機器人避障動作估計部分、決策獎賞估計部分,其中避障動作估計部分采用分布式結構,輸入機器人狀態信息,輸出未來時刻應該選擇的5種動作,決策獎賞估計部分采用集中式結構,使用價值估計器,估計避障動作的獎賞值。計算數據E、D、f、F歸一化值,組成輸入BP神經網絡的數據組,輸出下一運動狀態機器人應執行的動作,避障動作包括(H,h)1、(H,h)2、(H,h)3、(H,h)4、(H,h)5。深度強化學習過程如圖1所示。 圖1 最優避障決策深度強化學習流程 先初始化BP神經網絡參數和環境信息,確定機器人未來時刻的避障動作,添加噪聲后形成新的運動狀態,得到避障決策獎賞值,若獎賞值(I+J+L+K)未達到全局最優,更新BP神經網絡參數,重新選擇避障動作,直至獎賞值達到max(I+J+L+K),停止深度強化學習,得到最優避障動作。當機器人成功躲避一個障礙物后,重置環境信息和空間狀態信息,得到下一時刻的最優局部路徑,直至機器人到達目標點,形成全局最優避障路徑。至此完成基于深度強化學習的最優避障路徑規劃,實現工業機器人避障路徑規劃方法設計。 將此次設計方法,與基于優化蟻群混合算法的避障路徑規劃方法、基于多傳感器信息融合的避障路徑規劃方法,進行對比實驗,比較三種方法規劃時間、路徑長度、規劃成功率。 搭建工業機器人平臺,選擇bobac工業機器人作為測試對象,該機器人搭載上下兩層控制器,使用全向輪運動,具有電源開關、急停開關、14英寸顯示屏、防跌傳感器、碰撞傳感器。bobac機器人預裝了ROS控制系統,上位機控制器為bobac工控器,具有豐富的傳感器接口,下位機控制器負責實現不同類型的避障動作。 實驗環境為某工廠的寬敞廠房,在廠房內布置障礙物,改變障礙物數量和位置,得到簡單場景和復雜場景。利用柵格地圖表示廠房環境,實驗場景和兩種場景的理論最優避障路徑如圖2所示。 圖2 工業機器人移動環境信息 圖中黑色部分表示障礙物,左上方為bobac機器人移動起始點,右下方為目標點,每一個柵格代表一個運動狀態,機器人移動范圍不能超出場地,且應避開所有障礙物。 設計方法選擇RPLIDAR A2電子羅盤,該電子羅盤能夠實現360°全方位掃描,掃描頻率為10Hz~15Hz,測距時間為0.30ms,測距范圍為0.20m~7m,超聲波傳感器選擇S02-UWR型號,測距精度為0.8mm,測量范圍為40mm×30mm×22mm,將電子羅盤和超聲波傳感器經由串口,連接至bobac機器人的下位機控制器。劃分機器人運動狀態,機器人線速度H恒定,當角速度h為-1.5rad/s時,避障動作為大幅度右轉(H,h)4,當h為-0.75rad/s時,避障動作為小幅度右轉(H,h)2,當h為0時,避障動作為直行(H,h)1,當h為0.75rad/s時,避障動作為小幅度左轉(H,h)3,當h為1.5rad/s時,避障動作為大幅度左轉(H,h)5,其中正值表示角速度方向為左,負值表示角速度方向為右。設置BP神經網絡參數如下:訓練總步數為2萬步,每次深度強化學習的步數上限為200步,學習率為0.1。 bobac機器人以0.4m/s的線速度移動,三種方法規劃的避障路徑如圖3所示。 圖3 工業機器人避障路徑規劃結果 由圖3可以看出,針對簡單環境和復雜環境兩種場景,設計方法規劃的最優避障路徑,與理論最優避障路徑基本一致。為進一步比較三種方法的優劣,分別在簡單環境和復雜環境下進行200次實驗,比較三種避障路徑的規劃時間、路徑長度、成功率。當bobac機器人成功從起始點到達目標點,沒有碰撞任何障礙物,判斷避障路徑規劃成功,否則判斷避障路徑規劃失敗,統計成功次數Q和失敗次數P,成功率l計算公式為: 三種方法實驗對比結果如表1所示: 表1 規劃時間、路徑長度、成功率實驗對比結果 由上表可知,機器人在簡單場景移動時,設計方向相比另外兩種方法,規劃時間分別減少了7.516s、10.809s,路徑長度分別減少了1.712m、1.809m,規劃成功率分別增加了3.5%、6.0%;針對復雜場景,設計方法規劃時間分別減少了10.114s、14.015s,路徑長度分別減少了1.444m、1.721m,規劃成功率分別增加了4.3%、5.8%,設計方法規劃的避障路徑具有很大優勢,更適合工業機器人執行。 此次研究應用深度強化學習,設計了一種工業機器人避障路徑規劃方法,避障路徑的規劃時間、路徑長度、規劃成功率,都明顯優于常規方法。但此次設計方法仍存在一定不足,在今后的研究中,會加入更多的外部傳感器,實時采集環境信息,作為深度強化學習的輸入,進一步提高避障路徑規劃方法對復雜場景的適應性。


1.3 基于深度強化學習規劃工業機器人最優避障路徑

2 實驗測試
2.1 測試場景

2.2 設計方法應用
2.3 測試結果分析



3 結語