劉 罡,劉玉斌,趙 杰,朱 磊
(哈爾濱工業大學機器人技術及系統國家重點實驗室,150001哈爾濱,liuxing338@163.com)
新型煤礦救援機器人的特殊運動逆運動學
劉 罡,劉玉斌,趙 杰,朱 磊
(哈爾濱工業大學機器人技術及系統國家重點實驗室,150001哈爾濱,liuxing338@163.com)
針對新型煤礦救援機器人頭部單元的特殊運動(位姿調整),提出了一種基于空間分割和遺傳算法相結合的新方法求解其逆運動學.該方法能以最小的轉動代價實現期望的位姿,有利于保持機器人穩定.采用二次空間分割法,解決了遺傳算法搜索空間大,難以收斂到全局最優解的問題.仿真實驗結果表明,采用新的逆運動學算法得出的位姿誤差較小,而且關節角更加接近真實值,滿足新型煤礦救援機器人頭部單元的運動要求.
救援機器人;逆運動學;空間分割;遺傳算法
煤礦救援機器人主要用來進行井下事故現場的探測,輔助救援人員順利完成救援任務.哈爾濱工業大學機器人技術及系統國家重點實驗室研制了一款新型煤礦救援機器人,該機器人由4個單元串聯而成,相鄰單元之間具有2個自由度,可以實現俯仰和偏航運動,運動范圍為±45°.機器人頭部單元安裝有攝像頭、照明燈、超聲傳感器和各種氣體傳感器,可以探測機器人周圍的環境信息,并將信息傳回控制中心.新型煤礦救援機器人是一種典型的無根開鏈式結構,與具有固定基座的串聯機器人(如PUMA機器人等)相比,在調整頭部單元位姿的特殊運動中很容易發生傾覆現象,即頭部單元和尾部單元都翹起;因此,其逆運動學研究關鍵是如何找到既能滿足頭部單元位姿精度要求,又能有利于保持機器人穩定的逆解.
目前,關于機器人逆運動學求解的方法很多,主要有解析法和數值法[1-3].解析法雖然具有求解速度快、效率高、便于實時控制的優點,但是機器人結構必須滿足一定的幾何條件才能求得解析解.數值法包括直接法和間接法.直接法主要是通過求解雅可比矩陣求出機器人各關節速度變量.對于冗余機器人來說,雅可比矩陣不是方陣,需要對雅可比矩陣進行擴展[4-6].在機器人末端到達期望位姿的過程中,直接法存在奇異問題.常見的間接法有信賴域法[7-8]、CCD 法[9]、遺傳算法[10-11]、神經網絡算法[12-13]等.由于所研究機器人的關節空間和位姿空間存在復雜的非線性映射關系,無法通過解析法獲得關節角度的解析解.遺傳算法作為一種非確定性的擬自然算法,具有很好的魯棒性、自適應性、全局優化性和隱含并行性,可以實現關節空間和位姿空間的非線性映射.但是,遺傳算法很難保證收斂到全局最優解[14].
本文針對新型煤礦救援機器人的特殊結構,提出了一種基于空間分割和遺傳算法相結合的新算法,求解機器人調整頭部單元姿態的特殊運動逆運動學.
針對頭部單元的位姿調整運動,新型煤礦救援機器人有6個自由度(3個俯仰關節和3個偏航關節),以機器人尾部單元為固定基座,其模型示意圖如圖1所示.機器人D-H參數如表1所示.

圖1 新型煤礦救援機器人模型

表1 頭部單元姿態調整D-H參數
機器人頭部單元在其基坐標系中的位姿可描述為

其中,i-1Ti表示坐標系i-1到i的齊次變換矩陣.將相鄰坐標系間的坐標變換矩陣代入式(1),得到如式(2)所示的頭部單元位置表達式:

其中,Si表示 sin θi,Ci表示 cos θi,Sij表示 sin(θi+θj),Cij表示 cos(θi+ θj).
新型煤礦救援機器人運動學逆解除了要滿足一定的精度要求之外,還要有利于保持機器人穩定,這一點是至關重要的.假如轉動關節角θ6就能到達期望的位姿,其他關節角就不需轉動.然而,由圖1可知,基于遺傳算法的逆運動學求解算法,其搜索空間為R6.所以無論機器人頭部單元的位姿如何,算法都要在R6空間內搜索逆運動學的最優解.由于遺傳算法無法保證收斂到全局最優解,結果很可能是每個關節角都需轉動,這對于保持機器人穩定是不利的.如何靈活地配置算法的搜索空間是解決新型煤礦救援機器人逆運動學求解的關鍵.
文獻[14-15]根據正運動學計算出機器人末端可達的位姿空間,然后根據一定原則將所得到的位姿空間劃分為若干個大小相同的超立方體,并依次進行編碼,然后根據期望位姿確定其所在的子空間,并在該子空間內尋找最優解.事實上,上述空間分割方法只對工作空間進行了分割,而沒有對關節空間進行分割,所得到的子空間是彼此不相交的,不存在包含關系.如果將上述空間分割方法應用于新型煤礦救援機器人逆運動學的求解,無法解決算法搜索空間的靈活配置問題.
本文提出一種新的空間分割方法,如圖2所示.該方法的核心思想如下:首先將機器人的關節空間進行分割,形成若干個子關節空間;然后,利用正運動學求解每個子關節空間對應的子工作空間;最后,確定期望位姿所在的子工作空間,再反推得到對應的子關節空間,將此子關節空間作為遺傳算法的搜索空間,從而實現根據不同的期望位姿來配置不同的搜索空間.

圖2 空間分割流程
空間分割的具體方法可描述如下:
Step1 將轉動關節空間進行一次分割,形成6個子關節空間.即當只有θ6關節轉動而其他關節不動時,對應的子關節空間為S1,對應的子工作空間為W1;當只有θ5和θ6關節轉動而其它關節不動時對應的子關節空間為S2,對應的子工作空間為W2;依此類推可以得到6個子關節空間和6個子工作空間.
Step2 將每個子關節空間進行二次分割.首先,機器人的每個關節轉角劃分為0~45°和-45°~0兩個子區間,然后在每個子關節空間內對關節轉角區間進行排列組合形成2i個次子關節空間Sij,其中i為子關節空間的序號,j為第i個子關節空間中的次子關節空間序號.然后,根據機器人正運動學計算各次子關節空間對應的次子工作空間.分割后的機器人各關節空間和對應的工作空間如表2所示,整個關節空間被分割成126個次子關節空間.
按照上述空間分割方法,6個子關節空間和6個子工作空間彼此存在包含關系,其包含關系如下所示:

工作空間的序號越小,其被作為搜索空間的優先級就越高.另外,在每個子關節空間內,次子關節空間彼此不存在包含關系,而在每個子工作空間內,次子工作空間彼此可能存在相交關系.因此,期望位姿可能同時隸屬于不同的次子工作空間.

表2 各次子關節空間及對應的次子工作空間
由于在子工作空間Wi中,次子工作空間存在交疊的情況,因此首先確定期望位姿所在的子工作空間,然后再確定期望位姿所屬的全部次子工作空間,通過反推查表確定其對應的次子關節空間Sij,最后將Sij作為遺傳算法的搜索空間求取運動學的逆解.
基于遺傳算法求逆運動學的流程如圖3所示.
基于遺傳算法的逆運動學解法可描述如下:
Step1 初始化參數.
Step2 對機器人工作空間進行一次分割,產生6個子工作空間,然后確定期望位姿所屬的子工作空間Wi,再反推得到其對應的子關節空間Si.
Step3 對Wi進行二次分割,產生2i個次子工作空間,然后確定期望位姿所屬的全部次子工作空間,再反推得到其對應的次子關節空間SubS,令j=1.
Step4 根據確定的次子關節空間SubS(j)和求解精度,設置染色體長度,進行二進制編碼.
Step5 初始化種群.種群的大小一般取為50~ 500,這里取100.

圖3 機器人逆運動學算法流程圖
Step 6 解碼.將二進制編碼通過解碼轉換成十進制的關節角,根據新產生的關節角計算位姿誤差,若誤差滿足精度要求,轉向Step 11,否則轉向Step7.
Step 7 計算適應度.運動學逆問題可以轉化為一般數值優化問題,問題描述為:已知目標位置向量Pi,在機器人的關節活動范圍內搜索一組關節變量組成解向量 Q =[θ1θ2θ3θ4θ5θ6]T,使得機器人的手部位姿與離散點的位姿差異ΔE最小,則當兩者重合時的解向量Q=[θ1θ2θ3θ4θ5θ6]T為問題的最優解.因此,優化目標函數定義如下:

其中,ΔN為機器人頭部單元姿態與目標點姿態之差;ΔP為機器人頭部單元位置與目標點位置之差;ΔQ 為各關節轉角絕對之和;α1、α2和 α3為權因子,可以分別對姿態因子、距離因子和轉角之和因子的重要程度進行加權.根據優化目標函數定義適應度函數如下:

式中:0.01是為了避免出現零分母.根據式(3)計算各個個體的適應度值.
Step8 遺傳操作.采用非線性排名選擇和錦標賽選擇,均勻交叉和多點交叉,隨機變異.
Step9 倒置.為了避免算法早熟,增加了倒置操作.根據倒置概率的大小篩選出需要倒置的個體,隨機生成倒置的起始和終止位置,然后將起始和終止位置之間的基因顛倒.
Step10 進化代數加 1,若超過最大代數,轉向Step 11,否則轉向Step6.
Step11 若子關節空間SubS都遍歷過,找出最佳的逆解,程序結束;否則j加1并轉向Step4.
為進一步分析基于空間分割和遺傳算法相結合的逆運動學算法的性能,利用Matlab設計了測試程序,首先通過給定各關節轉角值,利用正運動學計算出機器人頭部單元的位姿,然后將其作為已知位姿,分別采用基于空間分割和遺傳算法相結合的新算法和單一遺傳算法兩種方法求運動學的逆解.
基于兩種算法的計算結果如表3所示.從表中可以看出,采用新算法計算得出的位置與期望位置非常接近,尤其是子工作空間的優先級越高,計算結果精度越高.例如當期望位姿屬于子關節空間S1和S2時,其位置誤差為0.其次,采用新算法計算得出的關節角與給定的關節角也非常接近,有利于保持新型煤礦救援機器人的穩定.而單獨采用遺傳算法不進行空間分割,雖然計算得出的位置和期望位置很接近,但是得出的關節角與給定的關節角相差太大,每個關節都需要轉動,這樣對保持機器人穩定是不利的.出現上述結果,原因在于采用單一遺傳算法的搜索空間大,無法保證收斂到全局最優解.此外,由于新算法實現了運動學逆解的差別化搜索,即根據不同的目標位姿,算法在不同的空間內搜索運動學逆解.因此工作空間的優先級越高,新算法的搜索時間就越短,實時性就越好.

表3 基于兩種算法的逆運動學計算結果
1)針對新型煤礦救援機器人的結構特點,提出采用一種空間分割和遺傳算法相結合的新算法求解機器人的逆運動學.
2)針對基于遺傳算法的逆運動學搜索空間大,無法收斂到全局最優解的不足,提出了一種新的空間分割方法.該方法是在離線狀態下,利用正運動學對機器人的關節空間和對應的工作空間進行二次分割,解決了基于遺傳算法逆運動學搜索空間的靈活配置問題.
3)仿真實驗表明,采用空間分割和遺傳算法相結合的新算法求得的運動學逆解更加接近真實解,滿足以最小的轉動代價實現機器人頭部單元姿態調整運動的要求,并有利于保持機器人的穩定.
4)所提的新算法也可以應用到其他串聯機器人的逆運動學研究.
[1]GUPTA K C,KAZEROUNIAN K.Improved numerical solutions of inverse kinematics of robots[C]//1985 IEEE International Conference on Robotics and Automation.Chicago:[s.n.],1985:743-748.
[2]TAKAHASHI T,KAWAMURA A.The high-speed numerical calculation method for the on-line inverse kinematics of redundant degree of freedom manipulators[C]//6thInternational Workshop on Advanced Motion Control.Nagoya,Japan:[s.n.],2000:618 -623.
[3]DAI Y Q,LOUKIANOV A A,UCHYIAMA M.A hybrid numerical method for solving the inverse kinematics of a class of spatial flexible manipulators[C]//Proceedings of the 1997 IEEE International Conference on Robotics and Auomation.Albuquerque,New Mexico:[s.n.],1997:3449 -3454.
[4]TCHON K.Optimal extended jacobian inverse kinematics algorithms for robotic manipulators[J].IEEE Transactions on Robotics, 2008,24(6):1440 -1445.
[5]TCHON K,JAKUBIAK J.An extended jacobian inverse kinematics algorithm for doubly nonholonomic mobile manipulators[C]//Proceedings of the 2005 IEEE InternationalConference on Robotics and Automation.Spain:[s.n.],2005:1548 -1553.
[6]謝宗武,孫奎,劉宏.擴展雅可比方法的冗余度機器人逆運動學應用[J].哈爾濱工業大學學報, 2009,41(5):34- 36,85.
[7]馬化一,張艾群,張竺英.一種基于優化算法的機械手運動學逆解[J].機器人, 2001,23(2):137-141.
[8]于振中,閆繼宏,趙杰,等.超冗余移動機械臂逆運動學快速求解[J].北京郵電大學學報:自然科學版, 2009,32(5):55-59.
[9]陽小濤,楊克儉.CCD算法及其在逆運動學中的應用與實現[J].重慶工學院學報:自然科學, 2008,22(5):65-68.
[10]YANG Yugui,PENG Guangzheng,WANG Yifeng,et al.A new solution for inverse kinematics of 7-DOF manipulator based on genetic algorithm[C]//Proceedings of the IEEE International Conference on Automation and Logistics.Jinan,China:[s.n.],2007:1947 -1951.
[11]ZHANG Yonggui,XIE Liming,SHEN Hao,et al.Simulation on whole inverse kinematics of a 5R robot based on hybrid genetic algorithm[C]//Proceedings of the Eighth International Conference on Machine Learning and Cybernetics.Baoding,China:[s.n.],2009:1840 -1845.
[12]ZHOU Youhang,TANG Wenzhuang,ZHANG Jianxun.Algorithm for multi-joint redundant robot inverse kinematics based on the bayesian-BP neural network[C]//2008 International Conference on Intelligent Computation Technology and Automation. Xiangtan, Hunan:[s.n.],2008:173 -178.
[13]BINGUL Z,ERTUNC H M,OYSU C.Comparison of inverse kinematics solutions using neural network for 6R robot manipulator with offset[C]//2005 ICSC Congress on Computational Intelligence Methods and Applications.Istanbul:[s.n.],2005:1-5.
[14]TAROKH M,KIM M.Inverse kinematics of 7-DOF robots and limbs by decomposition and approximation[J].IEEE Transaction on Robotics, 2007,23(3):595-600.
[15]孫奎,謝宗武,王建宇,等.艙外航天服手臂的逆運動學解法[J].哈爾濱工業大學學報, 2010,42(1):60- 63,68.
Inverse kinematics for special motion of a new mine rescue robot
LIU Gang,LIU Yu-bin,ZHAO Jie,ZHU Lei
(State Key Laboratory of Robotics and System,Harbin Institute of Technology,150001 Harbin,China,liuxing338@163.com)
Aiming at the special motion(position and posture adjustment)of the head link of a new mine rescue robot,a novel algorithm based on the combination of spatial decomposition and genetic algorithm(GA)was proposed to solve inverse kinematics of the robot.This algorithm can realize prospective position and posture with the lowest turning cost and keep the robot stable.The two-step spatial decomposition method is presented and it overcomes the defects of big searching space and not converging to the global optimum solution using a GA algorithm.Simulation results show that the position and posture error derived using the new algorithm is smaller and the joint angles are closer to real values.The new algorithm can satisfy the motion requirement of head link of the new mine rescue robot.
rescue robot;inverse kinematics;spatial decomposition;genetic algorithm
TP242
A
0367-6234(2011)09-0042-05
2010-06-19.
國家高技術研究發展計劃資助項目(2007AA041501).
劉 罡(1977—),男,博士研究生;
趙 杰(1968—),男,教授,博士生導師.
(編輯 楊 波)