魏順祥,吳海波,陳久朋,劉亮,熊彬州,徐洋洋
1. 昆明理工大學(xué)機(jī)電工程學(xué)院,云南 昆明 650500
2. 珠海華冠科技股份有限公司,廣東 珠海 519000
仿生機(jī)器人是當(dāng)前研究的熱點(diǎn)問題,而良好的足端軌跡可以增加四足機(jī)器人對(duì)復(fù)雜地形的適應(yīng)性和穩(wěn)定性,因此四足機(jī)器人的軌跡規(guī)劃是研究的重要問題[1-3]。四足機(jī)器人的軌跡規(guī)劃通常是在笛卡爾空間或關(guān)節(jié)空間中進(jìn)行的,并且兩者之間存在著映射關(guān)系。笛卡爾空間軌跡規(guī)劃能直觀了解足端的運(yùn)動(dòng)軌跡,但求解關(guān)節(jié)轉(zhuǎn)角的逆運(yùn)動(dòng)學(xué)計(jì)算量很大。關(guān)節(jié)空間軌跡規(guī)劃常采用插值的方法,在運(yùn)算方面有著較好的優(yōu)越性[4-5]。常見的足端軌跡有擺線軌跡和多項(xiàng)式軌跡等方式[6-8]。Yoshihiro Sakakibara 等提出了擺線軌跡的規(guī)劃方法[9]。王立鵬等提出了足端零沖擊軌跡,使足端軌跡在理論上具有零沖擊的特性[10]。袁帥東等改進(jìn)了擺線軌跡,在擺動(dòng)相中間加了一條水平線,增強(qiáng)了足端的跨障能力[11]。為了使加速度連續(xù)并得到更平滑的足端軌跡曲線,Thomas Buschmann提出了基于分段五次多項(xiàng)式的足端軌跡[12],該軌跡可在保證加速度曲線連續(xù)的同時(shí),保證足端在起落點(diǎn)時(shí)實(shí)現(xiàn)理論上的零沖擊。鄧華等利用五次多項(xiàng)式對(duì)六足并聯(lián)機(jī)器人的足端軌跡進(jìn)行規(guī)劃,取得了良好的效果[13]。周坤等利用五次多項(xiàng)式規(guī)劃了擺動(dòng)腿跨步階段的足端軌跡,并在四足機(jī)器人上進(jìn)行了實(shí)驗(yàn)驗(yàn)證[14]。常用的關(guān)節(jié)空間軌跡規(guī)劃方法有線性插值、B樣條插值法和高階多項(xiàng)式插值等[15]。線性插值法簡單方便,但其速度不連續(xù)且要求加速度無限大。高階多項(xiàng)式可保證關(guān)節(jié)空間運(yùn)動(dòng)過程中的角速度和角加速度連續(xù)。Reza Dehghani 等使用五次多項(xiàng)式插值進(jìn)行了五連桿兩足動(dòng)物的循環(huán)步態(tài)規(guī)劃和運(yùn)動(dòng)控制[16]。仲軍等根據(jù)主動(dòng)力矩最小的原則,使用八階多項(xiàng)式對(duì)四足機(jī)器人關(guān)節(jié)空間進(jìn)行了軌跡規(guī)劃和實(shí)驗(yàn)驗(yàn)證[17]。
理想情況下,可通過無限細(xì)分足端軌跡點(diǎn)數(shù)量進(jìn)行逆解來計(jì)算關(guān)節(jié)角度,從而獲得關(guān)節(jié)運(yùn)動(dòng)的特性曲線來控制關(guān)節(jié)的精確運(yùn)動(dòng)。但由于控制器計(jì)算能力的限制,無法進(jìn)行密集取點(diǎn)并進(jìn)行運(yùn)動(dòng)學(xué)逆解計(jì)算。本文將笛卡爾空間和關(guān)節(jié)空間規(guī)劃的優(yōu)點(diǎn)相結(jié)合,對(duì)規(guī)劃好的足端軌跡進(jìn)行離散采樣,使用不同的插值點(diǎn)選取方式確定較少的插值點(diǎn)位置進(jìn)行運(yùn)動(dòng)學(xué)反解;并在關(guān)節(jié)空間內(nèi)進(jìn)行角速度和角加速的優(yōu)化,再對(duì)相鄰的插補(bǔ)點(diǎn)之間用五次多項(xiàng)式函數(shù)關(guān)系進(jìn)行連接[18],以獲得平滑的關(guān)節(jié)曲線來驅(qū)動(dòng)電機(jī)運(yùn)動(dòng)。因只需對(duì)足端軌跡曲線的采樣點(diǎn)進(jìn)行逆運(yùn)動(dòng)學(xué)計(jì)算,本文的方法極大地減少了計(jì)算量。最后,將得到的足端軌跡與理想的足端軌跡進(jìn)行了誤差比較,得到了最優(yōu)的插值方法和角速度、角加速度優(yōu)化方法。
擺線運(yùn)動(dòng)規(guī)律因能很好地滿足足端零沖擊的軌跡規(guī)劃要求,在四足機(jī)器人的足端軌跡規(guī)劃中得到了廣泛的應(yīng)用,其表達(dá)式為
式中H為抬腿高度,S為步幅,Tf為擺動(dòng)相周期,Tω為擺動(dòng)相周期的一半。
文獻(xiàn)[12]中,Thomas Buschmann 基于五次多項(xiàng)式構(gòu)造足端軌跡,使得該軌跡具備足端零沖擊以及速度、加速度連續(xù)的特點(diǎn)。相比于擺線運(yùn)動(dòng)規(guī)律,基于五次多項(xiàng)式構(gòu)造足端軌跡無泰勒級(jí)數(shù)展開求解的負(fù)擔(dān)。其數(shù)學(xué)表達(dá)式為
基于擺線類型的軌跡具備圓弧形的特點(diǎn),方便在后續(xù)使用切比雪夫點(diǎn)進(jìn)行插值點(diǎn)的選??;而基于五次多項(xiàng)式類型的軌跡,在后續(xù)進(jìn)行五次多項(xiàng)式關(guān)節(jié)空間軌跡規(guī)劃中具有連貫性和一致性。因此,本文選用了擺線軌跡X方向的曲線和五次多項(xiàng)式軌跡Y方向的曲線,建立了復(fù)合足端軌跡(以下簡稱復(fù)合軌跡),實(shí)現(xiàn)了將擺線運(yùn)動(dòng)規(guī)律和五次多項(xiàng)式運(yùn)動(dòng)規(guī)律的融合。該軌跡曲線既結(jié)合了擺線規(guī)律和五次多項(xiàng)式規(guī)律的優(yōu)點(diǎn),又使得足端在理論上具有零沖擊、速度和加速度連續(xù)的特點(diǎn),其形式為
給出一組運(yùn)動(dòng)參數(shù)H= 40 mm,S= 160 mm,Tf= 0.5 s,Tw= 0.25 s。圖1 是根據(jù)給定參數(shù)得出的笛卡爾坐標(biāo)空間的三類足端軌跡曲線。其中,復(fù)合軌跡具有更大的底部運(yùn)動(dòng)空間,落地角度更加垂直不易打滑,故選取復(fù)合軌跡作為四足機(jī)器人的足端軌跡。
圖1 笛卡爾坐標(biāo)空間的三類足端軌跡Fig.1 Three types of foot trajectories in Cartesian coordinate space
為了便于進(jìn)行軌跡規(guī)劃研究,采用簡化模型進(jìn)行運(yùn)動(dòng)學(xué)分析。如圖2所示,整機(jī)采用前肘后膝式配置。設(shè)大腿長為L1,小腿長為L2,髖關(guān)節(jié)轉(zhuǎn)角為θ1,膝關(guān)節(jié)轉(zhuǎn)角為θ2。
圖2 四足機(jī)器人簡化模型Fig.2 Simplified model of a quadruped robot
用Simulink 搭建上述簡化模型的單腿運(yùn)動(dòng)系統(tǒng)。通過對(duì)該系統(tǒng)發(fā)送一個(gè)時(shí)間信號(hào)激勵(lì),使該模型按照設(shè)定的復(fù)合軌跡進(jìn)行逆向運(yùn)動(dòng)學(xué)求解,并通過求解的結(jié)果驅(qū)動(dòng)系統(tǒng)的物理模型進(jìn)行軌跡的運(yùn)動(dòng)學(xué)仿真。取L1= 170 mm,L2= 255 mm,單腿一個(gè)步態(tài)周期的連桿結(jié)構(gòu)軌跡如圖3所示。
圖3 單腿一個(gè)步態(tài)周期的連桿結(jié)構(gòu)軌跡Fig.3 A gait cycle link structure trajectory of a single leg
在Simulink仿真中,獲得髖膝關(guān)節(jié)的位移、角速度和角加速度如圖4 所示。圖4 中,關(guān)節(jié)轉(zhuǎn)動(dòng)的角度曲線平滑無突變,角速度、角加速度曲線在較小范圍內(nèi)平緩波動(dòng)。上述關(guān)節(jié)運(yùn)動(dòng)曲線是微分細(xì)化后的求解結(jié)果,是對(duì)理想的關(guān)節(jié)運(yùn)動(dòng)曲線的逼近[19]。但在實(shí)際使用中,由于控制器計(jì)算能力有限,無法拾取大量中間點(diǎn)并進(jìn)行運(yùn)動(dòng)學(xué)正反解計(jì)算,這將極大阻礙系統(tǒng)運(yùn)動(dòng)的實(shí)時(shí)性[20]。同時(shí),微分的過程忽略了各個(gè)相鄰中間點(diǎn)之間的連接關(guān)系,僅是對(duì)求解后的點(diǎn)進(jìn)行直線對(duì)接,會(huì)導(dǎo)致與實(shí)際運(yùn)動(dòng)情況不符[21-22]。
圖4 髖膝關(guān)節(jié)的位移、速度和加速度曲線Fig.4 Displacement,velocity and acceleration curves of hip and knee joint
合適的插值點(diǎn)選擇可以將軌跡的中間點(diǎn)數(shù)量降到最少,增加軌跡與理想軌跡的接近程度。對(duì)足端軌跡進(jìn)行離散插值的方法有等間距點(diǎn)、等時(shí)點(diǎn)及切比雪夫點(diǎn)等多種方法[23-24]。在軌跡平面內(nèi),對(duì)x方向等分稱為等間距點(diǎn);對(duì)時(shí)間t等分稱為等時(shí)點(diǎn);切比雪夫點(diǎn)是單位圓周上等距分布的橫坐標(biāo),在端點(diǎn)處更密集,更適合于圓弧曲線的插值。由于切比雪夫點(diǎn)可避免龍格現(xiàn)象的產(chǎn)生,因此被廣泛地用于高階多項(xiàng)式的插值。第二類切比雪夫多項(xiàng)式為
其中n∈N,x∈R,且|x| ≤1。式(4)也可記為
這里n∈N,x∈C。對(duì)式(5)求根,即可得第二類切比雪夫點(diǎn)。n階第二類切比雪夫多項(xiàng)式在區(qū)間[-1,1]內(nèi)有n+ 1個(gè)根,即
其中k= 0,1,2,…,n。在軌跡上選取11 個(gè)插值點(diǎn)將曲線分為10 份,表1 給出了等間距插值點(diǎn)、切比雪夫插值點(diǎn)以及等時(shí)插值點(diǎn)的坐標(biāo)值,與圖5中軌跡曲線上的插值點(diǎn)對(duì)應(yīng)。
表1 三種足端插值點(diǎn)位置Table 1 Three kinds of foot-end interpolation point position
圖5 三種足端插值曲線Fig.5 Three kinds of foot-end interpolation curves
為了確定三種插值對(duì)關(guān)節(jié)空間映射效果,將等間距點(diǎn)、切比雪夫點(diǎn)和等時(shí)點(diǎn)對(duì)應(yīng)的軌跡點(diǎn)作為選用的插值映射點(diǎn)進(jìn)行運(yùn)動(dòng)學(xué)反解求得關(guān)節(jié)空間的軌跡插值點(diǎn)。這在很大程度上減輕了控制器的計(jì)算負(fù)擔(dān),增強(qiáng)了系統(tǒng)運(yùn)動(dòng)的控制實(shí)時(shí)性。為保證各插值點(diǎn)之間平滑過渡,以達(dá)到相鄰點(diǎn)之間的角度、角速度、角加速度值連續(xù)的效果,需要在各相鄰插值點(diǎn)之間設(shè)置插補(bǔ)函數(shù)。五次多項(xiàng)式能滿足角度θ,角速度ω,角加速度α連續(xù)的最少階數(shù)要求,相比于更高階的多項(xiàng)式,計(jì)算量較小,還能夠避免龍格現(xiàn)象。所以,本文采用五次多項(xiàng)式曲線對(duì)各相鄰插值點(diǎn)進(jìn)行連接,通過確定各插值點(diǎn)的關(guān)節(jié)特性參數(shù),從而保證兩個(gè)插值點(diǎn)之間的平滑性。五次多次式的一般表達(dá)式為
給定邊界條件為
其中θ0,ω0,α0為起始點(diǎn)的角度、角速度和角加速度。θf,ωf,αf為終止點(diǎn)的角度、角速度和角加速度。將邊界條件代入(7),得
一般情況而言,式(8)中的θ0,θf是已知的,ω0,ωf,α0,αf可通過差商來確定。然而,差商的結(jié)果與實(shí)際偏差較大,所以本文構(gòu)造Hermite多項(xiàng)式估計(jì)關(guān)節(jié)插值點(diǎn)的角速度和角加速度,從而減少關(guān)節(jié)的沖擊和振動(dòng),提升機(jī)器人關(guān)節(jié)空間運(yùn)動(dòng)軌跡的平滑性。
首先,取前3 個(gè)插補(bǔ)點(diǎn)θ1,θ2,θ3和邊界條件ω1= 0 來構(gòu)造三次三節(jié)點(diǎn)的Hermite 多項(xiàng)式,即多項(xiàng)式P(t)滿足條件
因此,Hermite多項(xiàng)式為
其中
第二個(gè)插值點(diǎn)的角速度和角加速度估計(jì)值為ω2,α2。同理,ωi,αi可以由θi-1,θi,θi+1和已經(jīng)求出的ωi-1來確定,其中i= 2,3,…,9。從而,求出除首末兩點(diǎn)之外的所有插值點(diǎn)的角速度和角加速 度。 設(shè) 定ω與α的 首 末 邊 界 條 件 為ω1= 0,ω11= 0,α1= 0,α11= 0,就可得到全部關(guān)節(jié)插補(bǔ)點(diǎn)的角度、角速度、角加速度數(shù)據(jù)。
在給定插值點(diǎn)基礎(chǔ)上進(jìn)行逆向運(yùn)動(dòng)學(xué)求解,得到11 個(gè)關(guān)節(jié)空間插值點(diǎn),分別對(duì)三類插值點(diǎn)構(gòu)造三次三節(jié)點(diǎn)的Hermite 多項(xiàng)式來估計(jì)插值點(diǎn)的角速度和角加速度,并對(duì)其進(jìn)行五次多項(xiàng)式軌跡規(guī)劃。圖6是采用切比雪夫點(diǎn)插值軌跡獲得的關(guān)節(jié)角速度、角加速度和角加加速度。可以看出,采用Hermite 多項(xiàng)式估計(jì)方法能有效的減少角加速度和角加加速度的突變值大小,角速度曲線也變得更加的平滑。
圖6 關(guān)節(jié)角速度、角加速度和角加加速度的對(duì)比分析Fig.6 Comparative analysis of joint angular velocity,angular acceleration and angular jerk
表2 和3 分別為對(duì)三類插值點(diǎn)使用Hermite 多項(xiàng)式和差商估計(jì)得到的角加速度、角加加速度突變最大值以及角加速度、角加加速度減少率。以髖關(guān)節(jié)為例,等間距插值點(diǎn)角加速度減少率為38.93%,切比雪夫插值點(diǎn)角加速度減少率為20.53%,等時(shí)插值點(diǎn)角加速度減少率為7.83%。所以,三類插值點(diǎn)情形下,采用Hermite 多項(xiàng)式估計(jì)方法對(duì)髖膝關(guān)節(jié)角加速度和角加加速度的突變最大值均有較大的減小。
表2 三類插值點(diǎn)的Hermite多項(xiàng)式和差商估計(jì)角加速度突變最大值、減少率Table 2 The Hermite polynomial and difference quotient estimation of three types of interpolation points to estimate the maximum angular acceleration abrupt change and reduction rate
此外,采用等時(shí)插值和Hermite 多項(xiàng)式估計(jì)方法的髖膝關(guān)節(jié)角加速度突變最大值分別為41.38和45.86 rad/s2。在3 種插值方法中,等時(shí)插值的角加速度突變最大值最小;雖然切比雪夫插值的角加加速度突變最大值最小,但和等時(shí)點(diǎn)插值差別不大。且角加速度對(duì)于運(yùn)動(dòng)的影響更大,因此使用等時(shí)插值和Hermite 多項(xiàng)式估計(jì)方法有利于減少電機(jī)的抖動(dòng)和控制器的功耗。
為了驗(yàn)證實(shí)際應(yīng)用效果,使用實(shí)驗(yàn)室開發(fā)的四足機(jī)器人。圖7是簡化單腿與實(shí)際腿部之間的映射關(guān)系。根據(jù)幾何關(guān)系可知,四足機(jī)器人實(shí)際結(jié)構(gòu)和簡化結(jié)構(gòu)之間存在轉(zhuǎn)換關(guān)系
圖7 單腿映射關(guān)系Fig.7 Single-leg mapping
采用Simulink 對(duì)該機(jī)器人進(jìn)行運(yùn)動(dòng)仿真分析,圖8是單腿擺動(dòng)相的虛擬樣機(jī)運(yùn)動(dòng)過程。為了定量描述實(shí)際曲線和理想復(fù)合曲線的偏差大小,這里采用式(14)計(jì)算平均誤差值(以下簡稱為誤差值),即
圖8 虛擬樣機(jī)的運(yùn)動(dòng)過程Fig.8 The movement process of the virtual prototype
式中n代表實(shí)際曲線和理想復(fù)合曲線的取點(diǎn)個(gè)數(shù),(?(ti),?(ti))為實(shí)際曲線上的點(diǎn),(x(ti),y(ti))為理想曲線上的點(diǎn)。
在實(shí)際曲線和理想的復(fù)合軌跡曲線上,各取500 個(gè)點(diǎn)用式(14)進(jìn)行誤差計(jì)算,結(jié)果如表4 所示??梢钥闯觯葧r(shí)點(diǎn)插值的曲線與理想的復(fù)合軌跡的接近程度更好,Hermite 多項(xiàng)式估計(jì)方法相比于差商估計(jì)對(duì)曲線的接近程度有明顯的提高;使用Hermite 多項(xiàng)式估計(jì),等距點(diǎn)插值的誤差降低了12.61%,切比雪夫點(diǎn)插值的誤差降低了23.3%,等時(shí)點(diǎn)插值誤差降低了29.24%。
表4 兩種插值法的曲線誤差比較Table 4 Comparison of the curve error of the two interpolation methods
表3 三類插值點(diǎn)的Hermite多項(xiàng)式和差商估計(jì)角加加速度突變最大值、減少率Table 3 The Hermite polynomial and difference quotient estimation of three types of interpolation points to estimate the maximum angular jerk abrupt change and reduction rate
圖9 是實(shí)體樣機(jī)使用Hermite 多項(xiàng)式估計(jì)的等時(shí)點(diǎn)插值方法在一個(gè)擺動(dòng)相運(yùn)動(dòng)周期內(nèi)的運(yùn)動(dòng)過程。通過激光跟蹤儀來對(duì)足端進(jìn)行跟蹤采集來獲得實(shí)際樣機(jī)的足端軌跡,如圖10 所示。由于實(shí)際樣機(jī)腿部關(guān)節(jié)處存在裝配間隙,導(dǎo)致激光跟蹤儀采集得到的足端軌跡和仿真得到的足端軌跡存在細(xì)小的偏差。但通過實(shí)體樣機(jī)實(shí)驗(yàn),可以看出機(jī)器人單腿運(yùn)動(dòng)平穩(wěn),無明顯抖動(dòng)現(xiàn)象,證明了所提出算法的有效性和正確性。
圖9 實(shí)體樣機(jī)的運(yùn)動(dòng)過程Fig.9 The movement process of the physical prototype
圖10 激光跟蹤儀獲得的實(shí)際樣機(jī)足端軌跡Fig.10 Foot trajectory of actual prototype obtained by laser tracker
為了驗(yàn)證復(fù)合軌跡在四足機(jī)器人上的行走的效果,使用Matlab和Adams進(jìn)行聯(lián)合仿真實(shí)驗(yàn)。采用trot步態(tài),設(shè)定步態(tài)周期為0.8 s,使用本文所提出的復(fù)合軌跡和優(yōu)化算法進(jìn)行四足機(jī)器人整機(jī)的步態(tài)仿真。四足機(jī)器人一個(gè)步態(tài)周期的運(yùn)動(dòng)如圖11所示。
圖11 四足機(jī)器人一個(gè)步態(tài)周期運(yùn)動(dòng)Fig.11 A gait cycle of a quadruped robot
在仿真模型上應(yīng)用復(fù)合軌跡、擺線軌跡和五次多項(xiàng)式軌跡進(jìn)行tort步態(tài)仿真實(shí)驗(yàn)。軀干質(zhì)心在世界坐標(biāo)系上運(yùn)動(dòng)軌跡如圖12~13 所示。圖12 中,三種軌跡的四足機(jī)器人步態(tài)平穩(wěn),無明顯打滑現(xiàn)象;且由放大圖可以看出,復(fù)合軌跡質(zhì)心位移最遠(yuǎn),其速度為395.17 mm/s,更不易發(fā)生打滑。圖13 中,三種軌跡的四足機(jī)器人運(yùn)動(dòng)平穩(wěn),軀干的起伏波動(dòng)較小,且應(yīng)用三種軌跡的機(jī)器人質(zhì)心波動(dòng)范圍差別很小。以上證明了所設(shè)計(jì)的復(fù)合軌跡和相關(guān)算法的可行性。
圖12 軀干質(zhì)心在前進(jìn)方向上的運(yùn)動(dòng)軌跡Fig.12 The trajectory of the torso center of mass in the forward direction
圖13 軀干質(zhì)心在豎直方向上的運(yùn)動(dòng)軌跡Fig.13 The trajectory of the torso center of mass in the vertical direction
針對(duì)四足機(jī)器人的笛卡爾空間足端軌跡規(guī)劃,研究了擺線運(yùn)動(dòng)規(guī)律和五次多項(xiàng)式運(yùn)動(dòng)規(guī)律的性質(zhì)和特點(diǎn),將兩者相結(jié)合得到了一種復(fù)合足端軌跡。為降低實(shí)際運(yùn)動(dòng)過程中足端軌跡的運(yùn)動(dòng)學(xué)計(jì)算負(fù)擔(dān),將復(fù)合足端軌跡的插值點(diǎn)數(shù)量壓縮至11個(gè),同時(shí)采取等間距點(diǎn)、切比雪夫點(diǎn)和等時(shí)點(diǎn)三類插值點(diǎn)來進(jìn)行比較分析。
利用五次多項(xiàng)式曲線對(duì)各插值點(diǎn)之間進(jìn)行關(guān)節(jié)空間軌跡規(guī)劃,使用Hermite 多項(xiàng)式曲線進(jìn)行對(duì)插值點(diǎn)的角速度和角加速度估計(jì),得到了基于三類插值方法的關(guān)節(jié)空間運(yùn)動(dòng)曲線。結(jié)果表明:使用Hermite 多項(xiàng)式估計(jì)的關(guān)節(jié)空間各關(guān)節(jié)的角速度變化更加平滑,角加速度和角加加速度的突變值明顯減少。對(duì)三類插值方法而言,等時(shí)點(diǎn)插值的角加速度突變值更低,效果更好。
通過Simulink 進(jìn)行單腿仿真,并使用Hermite多項(xiàng)式估計(jì),所得到的足端實(shí)際軌跡與理想的復(fù)合軌跡的誤差值明顯減少。采用等時(shí)點(diǎn)進(jìn)行插值的方法所得到的實(shí)際軌跡與理想的復(fù)合足端軌跡更為接近。通過實(shí)體樣機(jī)實(shí)驗(yàn)和整機(jī)的步態(tài)仿真實(shí)驗(yàn),驗(yàn)證了上述方法和結(jié)論的有效性和正確性。