陳廣濤,呂偉新,彭俊杰
(1.上海大學(xué) 計(jì)算機(jī)工程與科學(xué)學(xué)院,上海 200444;2.中科院上海高等研究院,上海 201210)
六輪機(jī)器人逆運(yùn)動(dòng)學(xué)的幾何誘導(dǎo)迭代法研究
陳廣濤1,呂偉新2,彭俊杰1
(1.上海大學(xué) 計(jì)算機(jī)工程與科學(xué)學(xué)院,上海 200444;2.中科院上海高等研究院,上海 201210)
機(jī)器人控制對(duì)實(shí)時(shí)性要求高,其逆運(yùn)動(dòng)學(xué)的快速求解是機(jī)器人控制領(lǐng)域的重要問(wèn)題。在傳統(tǒng)的逆運(yùn)動(dòng)學(xué)求解方法中,大多采用數(shù)值迭代的方法,該方法具有一定的通用性,但是該方法同時(shí)也有迭代收斂慢或者不收斂的問(wèn)題。針對(duì)數(shù)值迭代法在機(jī)器人逆運(yùn)動(dòng)學(xué)求解過(guò)程中遇到的運(yùn)算量大、收斂速度慢、結(jié)果唯一性難保證、無(wú)法確保實(shí)時(shí)性要求的問(wèn)題,提出利用機(jī)器人機(jī)構(gòu)的幾何特點(diǎn)加速迭代收斂的方法。研究機(jī)構(gòu)的幾何特點(diǎn),找出其表達(dá)參數(shù),僅對(duì)必要的變量進(jìn)行迭代運(yùn)算,其他關(guān)節(jié)變量由機(jī)構(gòu)幾何特點(diǎn)獲得的解析式求得。在滿足實(shí)時(shí)性要求的前提下,該方法能以較少的迭代次數(shù)達(dá)到需要的求解精度。六輪機(jī)器人是廣泛研究的一種月球探測(cè)車模型,機(jī)構(gòu)較為復(fù)雜。針對(duì)該具體結(jié)構(gòu)的數(shù)值仿真表明,該方法快速有效。
機(jī)器人逆運(yùn)動(dòng)學(xué);迭代求解;幾何法誘導(dǎo);搖臂式六輪探測(cè)車
機(jī)器人控制對(duì)實(shí)時(shí)性要求高,其逆運(yùn)動(dòng)學(xué)的快速求解是機(jī)器人控制領(lǐng)域的重要問(wèn)題[1]。有些機(jī)器人無(wú)法采用解析方法求解逆運(yùn)動(dòng)學(xué),采用數(shù)值解法就需要在給定時(shí)間內(nèi)穩(wěn)定收斂,這不但要盡量減少求解運(yùn)算量,還應(yīng)該排除算法中的嘗試性環(huán)節(jié)。
解析法計(jì)算效率高,是保證實(shí)時(shí)性的首選,然而應(yīng)用中有許多機(jī)構(gòu)無(wú)法得到解析解,只能借助數(shù)值方法求解,通過(guò)選擇關(guān)節(jié)變量初值,迭代逼近真實(shí)解。數(shù)值迭代法雖然能達(dá)到給定精度的運(yùn)動(dòng)學(xué)方程逆解,但運(yùn)算量大、收斂速度與結(jié)果唯一性難保證、無(wú)法確保實(shí)時(shí)性要求[1-2]。最嚴(yán)重的問(wèn)題是,迭代次數(shù)難以預(yù)料、計(jì)算結(jié)果具有不確定的多解性、不能確保收斂[3]。早已有人認(rèn)識(shí)到減少迭代參數(shù)的意義,例如,易科[4]采用構(gòu)造并求解僅含有一個(gè)關(guān)節(jié)參數(shù)的非線性方程方法,把逆解問(wèn)題轉(zhuǎn)化為迭代求解這個(gè)角度的問(wèn)題,再進(jìn)一步由解析式求得其他角度。雖然這類方法減少了計(jì)算量,但是仍然不能克服迭代是否收斂、是否存在多解的問(wèn)題。
為此,文中提出一種利用機(jī)構(gòu)的幾何特點(diǎn)輔助迭代求解的方法,可避免多解問(wèn)題、確??焖偈諗浚瑥亩鉀Q機(jī)器人逆運(yùn)動(dòng)學(xué)求解的實(shí)時(shí)性問(wèn)題。由于涉及幾何方法的問(wèn)題通用性不顯著,難以概括總結(jié)出通用法則,以一個(gè)被美國(guó)NASA等研究機(jī)構(gòu)廣為采用的搖臂式六輪探測(cè)車的機(jī)構(gòu)模型[5-11]為例,詳細(xì)介紹了該方法的基本原理,并給出其數(shù)字仿真結(jié)果。
文獻(xiàn)[6]所給出的搖臂式六輪月球探測(cè)車結(jié)構(gòu)模型如圖1所示,主要由差動(dòng)軸、主搖臂、副搖臂、車輪組成。其中差動(dòng)軸中間的差動(dòng)器使左右主搖臂相對(duì)于差動(dòng)軸轉(zhuǎn)動(dòng)的角度互為相反數(shù)[6]。
圖1 搖臂式六輪探測(cè)車結(jié)構(gòu)
建立的空間坐標(biāo)系如圖2、3所示。
圖2 搖臂式六輪探測(cè)車空間姿態(tài)
定義左右主搖臂之間的差動(dòng)角度分別α和-α,左右副搖臂相對(duì)其主搖臂的轉(zhuǎn)角分別為β和γ。定義差動(dòng)軸坐標(biāo)系OD-XDYDZD相對(duì)于空間絕對(duì)坐標(biāo)系OO-XOYOZO的前向傾角為θx,側(cè)向傾角為θy,如圖3所示??芍P(guān)節(jié)角{θx,θy,α,β,γ}確定后,各車輪的相對(duì)空間坐標(biāo)隨之確定,反之亦然[6]。
圖3 差動(dòng)軸坐標(biāo)系與空間絕對(duì)坐標(biāo)系相對(duì)關(guān)系
應(yīng)用中感興趣的是其6個(gè)輪心的相對(duì)高度與關(guān)節(jié)變量的關(guān)系,以便主動(dòng)地適應(yīng)月球的起伏地面。因此,其逆運(yùn)動(dòng)學(xué)求解問(wèn)題就是如何從6個(gè)輪心的相對(duì)高度(即6個(gè)輪心在絕對(duì)空間坐標(biāo)系ZO軸上的分量)得知關(guān)節(jié)變量{θx,θy,α,β,γ}。為此,以6個(gè)輪心等高的狀態(tài)作為初始狀態(tài),并始終把最低的輪心高度設(shè)為零[7]。
2.1 幾何特征分析及關(guān)系方程建立
文獻(xiàn)[6]給出的探測(cè)車結(jié)構(gòu)尺寸如圖4所示。
圖4 搖臂式六輪探測(cè)車結(jié)構(gòu)尺寸
若是以常規(guī)方式建立探測(cè)車的運(yùn)動(dòng)學(xué)方程,得到的是多個(gè)矩陣相乘而形成的復(fù)雜方程組,難以簡(jiǎn)化處理[6]。
利用圖2所示幾何關(guān)系易得到以下關(guān)系式:
(1)
(2)
(3)
(4)
(5)
(6)
(7)
Z0=Z1-L01sin(φ-ξ)cosθy
(8)
那么,容易通過(guò)中間變量表示所求關(guān)節(jié)變量:
(9)
(10)
其中,ξ0為初始狀態(tài),即6個(gè)輪心在同一高度時(shí)ξ應(yīng)該取得的值。
2.2 幾何特征引導(dǎo)迭代過(guò)程
之所以選擇θy作為迭代變量,首先是因?yàn)檫@樣做可以把復(fù)雜的空間幾何問(wèn)題簡(jiǎn)化為平面上的問(wèn)題,通過(guò)XDZD平面上的幾何關(guān)系直接得到θx,α,β,γ的解析表達(dá)式。更重要的是,能夠根據(jù)θy的幾何意義直觀地判斷迭代必然收斂于一個(gè)唯一值,避免了丟失可能解和盲目探索可能解的問(wèn)題。因此,選擇適當(dāng)?shù)牡兞渴钦T導(dǎo)迭代過(guò)程簡(jiǎn)化計(jì)算逆解問(wèn)題的關(guān)鍵[12]。
利用幾何關(guān)系輔助迭代求解逆運(yùn)動(dòng)學(xué)方法的思想是:找出機(jī)構(gòu)運(yùn)動(dòng)過(guò)程中一個(gè)確定的幾何規(guī)律,利用該規(guī)律誘導(dǎo)迭代過(guò)程,避開(kāi)不利方向,將描述該規(guī)律的參數(shù)選作迭代變量;采用盡可能少的變量表示其他關(guān)節(jié)變量,僅對(duì)必要的變量進(jìn)行迭代運(yùn)算,其他間接變量或關(guān)節(jié)變量均由解析式求得[13]。
本例中θy≠0是造成計(jì)算困難的關(guān)鍵,而且它在引導(dǎo)方向上只有一個(gè)可能解,就只可能收斂于一點(diǎn)。由于每次更新都相當(dāng)于修正了前一次假設(shè)的誤差,因此能夠保證足夠的收斂速度。
分別用常規(guī)數(shù)值求解法和文中提出的幾何輔助誘導(dǎo)迭代的數(shù)值法對(duì)文獻(xiàn)[6]中的機(jī)構(gòu)實(shí)例進(jìn)行求解,以驗(yàn)證算法的有效性。其常規(guī)數(shù)值求解采用Matlab的fsolve函數(shù)對(duì)6元非線性方程組進(jìn)行迭代求解,細(xì)節(jié)見(jiàn)文獻(xiàn)[6]。經(jīng)對(duì)比發(fā)現(xiàn),在所涉及表達(dá)式上,常規(guī)法求逆解的運(yùn)算量明顯比幾何誘導(dǎo)法大,需要消耗更多的時(shí)間。再?gòu)牡螖?shù)和時(shí)間消耗方面對(duì)比分析兩種算法。為此選擇了關(guān)節(jié)變量{θx,θy,α,β,γ}的三組不同值,通過(guò)正運(yùn)動(dòng)學(xué)方程求得其對(duì)應(yīng)的6個(gè)輪心的高度值,然后反過(guò)來(lái)利用輪心高度作為所求逆解的已知值來(lái)求取關(guān)節(jié)變量,觀察結(jié)果與事先選定的關(guān)節(jié)變量理想值的一致性[14]。為避免所用初值不同造成的影響,三組計(jì)算的迭代初值統(tǒng)一選為{θx,θy,α,β,γ}={0,0,0,0,0},而幾何誘導(dǎo)法的迭代初值也選用θy=0,兩種算法計(jì)算結(jié)果所允許的誤差均為ω=1×10-4。測(cè)試采用主頻為2.0GHz,內(nèi)存為2.0GB的WindowsXP系統(tǒng)MATLAB平臺(tái)。實(shí)驗(yàn)數(shù)據(jù)如表1所示,其中求逆解計(jì)算所消耗的時(shí)間采用10 000次計(jì)算后的平均值。
表1 實(shí)驗(yàn)結(jié)果對(duì)比
由實(shí)驗(yàn)數(shù)據(jù)可以看出:幾何誘導(dǎo)法的迭代次數(shù)遠(yuǎn)小于常規(guī)逆解法,所耗費(fèi)的時(shí)間是常規(guī)逆解法的幾千分之一甚至更少,特別地,當(dāng)θy=0時(shí),幾何誘導(dǎo)法僅迭代1次即得到理想值??梢?jiàn),在迭代次數(shù)與計(jì)算耗時(shí)方面,幾何誘導(dǎo)法都明顯優(yōu)于常規(guī)逆解法。
運(yùn)動(dòng)方程的常規(guī)逆解法直接從機(jī)器人的運(yùn)動(dòng)學(xué)方程出發(fā),采用數(shù)學(xué)工具進(jìn)行多元迭代,求解非線性方程組[14];而幾何誘導(dǎo)法充分挖掘利用機(jī)器人機(jī)構(gòu)的幾何特點(diǎn)[12],采用盡可能少的關(guān)節(jié)變量表示其他關(guān)節(jié)變量,僅對(duì)必要的關(guān)節(jié)變量或某一中間變量進(jìn)行迭代求解[15],在同樣的運(yùn)算精度要求下減少了迭代次數(shù),單次迭代運(yùn)算量也大為減少,極大地縮短了求解時(shí)間,并且避免了一般多元非線性方程組迭代方法中致命的收斂性問(wèn)題,能更好地滿足機(jī)器人控制的實(shí)時(shí)性和準(zhǔn)確性要求。
[1] 陳 鵬,劉 璐,余 飛,等.一種仿人機(jī)械臂的運(yùn)動(dòng)學(xué)逆解的幾何求解方法[J].機(jī)器人,2012,34(2):211-216.
[2] 祖 迪,吳鎮(zhèn)煒,談大龍.一種冗余機(jī)器人逆運(yùn)動(dòng)學(xué)求解的有效方法[J].機(jī)械工程學(xué)報(bào),2005,41(6):71-75.
[3] 畢諸明,蔡鶴皋.六自由度操作手的逆運(yùn)動(dòng)學(xué)問(wèn)題[J].機(jī)器人,1994,16(2):92-97.
[4] 易 科.機(jī)器人運(yùn)動(dòng)學(xué)逆的數(shù)值迭代法[J].計(jì)算技術(shù)與自動(dòng)化,1992,11(2):26-30.
[5] 李所軍,高海波,鄧宗全.搖臂式月球車的運(yùn)動(dòng)學(xué)建模及懸架參數(shù)優(yōu)化[J].西安交通大學(xué)學(xué)報(bào),2009,43(9):62-66.
[6] 周開(kāi)波,王旭永,羅小桃,等.搖臂式六輪探測(cè)車空間姿態(tài)建模與求解[J].上海交通大學(xué)學(xué)報(bào),2013,47(7):1093-1098.
[7] 毛 寧.六輪搖臂巡視器建模仿真及試驗(yàn)研究[D].長(zhǎng)春:長(zhǎng)春理工大學(xué),2014.
[8] 胡 明,鄧宗全,高海波,等.搖臂轉(zhuǎn)向架式月球探測(cè)車越障通過(guò)性分析[J].上海交通大學(xué)學(xué)報(bào),2005,39(6):928-932.
[9] 王佐偉,梁 斌,吳宏鑫.六輪月球探測(cè)車運(yùn)動(dòng)學(xué)建模與分析[J].宇航學(xué)報(bào),2003,24(5):456-462.
[10] 楊艷春,鮑勁松,金 燁.基于虛擬現(xiàn)實(shí)環(huán)境的六輪月球車運(yùn)動(dòng)性能分析[J].上海交通大學(xué)學(xué)報(bào),2010,44(8):1079-1083.
[11] 居鶴華,曹 亮,崔平遠(yuǎn).基于模糊邏輯的月球車逆運(yùn)動(dòng)學(xué)求解方法[J].宇航學(xué)報(bào),2009,27(4):643-647.
[12] 劉 達(dá),王田苗.一種解析和數(shù)值相結(jié)合的機(jī)器人逆解算法[J].北京航空航天大學(xué)學(xué)報(bào),2007,33(6):727-730.
[13] 蔡自興.機(jī)器人學(xué)基礎(chǔ)[M].北京:機(jī)械工業(yè)出版社,2009:15-26.
[14] 宋小康,談大龍,吳鎮(zhèn)煒,等.全地形輪式移動(dòng)機(jī)器人運(yùn)動(dòng)學(xué)建模與分析[J].機(jī)械工程學(xué)報(bào),2008,44(6):148-154.
[15] 王慶國(guó),林建亞,路甬祥.機(jī)器人的運(yùn)動(dòng)學(xué)與動(dòng)力學(xué)[J].機(jī)器人,1990,12(1):58-64.
Exploration of Geometric Inducing Method in Numerical Iteration for Six-wheeled Robot Inverse Kinematics
CHEN Guang-tao1,Lü Wei-xin2,PENG Jun-jie1
(1.School of Computer Engineering and Sciences,Shanghai University,Shanghai 200444,China;2.Shanghai Advanced Research Institute,Chinese Academy of Sciences,Shanghai 201210,China)
The automatic control of robot has a higher requirement of real-time,and it is important for automatic control to get the solution of robot inverse kinematics.In the traditional method,the solution by numerical iteration is always used,which is universal,but with the problems of slow convergence or non-convergence.Numerical iteration applied to robot inverse kinematics solution may bring the disadvantage of heavy calculation,slow convergence,the unique result not to guarantee,and good real-time performance not to determine.Therefore,a method using the geometric characteristics of robot mechanism is demonstrated to accelerate iteration convergence.It tries to find the parameters describing the geometric characteristics of mechanism studied,and need merely calculation of the iteration of key variables,while the other variables can be obtained by the analytic formula figured out by the geometric characteristics of mechanism.Applying the method can achieve the required precision by less number of iterations on the premise of meeting the real-time performance.Six-wheeled is a model of robot rover which has extensive research and complex mechanism.Numerical simulation of concrete mechanism shows the availability and high efficiency of the method.
robot inverse kinematics;iterative solution;geometric induction;six-wheeled rocker rover
2016-01-07
2016-04-19
時(shí)間:2016-11-21
國(guó)家自然科學(xué)基金資助項(xiàng)目(61572305)
陳廣濤(1988-),男,碩士,研究方向?yàn)闄C(jī)器人、機(jī)器視覺(jué);呂偉新,博士,教授,研究方向?yàn)闄C(jī)器人學(xué)、自動(dòng)化、機(jī)器視覺(jué)等;彭俊杰,博士,副教授,CCF會(huì)員,研究方向?yàn)樵朴?jì)算、嵌入式系統(tǒng)等。
http://www.cnki.net/kcms/detail/61.1450.TP.20161121.1633.018.html
TP301
A
1673-629X(2016)12-0041-04
10.3969/j.issn.1673-629X.2016.12.009