,,
(沈陽建筑大學(xué)機(jī)械工程學(xué)院,遼寧 沈陽 110168)
從20世紀(jì)中后期早稻田大學(xué)制造出WABOT-1型機(jī)器人開始,人們對人形機(jī)器人的研究一直在不斷進(jìn)步。2000年本田公司制造ASIMO機(jī)器人,隨后又在2011年推出了全新的ASIMO以及人形機(jī)器人HRP-4C和Robonaut2[1]。幾年后,NAO機(jī)器人的橫空出世可見人形機(jī)器人的發(fā)展之快,而本文以NAO機(jī)器人進(jìn)行研究。
對于人形機(jī)器人的運動軌跡研究有幾種方法,如以動力學(xué)分析為基礎(chǔ)的步行規(guī)劃方法[2];基于捕捉人體運動的步態(tài)規(guī)劃方法[3];基于ZMP理論的步態(tài)規(guī)劃[4];基于被動步行的步態(tài)生成方法[5];基于倒立擺模型的方法[6];基于能量最優(yōu)化的方法[7];基于多連桿模型的方法等[8]。此前方法多數(shù)已經(jīng)成功而且應(yīng)用在實際的機(jī)器人上[9-11]。
然而以上研究,機(jī)器人的骨盆運動與自由足所受到的限制并未納入考慮范圍,因此無法完全控制零力矩點(ZMP)從而無法保證機(jī)器人穩(wěn)定的行走?;诖颂岢黾s束行走規(guī)劃,使機(jī)器人的腳與地面充分接觸,即使由于機(jī)器人行走過程中骨盆運動和自由足所受到的限制,也能實現(xiàn)機(jī)器人的穩(wěn)定行走。
NAO機(jī)器人是由Aldebaran機(jī)器人公司制造的可編程人形機(jī)器人。具有25個自由度,每只手臂5個、每個腳1個、頭部2個、腿部11個;身高0.57 m,體重4.5 kg。該機(jī)器人如圖1所示。其腿部的運動模型如圖2所示。每條腿上有6個旋轉(zhuǎn)關(guān)節(jié),但由于關(guān)節(jié)與骨盆相連,其運動會受到限制,而上面有1個制動器來產(chǎn)生對稱旋轉(zhuǎn)。
圖1 Aldebaran公司NAO仿人機(jī)器人
為了更好地理解NAO機(jī)器人的運動模式,采用改良的D-H參數(shù)法(Denavit和Hartenberg參數(shù)法)對NAO機(jī)器人腿部建立運動學(xué)模型。每個連接處都附上一個正交參考坐標(biāo)系。連接點的編號為0~12,從固定連接點開始(支撐足),到移動腳(自由足)結(jié)束,如圖2所示,能夠看出正交坐標(biāo)系XM,YM和ZM是建立在地面坐標(biāo)(全局坐標(biāo)系)上。
為了展開運動分析,在同一個運動鏈上建立了2套參考坐標(biāo)系:一個是針對右側(cè)固定足(frf),另一個是針對左側(cè)固定足(flf)。圖2中顯示的運動鏈?zhǔn)怯覀?cè)固定足。對于frf和flf來說,坐標(biāo)系編號都從零開始,指定到固定足。表1列出了腿部運動鏈的改良后D-H參數(shù)。這些參數(shù)對于frf和flf 2條鏈來說都是一樣的。表1中非空距離數(shù)值為d3=d11=0.103 m,d4=d10=0.10 m,r6=r7=0.071 2 m。
圖2 NAO機(jī)器人腿上的運動坐標(biāo)系示意
各個連桿和關(guān)節(jié)處的局部坐標(biāo)系的設(shè)定方法是:與連桿或是關(guān)節(jié)i相關(guān)的坐標(biāo)系成為坐標(biāo)系{1}其中i=1,2,…,12。αi表示繞Xi軸,從Zi旋轉(zhuǎn)到Zi+1的角度;
di表示繞Zi軸,從Xi-1移動到Xi的距離;
θi表示繞Zi軸,從Xi-1旋轉(zhuǎn)到Xi的角度;
τi表示骨盆到左右連桿水平延長線的距離。
表1 改進(jìn)后NAO雙腿的D-H參數(shù)
根據(jù)圖3所示的動力傳輸結(jié)構(gòu)能夠看出一個簡單的電機(jī)如何為運動鏈骨盆上的關(guān)節(jié)6和關(guān)節(jié)7提供運動。因此,以下約束來自動力傳輸θ6=θ7。
移動狀態(tài)下的機(jī)器人明顯約束了運動鏈的機(jī)動性,這時候方程式成立。由圖3可知,附著于骨盆的一個正交參考坐標(biāo)系(參考坐標(biāo)系xp-yp-zp)。
圖3 向附著于骨盆的關(guān)節(jié)傳輸動力的結(jié)構(gòu)
這個坐標(biāo)系通過固定角θp相對于坐標(biāo)系6的x6軸轉(zhuǎn)動。其中,frf的θp=45°,而flf的θp=-45°。
規(guī)定附著于骨盆(坐標(biāo)系xp-yp-zp,如圖2所示)的坐標(biāo)系姿態(tài)(位置與方向)以及相對于全局坐標(biāo)系的自由足(坐標(biāo)系x12-y12-zp12)作為時間函數(shù),以此定義正常行走模式。當(dāng)行走過程中,坐標(biāo)系xp-yp-zp保持平行于坐標(biāo)系xm-ym-zm,而且自由足腳底保持平行于全局坐標(biāo)系的平面xm-ym時,就能夠獲得人形機(jī)器人的一個特定行走情形。這種行走就是本文中所定義的基本行走。
在這種行走情形下,軀干的位移僅限于平移,而自由足則是普通運動,而且受限于圍繞的旋轉(zhuǎn)運動??衫门c全局坐標(biāo)系相匹配的本坐標(biāo)系開始處相應(yīng)連接點附著的Bryant角度λ,μ和υ,來規(guī)定骨盆與自由足相對于全局坐標(biāo)系的理想方向。因此,在基本行走模式中,骨盆的3個Bryant角度都是零位,因此骨盆相對于全局坐標(biāo)系的旋轉(zhuǎn)矩陣為
(1)
對于正常行走模式中的自由足轉(zhuǎn)動,規(guī)定足部坐標(biāo)系中矢量x12的方向。為了保持基本行走的條件,這種矢量必須與地面(平面xm-ym)相交。因此,自由足相對于全局坐標(biāo)系的旋轉(zhuǎn)矩陣為
(2)
矩陣中的m12,m22,m23等項的定義取決于λ,μ,υ的賦值。在之前有關(guān)基本行走模式的分析中,已經(jīng)證明對于骨盆特定姿態(tài)和自由足特定位置,m12,m13,m22,m23必須符合以下方程式要求,即
-c7s8m13+(cPc8+sPs7s8)m23=0
(3)
(4)
Si=sinθici=cosθi(i=7,8);sP=sinθP;cP=cosθP。θ7和θ8分別是圖2所示運動鏈中關(guān)節(jié)7和關(guān)節(jié)8的關(guān)節(jié)變量。
對于基本行走模式來說,自由足的Bryant角度受到約束,其中m12,m13,m22,m23符合式(3)和式(4),這些方程式被定義為基本行走模式的前提條件。在行走過程中,如果骨盆的OP點路徑保持在機(jī)器人矢狀平面上,而自由足的點O12保持在與矢狀平面平行的平面上,就能夠達(dá)到上述前提條件。否則,自由足的腳底就不會平行于地板平面,繼而無法實現(xiàn)足部與地面的穩(wěn)定接觸。
對于NAO機(jī)器人的基本行走模式來說,可以實現(xiàn)支撐足的姿態(tài)下,讓腳底與地面充分接觸。但是在基本行走模式中,骨盆點OP受到約束,保持在矢狀平面上。這種條件下,單獨支撐階段中的ZMP一般無法保持在機(jī)器人的支撐表面上。
為了全面控制ZMP的位置,必須讓點OP的運動構(gòu)件保持在正面。然而,這樣一個構(gòu)件會避開基本行走;因此,如果想要改善支撐足腳底中ZMP的位置,必須忽略基本行走的前提條件。提出保持支撐足的充分接觸狀態(tài)(式(2)),但卻允許骨盆在正面旋轉(zhuǎn)與位移。
因此,自由足的位置與方向以及骨盆位置將會被完全指定。骨盆可以旋轉(zhuǎn),這樣能夠改善自由腿的機(jī)動性,以便適當(dāng)控制ZMP。為了規(guī)定自由足的方向,采用Bryan角度λ12,μ12和v12來定義坐標(biāo)12相對于全局坐標(biāo)系的方向。骨盆方向的Bryan角度λp,μp,vp取決于支撐足的關(guān)節(jié)變量θ4,θ5,θ6。因為λp,μp,vp未明確,所以將θ4,θ5,θ6視為一種優(yōu)化方法的自變量。
事實上,為了僅通過機(jī)器人部分規(guī)定運動中的11個自由度解決逆向運動問題,提出一個基于非線性優(yōu)化方法的數(shù)值方案。該方案的各階段劃分如下:分別規(guī)定骨盆中點OP和附著于自由足坐標(biāo)系中點O12的笛卡爾坐標(biāo)xpypzp和xo12yo12zo12,以及規(guī)定相對于全局坐標(biāo)系的坐標(biāo)系12方向的Bryant角度λ12,μ12,v12。提出關(guān)節(jié)變量的初始值θ4,θ5,θ6。從提出的初始值θ4,θ5,θ6開始,將以下目標(biāo)函數(shù)最小化,即
(5)
圖4 骨盆的運動
圖5 雙足位置
圖6 右足的方向
圖7 左足的方向
在圖4和圖7中展示出相對于在限定條件下的骨盆和自由足的理想運動曲線。通過ZMP軌跡曲線來確定對骨盆運動的限制改善單支撐階段的ZMP控制,先計算ZMP軌跡,結(jié)果如圖8所示。
根據(jù)圖8所示,實際ZMP曲線與理想曲線在部分地方差別較大,但通過限制骨盆移動后,在部分區(qū)域使之與理想曲線更加重合接近。
圖8 ZMP曲線
如圖9所示,對骨盆和自由足的理想運動通過加以規(guī)定,僅對骨盆的旋轉(zhuǎn)運動進(jìn)行合成。特定行走時間為每步0.5 s。行走包含4步,第1步相當(dāng)于起始階段,而最后一步為結(jié)束階段。第2步和第3步處于勻速的巡游階段。表2為各行走階段數(shù)據(jù),圖9表示模擬狀態(tài)下機(jī)器人各部行走的狀態(tài)。從1 s開始時自由足與固定足的切換,直到2 s結(jié)束時,機(jī)器人的穩(wěn)定狀態(tài)模擬圖像。
表2 約束后理想運動的各部分參數(shù)值
圖9 行走模擬
當(dāng)規(guī)定的Bryant角得到約束就能夠?qū)崿F(xiàn)機(jī)器人的持續(xù)運動以及每一步中自由足與地面之間的穩(wěn)定接觸。這樣有助于解決NAO仿人機(jī)器人11個自由度腿部的逆運動問題。當(dāng)自由足的運動得到全面規(guī)定,骨盆中只規(guī)定了1個點的路徑,骨盆的平移運動能夠改善單支撐階段ZMP的控制。與此同時合成骨盆的旋轉(zhuǎn)運動,進(jìn)而對自由足姿態(tài)實現(xiàn)全面控制。對于NAO機(jī)器人步態(tài)的研究中,較大程度改善行走過程中ZMP的行為。為人形機(jī)器人行走機(jī)構(gòu)的數(shù)據(jù)參數(shù)分析提供支持,進(jìn)而為機(jī)器人及其相關(guān)輔助機(jī)械設(shè)備研究提供幫助。