汪永明,馬騰飛,韋 強(qiáng)
(安徽工業(yè)大學(xué) 機(jī)械工程學(xué)院,安徽 馬鞍山 243032)
相對(duì)于輪式機(jī)器人,步行機(jī)器人[1-3]的地面適應(yīng)性強(qiáng),越來越引起國內(nèi)外學(xué)者的廣泛關(guān)注。為了實(shí)現(xiàn)步行腿機(jī)器人在復(fù)雜地形下的穩(wěn)定快速行走,首先需要解決其步態(tài)的合理規(guī)劃問題。
山東大學(xué)的孟健等[4]為實(shí)現(xiàn)四足機(jī)器人在平面和斜坡上的全方位移動(dòng),提出了基于對(duì)角小跑步態(tài)的運(yùn)動(dòng)控制方法;國防科學(xué)技術(shù)大學(xué)的謝惠祥等[5]為了解決四足機(jī)器人對(duì)角小跑運(yùn)動(dòng)中機(jī)體繞對(duì)角線翻轉(zhuǎn)的問題,提出了一種利用支撐腿的髖部側(cè)擺關(guān)節(jié)力矩來平衡機(jī)體翻轉(zhuǎn)的姿態(tài)控制方法,并分析討論了姿態(tài)控制可能引起的機(jī)體側(cè)向運(yùn)動(dòng)現(xiàn)象;北京理工大學(xué)的郝仁劍等[6]為保證大負(fù)重四足機(jī)器人的全方位穩(wěn)定行走,提出了基于速度矢量的間歇步態(tài)規(guī)劃方法,采用間歇步態(tài)作為主步態(tài),將平動(dòng)與轉(zhuǎn)動(dòng)速度矢量映射為繞旋轉(zhuǎn)中心轉(zhuǎn)動(dòng);上海交通大學(xué)的何冬青等[7]對(duì)四足機(jī)器人對(duì)角小跑步態(tài)下繞支撐對(duì)角線的翻轉(zhuǎn)力矩建立了力學(xué)模型,提出了三分法來分析該力矩對(duì)機(jī)器人運(yùn)動(dòng)姿態(tài)及穩(wěn)定步行的不利影響;上海理工大學(xué)的勾文浩等[8]針對(duì)一種電驅(qū)動(dòng)四足仿真機(jī)器人,提出了一種對(duì)角小跑步態(tài)規(guī)劃方法實(shí)現(xiàn)機(jī)器人的連續(xù)平穩(wěn)行走;太原理工大學(xué)的原剛等[9]針對(duì)實(shí)際行走軌跡與規(guī)劃軌跡存在較大偏差的問題,提出了一種混合算法使其直線軌跡偏差減??;FRANCO G等[10]為了防止仿人機(jī)器人NAO在滑面上行走時(shí)摔倒,提出了一種基于步長、步行速度等參數(shù)變化的仿人步態(tài)控制策略,利用機(jī)器學(xué)習(xí)技術(shù)來調(diào)整步態(tài)參數(shù)和關(guān)節(jié)修正,以達(dá)到期望的零力矩點(diǎn)ZMP(Zero Moment Point)軌跡,使機(jī)器人更能抵抗打滑和外部干擾;TEDRAKE R等[11]提出了一種關(guān)于零力矩點(diǎn)(ZMP)跟蹤的連續(xù)時(shí)變線性二次型調(diào)節(jié)器問題的閉式解決方案,通過允許對(duì)期望的ZMP進(jìn)行“軟”跟蹤(以二次型代價(jià)),通過在線重新計(jì)算最佳控制器實(shí)現(xiàn)了Atlas仿人機(jī)器人的動(dòng)態(tài)步行;BALAKRISHNAN S等[12]為規(guī)劃和控制兩足機(jī)器人在不平坦地形上的穩(wěn)定行走,把機(jī)器人建模為非線性3D倒立擺,并推導(dǎo)出了ZMP與機(jī)器人質(zhì)心之間的關(guān)系,并通過模擬和實(shí)驗(yàn)驗(yàn)證了機(jī)器人在連續(xù)不平坦的地形上平穩(wěn)行走。
本研究針對(duì)步行機(jī)器人的快速穩(wěn)定行走需求,以一種雙閉鏈?zhǔn)剿淖銠C(jī)器人為研究對(duì)象,對(duì)其進(jìn)行對(duì)角小跑步態(tài)規(guī)劃。
閉鏈?zhǔn)剿淖銠C(jī)器人的機(jī)構(gòu)原理如圖1所示。
圖1 閉鏈?zhǔn)剿淖銠C(jī)器人機(jī)構(gòu)原理
由圖1可知,該四足機(jī)器人主要包括機(jī)體懸架、腿轉(zhuǎn)向架和4條閉鏈?zhǔn)讲叫型取F渲?,閉鏈?zhǔn)讲叫型染哂袃蓚€(gè)閉鏈,其主閉鏈采用曲柄搖塊機(jī)構(gòu),用于實(shí)現(xiàn)步行腿的跨步擺腿動(dòng)作,其副閉鏈采用曲柄滑塊機(jī)構(gòu),用于調(diào)節(jié)足端運(yùn)動(dòng)軌跡。當(dāng)主閉鏈的曲柄轉(zhuǎn)動(dòng)時(shí),會(huì)帶動(dòng)連桿上下移動(dòng)和產(chǎn)生一定程度的擺動(dòng)。如果將連桿反向延長,其末端的軌跡接近于機(jī)器人腿機(jī)構(gòu)的足端軌跡。另外,其副閉鏈的曲柄一端固定在曲柄搖塊機(jī)構(gòu)的連桿之上,當(dāng)曲柄轉(zhuǎn)動(dòng)時(shí),帶動(dòng)滑塊結(jié)構(gòu)的腿部沿著連桿移動(dòng),從而調(diào)節(jié)腿部的長度,在機(jī)器人移動(dòng)過程中可通過對(duì)腿部長度的調(diào)節(jié)達(dá)到不同的步行運(yùn)動(dòng)效果。
機(jī)器人運(yùn)動(dòng)主要是靠腿部機(jī)構(gòu)按照設(shè)定好的運(yùn)動(dòng)方式完成周期運(yùn)動(dòng)來實(shí)現(xiàn)的。四足動(dòng)物的典型步行步態(tài)有:行走步態(tài)、對(duì)角小跑步態(tài)、溜蹄步態(tài)、跳躍步態(tài)和奔跑步態(tài)。其中,對(duì)角小跑步態(tài)是四足動(dòng)物最常見的中高速行走步態(tài)。本文針對(duì)閉鏈?zhǔn)剿淖銠C(jī)器人,開展對(duì)角小跑步態(tài)規(guī)劃研究,以期為機(jī)器人的穩(wěn)定性控制提供理論基礎(chǔ)。
在對(duì)角小跑步態(tài)下,四足機(jī)器人只有兩條腿支撐,另兩條腿處于騰空擺動(dòng)狀態(tài)。若不考慮機(jī)器人足端結(jié)構(gòu),其著地端僅僅為兩著地足構(gòu)成的支撐線,不能構(gòu)成穩(wěn)定多邊形區(qū)域。
四足機(jī)器人的動(dòng)態(tài)穩(wěn)定支撐面示意圖如圖2所示。
圖2 四足機(jī)器人的動(dòng)態(tài)穩(wěn)定支撐面示意圖
圖2中顯示四足機(jī)器人的腿2和腿3落地支撐(支撐線為P2P3),腿1和腿4騰空擺動(dòng)時(shí)的狀態(tài)。隨著機(jī)器人的運(yùn)動(dòng),其機(jī)體重心(center of gravity,COG)無法始終保持在支撐線上。當(dāng)機(jī)器人以動(dòng)平衡狀態(tài)進(jìn)行步行運(yùn)動(dòng)時(shí),機(jī)體重心COG的位置和加速度發(fā)生實(shí)時(shí)變化,由此產(chǎn)生的前向和側(cè)向的慣性如果不能被控制,會(huì)使機(jī)器人的運(yùn)動(dòng)發(fā)生失穩(wěn),機(jī)體可能會(huì)發(fā)生傾覆。
理論上,四足機(jī)器人在步行過程中需要保持零力矩點(diǎn)ZMP始終在著地足形成的支撐線上,這樣機(jī)體才能在運(yùn)動(dòng)過程中保持穩(wěn)定。在實(shí)際過程中,由于四足機(jī)器人的運(yùn)動(dòng)會(huì)造成機(jī)體繞支撐對(duì)角線產(chǎn)生傾翻力矩,這個(gè)力矩會(huì)造成四足機(jī)器人在運(yùn)動(dòng)過程中機(jī)體姿態(tài)的變化。如果機(jī)體的傾翻角θ過大,對(duì)角線上的前后兩擺動(dòng)腿無法同時(shí)著地,會(huì)造成四足機(jī)器人無法完全按照規(guī)劃的步態(tài)運(yùn)動(dòng)。在運(yùn)動(dòng)過程中,傾翻角θ的增大會(huì)影響四足機(jī)器人的穩(wěn)定性,累積到一定程度會(huì)使四足機(jī)器人發(fā)生傾倒。
為了分析傾翻角θ對(duì)四足機(jī)器人運(yùn)動(dòng)影響,要對(duì)傾翻力矩建立力學(xué)模型。在理想狀態(tài)下,四足機(jī)器人以對(duì)角小跑步態(tài)勻速前進(jìn),四足機(jī)器人的質(zhì)量對(duì)稱均勻分布,假設(shè)質(zhì)量集中在四足機(jī)器人機(jī)體的幾何中心COG(如圖2所示),根據(jù)剛體繞定軸轉(zhuǎn)動(dòng)的微分方程,可得:
(1)
圖2中,x是四足機(jī)器人機(jī)體重心COG點(diǎn)沿著前進(jìn)方向到支撐線的距離,是隨四足機(jī)器人運(yùn)動(dòng)實(shí)時(shí)變化的。在四足機(jī)器人完成一個(gè)運(yùn)動(dòng)周期過程中,x可表示為:
x=kλ-vt
(2)
式中:λ—步距,m;k—起步參數(shù),0 由圖2中的x和d的三角函數(shù)關(guān)系可得: d=xsinγ (3) 式中:γ—四足機(jī)器人前進(jìn)方向與支撐線的夾角。 將式(2,3)代入式(1)中,并對(duì)式(1)自變量時(shí)間t積分,可得到傾翻角速度,再次積分可得到傾翻角,即: (4) (5) 式中:A=Mgsinγ/J。 當(dāng)四足機(jī)器人的機(jī)體產(chǎn)生傾翻運(yùn)動(dòng)時(shí),其時(shí)間t可以通過占空比β和運(yùn)動(dòng)周期T來計(jì)算,即:t=(1-β)T,代入式(5)可計(jì)算出傾翻角θ: (6) 由式(6)可以看出,四足機(jī)器人運(yùn)動(dòng)過程中的傾翻角θ與k、T、β和λ有關(guān);只有當(dāng)傾翻角θ為0時(shí),四足機(jī)器人的兩條對(duì)角擺動(dòng)腿才能同時(shí)落地。同時(shí),為了保證機(jī)器人動(dòng)態(tài)行走過程的穩(wěn)定性,其傾翻角速度越小越好。 取對(duì)角小跑步態(tài)的占空比β=0.5。在這種情況下,四足機(jī)器人以對(duì)角的兩條腿為一組,分別處于支撐相和擺動(dòng)相,如當(dāng)腿1和腿4開始抬起進(jìn)行擺動(dòng)時(shí),腿2和腿3著地起支撐作用。 將β=0.5代入式(6),可以得到四足機(jī)器人運(yùn)動(dòng)過程中的傾翻角θ,即: (7) 當(dāng)6k-1=0(即k=1/6)時(shí),四足機(jī)器人在支撐相中的傾翻角θ為0,理論上,此時(shí)四足機(jī)器人兩條擺動(dòng)腿能夠同時(shí)著地。 根據(jù)占空比β=0.5將對(duì)角小跑步態(tài)的運(yùn)動(dòng)周期T分為2個(gè)子周期,分別對(duì)應(yīng)一組對(duì)角腿的支撐相和擺動(dòng)相。 對(duì)角小跑步態(tài)是對(duì)稱步態(tài),所以各腿的擺動(dòng)順序并沒有受到實(shí)際影響,四足機(jī)器人對(duì)角小跑步態(tài)的邁腿時(shí)序圖如圖3所示。 圖3 四足機(jī)器人對(duì)角小跑步態(tài)的邁腿時(shí)序圖 為了減小ADAMS建模和仿真的工作量,并且盡量體現(xiàn)閉鏈?zhǔn)剿淖銠C(jī)器人的運(yùn)動(dòng)性能,根據(jù)其機(jī)構(gòu)原理,筆者對(duì)關(guān)節(jié)零件作簡化處理,建立閉鏈?zhǔn)剿淖銠C(jī)器人虛擬樣機(jī)模型。 其中,閉鏈?zhǔn)剿淖銠C(jī)器人虛擬樣機(jī)參數(shù)如表1所示。 表1 閉鏈?zhǔn)剿淖銠C(jī)器人虛擬樣機(jī)參數(shù) 根據(jù)足端軌跡設(shè)計(jì),該四足機(jī)器人的腿部為擺動(dòng)相時(shí),其主閉鏈曲柄旋轉(zhuǎn)角度為:-36°≤α≤216°;該四足機(jī)器人的腿部為支撐相時(shí),其主閉鏈曲柄旋轉(zhuǎn)角度為:216°≤α≤324°,所以其擺動(dòng)相的轉(zhuǎn)動(dòng)角度為252°,支撐相的轉(zhuǎn)動(dòng)角度為108°。 筆者取主副閉鏈曲柄的轉(zhuǎn)角速比為1∶2,根據(jù)上述對(duì)角小跑步態(tài)規(guī)劃的運(yùn)動(dòng)規(guī)律,在ADAMS中進(jìn)行驅(qū)動(dòng)函數(shù)設(shè)計(jì),四足機(jī)器人對(duì)角小跑步態(tài)下的腿部主副閉鏈驅(qū)動(dòng)函數(shù)如表2所示。 表2 四足機(jī)器人對(duì)角小跑步態(tài)下的腿部主副閉鏈驅(qū)動(dòng)函數(shù) 表2中,t1,t2,t3為3個(gè)不同的階段:t1為姿態(tài)調(diào)整階段(0~0.1 s);t2是前半周期(0.1 s~0.3 s),即2、3腿為擺動(dòng)相,1、4腿為支撐相;t3是后半周期(0.3 s~0.5 s),即2、3腿為支撐相,1、4腿為擺動(dòng)相。t2和t3組成一個(gè)完整的邁步周期。 在驅(qū)動(dòng)函數(shù)中,“a”表示主閉鏈轉(zhuǎn)動(dòng)角度,“b”表示副閉鏈轉(zhuǎn)動(dòng)角度,下標(biāo)中的第一位數(shù)字表示階段,第二位數(shù)字表示機(jī)器腿的組別(“1”表示腿2和腿3,“2”表示腿1和腿4),驅(qū)動(dòng)函數(shù)中的“kv”為速度調(diào)節(jié)系數(shù),用來調(diào)節(jié)運(yùn)動(dòng)速度。 首先筆者根據(jù)表2中的驅(qū)動(dòng)函數(shù),在Matlab軟件中規(guī)劃出各個(gè)驅(qū)動(dòng)的角度變化值,然后導(dǎo)入ADAMS中形成spline曲線,再利用其來驅(qū)動(dòng)四足機(jī)器人按照對(duì)角小跑步態(tài)進(jìn)行運(yùn)動(dòng)。 設(shè)仿真時(shí)間為0.5 s,包括0.1 s的姿態(tài)調(diào)整和周期為0.4 s的對(duì)角小跑步態(tài)運(yùn)動(dòng),閉鏈?zhǔn)剿淖銠C(jī)器人對(duì)角步態(tài)仿真過程截圖如圖4所示。 圖4 閉鏈?zhǔn)剿淖銠C(jī)器人對(duì)角步態(tài)仿真過程截圖 圖4中的截圖分別為四足機(jī)器人在0 s、0.1 s、0.2 s、0.3 s、0.4 s和0.5 s這6個(gè)時(shí)間點(diǎn)的運(yùn)動(dòng)狀態(tài)。在仿真過程中,0~0.1 s為機(jī)器人的姿態(tài)調(diào)整階段,主要是保持機(jī)體質(zhì)心有越過支撐點(diǎn)連線的趨勢,為后面的對(duì)角小跑步態(tài)提供基礎(chǔ)速度。 在0.1 s~0.3 s前半周期,腿2和腿3為擺動(dòng)相,腿1和腿4為支撐相,機(jī)器人完成前0.5T的對(duì)角步態(tài);在0.3 s~0.5 s后半周期,各腿狀態(tài)正好與上一階段相反,腿2和腿3為支撐相,腿1和腿4為擺動(dòng)相。以此為周期,各對(duì)角腿組依次完成支撐和擺動(dòng),保持機(jī)器人前進(jìn)運(yùn)動(dòng)。 四足機(jī)器人機(jī)體質(zhì)心在xyz方向上的位移曲線如圖5所示。 圖5 四足機(jī)器人機(jī)體質(zhì)心在xyz方向上的位移曲線 在圖5中,x方向?yàn)闄C(jī)體的前進(jìn)方向,y方向?yàn)樨Q直方向,z方向?yàn)樽笥曳较?。由圖5曲線可知,閉鏈?zhǔn)剿淖銠C(jī)器人機(jī)體質(zhì)心的位移在y方向和z方向變化量相對(duì)于x方向來說較小。由于0~0.1 s是機(jī)器人的姿態(tài)調(diào)整階段,主要討論0.1 s~0.5 s周期的對(duì)角小跑運(yùn)動(dòng)過程。根據(jù)ADAMS仿真數(shù)據(jù)可得,在0.1 s~0.5 s時(shí)間段,機(jī)器人機(jī)體在x方向移動(dòng)的距離約為340 mm,由此可計(jì)算出對(duì)角小跑步態(tài)下,閉鏈?zhǔn)剿淖銠C(jī)器人在前進(jìn)方向的移動(dòng)速度約為0.85 m/s,能夠達(dá)到中等速度的運(yùn)動(dòng)。 單獨(dú)把豎直方向上的運(yùn)動(dòng)數(shù)據(jù)提取出來,四足機(jī)器人機(jī)體在y方向上的位移曲線如圖6所示。 圖6 四足機(jī)器人機(jī)體在y方向上的位移曲線 由圖6可知,除了0~0.1 s的姿態(tài)調(diào)整階段外,機(jī)器人在對(duì)角步態(tài)下行走過程中,其機(jī)體y方向位移波動(dòng)很小,其最大值為397.1 mm,最小值為393.5 mm。所以四足機(jī)器人在對(duì)角步態(tài)下,其上下起伏度約為3.6 mm,能夠保持穩(wěn)定行走。 四足機(jī)器人機(jī)體質(zhì)心在xyz方向上的速度曲線如圖7所示。 圖7 四足機(jī)器人機(jī)體質(zhì)心在xyz方向上的速度曲線 除去0~0.1 s機(jī)器人起步時(shí)的姿態(tài)調(diào)整階段,圖7中xyz這3個(gè)方向的速度曲線均在0.3 s和0.5 s這兩個(gè)時(shí)間點(diǎn)附近發(fā)生不規(guī)則的變化,這是由于閉鏈?zhǔn)剿淖銠C(jī)器人的擺動(dòng)腿和支撐腿在這兩個(gè)時(shí)間點(diǎn)相互切換,由足端落地時(shí)產(chǎn)生的振動(dòng)所導(dǎo)致的,該現(xiàn)象可以通過改進(jìn)控制方法和添加足端構(gòu)件來進(jìn)行改善。 以左后腿為例,筆者進(jìn)行足端運(yùn)動(dòng)研究,四足機(jī)器人對(duì)角步態(tài)下的足端軌跡如圖8所示。 圖8 四足機(jī)器人對(duì)角步態(tài)下的足端軌跡 圖8中,足端軌跡由兩段組成,從右往左依次對(duì)應(yīng)的是0~0.1 s的姿態(tài)調(diào)整階段的足端軌跡和0.1 s~0.5 s的對(duì)角步態(tài)下的足端軌跡。可以看出,足端在兩個(gè)階段的連接處存在一定的不規(guī)則運(yùn)動(dòng),這是由于閉鏈?zhǔn)剿淖銠C(jī)器人在運(yùn)動(dòng)過程中,其擺動(dòng)腿和支撐腿的相互切換不穩(wěn)定造成的。其對(duì)角步態(tài)下的足端軌跡步長約為350 mm,步高約為80 mm。 四足機(jī)器人對(duì)角步態(tài)下足端xyz方向速度曲線如圖9所示。 圖9 四足機(jī)器人對(duì)角步態(tài)下足端xyz方向速度曲線 由圖9可知,在0.1 s~0.3 s時(shí)足端速度基本為0,此時(shí)足端處于支撐相;而在0~0.1s和0.3 s~0.5 s時(shí),足端速度呈周期性變化,足端在0 ~0.1 s時(shí)為起步時(shí)的姿態(tài)調(diào)整階段,而在0.3 s~0.5 s時(shí)是處于擺動(dòng)相。 同時(shí),在0.1 s、0.3 s和0.5 s這幾個(gè)時(shí)刻,足端的運(yùn)動(dòng)速度都發(fā)生了不規(guī)則的變化,這與前面機(jī)體的運(yùn)動(dòng)分析是一致的,都是由足端落地時(shí)產(chǎn)生的振動(dòng)導(dǎo)致的。 (1)針對(duì)雙閉鏈?zhǔn)剿淖銠C(jī)器人快速行走需求,筆者運(yùn)用零力矩點(diǎn)ZMP理論來討論四足機(jī)器人的動(dòng)態(tài)穩(wěn)定性,推導(dǎo)出了機(jī)器人繞支撐對(duì)角線發(fā)生失穩(wěn)時(shí)的傾翻角θ表達(dá)式,理論得出當(dāng)6k-1=0時(shí),雙閉鏈?zhǔn)剿淖銠C(jī)器人在支撐相中的傾翻角θ為0,此時(shí)雙閉鏈?zhǔn)剿淖銠C(jī)器人兩條擺動(dòng)腿能夠同時(shí)著地; (2)建立了雙閉鏈?zhǔn)剿淖銠C(jī)器人的模型樣機(jī),基于對(duì)角小跑步態(tài)來規(guī)劃步行腿主副閉鏈的驅(qū)動(dòng)函數(shù),運(yùn)用ADAMS對(duì)機(jī)器人進(jìn)行運(yùn)動(dòng)仿真實(shí)驗(yàn),獲得其機(jī)體質(zhì)心和足端運(yùn)動(dòng)軌跡。仿真結(jié)果表明:該雙閉鏈?zhǔn)剿淖銠C(jī)器人,其對(duì)角小跑步態(tài)下的移動(dòng)速度約為0.85 m/s,上下起伏度約為3.6 mm,能夠達(dá)到中等速度下的穩(wěn)定行走運(yùn)動(dòng)。其足端軌跡的步長約為350 mm,步高約為80 mm,基本滿足跨步需求; (3)本研究提出的驅(qū)動(dòng)控制方法,可以實(shí)現(xiàn)四足機(jī)器人對(duì)角小跑步態(tài)下的中速平穩(wěn)行走。此外,該控制方法的姿態(tài)調(diào)整時(shí)間短,其腿部驅(qū)動(dòng)函數(shù)簡單、變量少,便于驅(qū)動(dòng)控制,有利于后續(xù)實(shí)體樣機(jī)的驅(qū)動(dòng)實(shí)驗(yàn)。3 四足機(jī)器人運(yùn)動(dòng)仿真與分析
3.1 對(duì)角小跑步態(tài)仿真
3.2 仿真結(jié)果分析
4 結(jié)束語