吳浩天,黃思,肖湘桂,楊建中
(華中科技大學國家數控系統工程技術研究中心,武漢 430074)
工業機器人速度規劃[1]分為路徑未知和路徑已知兩種情況,前者主要用于點到點的運動,后者廣泛用于焊接、噴涂等工藝上。如何在確定路徑的情況下規劃機器人的速度使得時間盡可能短成為工業和學術界廣泛關注的問題。一類被廣泛應用的方法是采用改進遺傳算法[2]、改進粒子群算法[3]等進行問題求解,此類算法效率相對較低,很難直接應用到工業生產;還有諸如罰函數法[4]、序列二次規劃[5]等方法,其求解精度過分依賴于初始條件,無法保證全局最優。上述方法受制于算法本身存在的缺陷,很難同時保證機器人的運動學和動力學特性。常用來解決此類優化問題的方法還有基于凸優化[6]和可達性分析[7]的最優速度規劃;除此之外隨著人工智能的發展,神經網絡[8]、強化學習[9]等方法也被廣泛應用,關鍵是如何將機器人的運動學和動力學特性充分發揮。
本文未采用傳統DH參數法[10]建立機器人運動學模型,而是采用指數乘積公式POE(The Product of Exponentials Formul)[11],利用其具有一階連續的良好性質,與李群李代數理論聯系起來,方便擴展到動力學建模。在得到機器人全局模型之后,以時間為主要優化目標,綜合考慮機器人運動學和動力學約束,基于凸優化理論,將目標問題轉化為標準的二階錐規劃[12]模型并完成目標問題的求解,最后仿真結果顯示,本文方法在時間上有很大優勢,可為工業機器人的實際應用提供理論依據。
以國產華數機器人HSR-605為研究對象,采用指數積建模的方法建立機器人運動學模型,該方法基于指數積公式,將運動方程表示成運動旋量的指數積,由此給出了機器人運動學方程完整幾何表達。該方法對比傳統DH法,無需建立局部坐標系,大大簡化了建模過程,且模型具有更明確的物理和幾何意義。下面結合指數積旋量理論針對機械臂正逆運動學進行分析。
HSR-605的指數積建模及尺寸關系如圖1所示。

圖1 HSR-605機器人連桿坐標系
機器人基座標系{0}的坐標軸方向為X0、Y0、Z0,機器人末端法蘭盤坐標系{6}的坐標軸方向為X6、Y6、Z6。L1、L2、L3、L4、L5、L6分別表示機器人指數積建模時各個關節軸線的線矢量,其方向如圖2所示,其中L4、L5、L6相交于同一點。a2=360 mm,a3=90 mm,d4=376.5 mm,d6=119 mm。六關節機器人的指數積運動學方程如下:

圖2 指數積建模及尺寸關系

式中:Li為運動旋量坐標;Li[]為運動旋量;ωi為第i關節旋轉軸在基座標系中的軸線方向矢量;ri為第i 關節軸線上的一點在基座標系中的位置坐標。
機器人運動學的正解映射關系如下:

本小節首先進行參數化處理,借助弦長參數化理論通過引入路徑參數s、s˙、s¨將6n維優化問題轉化成相平面s˙-s、s¨-s上的2維問題,大大簡化后續的求解過程。根據鏈式求導法則q˙=q′(s)s˙、q¨=q″(s)s˙2+q′(s)s¨,將關節空間問題轉換到參數空間進行求解。
以時間作為主要的優化目標以保證時間最優,且在工業機器人作業的大多數環境當中以犧牲時間效率為代價去節省能量意義不大,故本文并未引入能量項;而考慮到當時間處于最優狀態時機器人至少有一個關節軸會處于最大加速度或最大減速度狀態,容易產生沖擊、抖動等,破壞機械結構,這是由于機器人具有bang-bang特性[14]。故引入沖擊項來使規劃后的速度相對平緩,且乘上比例因子μ來控制權重。故參數化處理后時間最優速度規劃問題的目標函數為

基于第1節POE運動學分析的結論,將機器人關節約束和笛卡爾速度約束考慮在內。其中關節約束主要考慮電動機的性能上限,使每個關節軸均不會超速;由于工業機器人在焊接、噴涂等領域作業時更多關注的是末端TCP的工作狀態,故此處引入TCP笛卡爾速度約束。運動學約束為:

在得到時間最優速度規劃問題的目標函數和約束條件后,基于凸優化理論進行問題的分析和求解。如式(5)~式(7)所示,為實現將非線性目標問題線性化,且引入仿射函數作為約束來進行凸優化分析,本文將參數速率b(s)=s˙2和參數加速率a(s)=s¨作為優化目標,根據不等式約束,將τi(s)用動力學方程(7)代替后,可以簡單畫出此優化問題在相平面上的可行域,如圖3所示。

圖3 不等式約束可行域分析
根據路徑參數方程對路徑參數s進行等誤差離散成k份,在轉矩約束中參數均取為區間平均值,且根據參數速率和參數加速率之間的關系,動力學方程經過一系列變換后離散化目標凸優化問題如下:

上述優化問題的優化變量為離散后的參數速率b(s),考慮到目前已有如SEDUMI[15]、YILMIP[16]等非常成熟的標準二階錐規劃庫來求解此類優化問題,故仿真部分基于凸優化子問題,二階錐規劃來進行求解。
借助SEDUMI標準工具包進行二階錐問題求解,最終得到的是各個離散點對應的關節角位置、關節角速度及關節角加速度。利用機器人離線編程軟件InteRobot生成圖4所示的路徑,將弦高誤差設為0.01 mm,根據等誤差離散后的結果,可得到312個路徑點。

圖4 離線生成路徑曲線
根據第一節所述機器人POE逆運動學計算各關節位置信息。機器人現有的插補算法下規劃結果和優化后仿真結果如圖5~圖6所示。

圖5 機器人原有的規劃算法下關節角速度

圖6 優化后關節角速度
根據優化前后關節角速度對比曲線可知,從時間上來說,優化后的關節角速度與原有的規劃算法下關節角速度相比運行時間更短,且抖動有明顯好轉。
下面對沖擊項的比例系數進行合適的選取(如表1),若單純考慮時間最優運行時間為3.5 s,但此時有一個關節軸會處于最大加速狀態,比較μ=0和μ=0.1兩個狀態下的參數加速率a(s)值如圖7所示,能看出合適選取沖擊項的比例系數能對加速度突變有明顯改善。實驗結果表明,當μ=0.1時機器人會處于一個關節抖動相對理想的最大化效率運行狀態。

表1 最優速度規劃時間結果對比 s

圖7 μ=0、0.1下的參數加速率a(s)值
通過指數積建模的方法建立機器人運動學模型,提升準確性的同時保證了計算效率,且綜合考慮機器人的運動學、動力學約束,解決給定路徑下機器人的時間最優速度規劃問題。仿真結果表明,與華數機器人現有的插補算法對比,該方法在縮短原有算法運行時間的基礎上減少了關節抖動。此方法可為工業機器人在噴涂、打磨等領域的應用提供理論基礎。