王申江 郭祖華
北京航空航天大學(xué),北京,100191
單腿跳躍機器人軌跡規(guī)劃
王申江郭祖華
北京航空航天大學(xué),北京,100191
將單腿跳躍機器人簡化成一個三桿模型,研究機器人跳躍過程中各個關(guān)節(jié)的運動軌跡問題,并在總結(jié)跳躍過程現(xiàn)有軌跡規(guī)劃方法的基礎(chǔ)上,運用參數(shù)化優(yōu)化方法實現(xiàn)關(guān)節(jié)空間的軌跡規(guī)劃,優(yōu)化目標(biāo)為機器人關(guān)節(jié)的控制勢最小。將跳躍過程分解成開始段、騰空段、站立段和結(jié)束段,并對各段的關(guān)節(jié)軌跡分別優(yōu)化,最后得到從靜止?fàn)顟B(tài)開始起跳到著地后恢復(fù)至靜止?fàn)顟B(tài)的整個跳躍過程的關(guān)節(jié)軌跡。
跳躍機器人;ZMP;優(yōu)化;軌跡規(guī)劃
相比于輪式及履帶式移動機器人,仿人機器人運動靈活,對地面要求低,對環(huán)境適應(yīng)性強,因而倍受人們青睞。跳躍是仿人機器人的一種重要運動方式,可以極大地增加機器人的越障能力,在跳躍運動的不同階段,機器人的運動狀態(tài)和約束條件有很大的變化,但機器人的運動必然滿足特定指標(biāo)的最優(yōu)性,所以本文采用優(yōu)化的方法來尋找符合動力學(xué)約束的機器人跳躍軌跡。
當(dāng)前跳躍機器人研究模型主要有三大類:第一類是仿生機器人,即從自然界生物的彈跳動作中獲得啟發(fā),采用外形和功能與某類動物類似的機構(gòu)實現(xiàn)跳躍功能。如瑞士的研究人員設(shè)計了一款類似蚱蜢的跳躍機器人,質(zhì)量僅7g[1];Chen等[2]設(shè)計的蚱蜢跳躍機器實現(xiàn)了三倍自身高度的跳躍,而且能夠完成自我姿態(tài)恢復(fù);麻省理工學(xué)院研制了一種液壓控制的仿袋鼠單腿跳躍機器人Uniroo[3];日本東京大學(xué)科研人員在Uniroo基礎(chǔ)上進(jìn)行了改進(jìn),研制了類似狗腿型的機器人Kenken[4]。第二類是簡化模型,即直接利用簡單機構(gòu)產(chǎn)生彈跳力實現(xiàn)機器人的跳躍,這種機構(gòu)自由度少,動力學(xué)模型簡單,實現(xiàn)起來相對容易。如Cherouvim等[5]設(shè)計了兩自由度的跳躍機器人,該機器人只包含身體和可伸縮腿,運用其設(shè)計的控制方法實現(xiàn)了機器人在未知的不平整地面上的跳躍。第三類是特殊驅(qū)動的彈跳機器人,如采用爆炸力來實現(xiàn)彈跳的機器人[1]。這些研究主要集中在機器人彈跳功能的實現(xiàn)上。
目前仿人機器人跳躍行為的軌跡規(guī)劃主要包括兩種:一是分析法。該方法是在滿足動態(tài)穩(wěn)定性約束前提下,根據(jù)設(shè)定的跳躍參數(shù)和機器人的結(jié)構(gòu)參數(shù),確定跳躍過程中機器人各關(guān)節(jié)的運動軌跡[6-8]。二是基于優(yōu)化的方法,即以機器人動力學(xué)模型和穩(wěn)定性條件為約束,采用優(yōu)化的方法尋找最優(yōu)的軌跡。該方法的主要目標(biāo)是提高能量效率或是動態(tài)穩(wěn)定性[9-11]。按軌跡的描述方法來劃分,又可將軌跡規(guī)劃問題分為參數(shù)化軌跡規(guī)劃和非參數(shù)化軌跡規(guī)劃。
目前的文獻(xiàn)中大多只對騰空段和站立段進(jìn)行了軌跡規(guī)劃,只是得到了需要的起跳狀態(tài)和著地狀態(tài)而忽略了是否能夠達(dá)到這些需要的狀態(tài),即沒有考慮到機器人從靜止?fàn)顟B(tài)能否達(dá)到需要起跳的狀態(tài)以及能否從需要的著地狀態(tài)達(dá)到靜止?fàn)顟B(tài)。為了避免文獻(xiàn)中優(yōu)化參數(shù)個數(shù)和能量效率的矛盾,本文分析了有腳三桿機器人從靜止直立開始到靜止直立結(jié)束的全部過程,運用參數(shù)化優(yōu)化的方法,在較少的優(yōu)化參數(shù)條件下獲得了控制勢最小的最優(yōu)軌跡。
1.1機器人運動學(xué)和動力學(xué)
本文采用的仿人機器人簡化模型如圖1所示,機器人由三根連桿和腳組成,各部分間由轉(zhuǎn)動關(guān)節(jié)連接,由下至上分別是腳、踝關(guān)節(jié)、小腿、膝關(guān)節(jié)、大腿、髖關(guān)節(jié)和軀干。研究機器人跳躍時,只考慮機器人在前向平面內(nèi)的運動,每個關(guān)節(jié)有一個轉(zhuǎn)動自由度。簡化機器人模型的具體參數(shù)如表1所示,從小腿到軀干對各桿和各關(guān)節(jié)進(jìn)行編號,各參量含義如下:mi(i=1,2,3)為第i桿的質(zhì)量,Ii為第i桿繞其質(zhì)心的轉(zhuǎn)動慣量,li為第i桿的桿長,ri為第i桿質(zhì)心距其較低端端點的距離占其桿長的比例;lf1、lf2分別為腳后跟和腳尖到腳踝的距離;θil、θiu分別為第i個關(guān)節(jié)角角度的最小值及最大值,其中θ23=θ2-θ3;τil、τiu分別為第i個關(guān)節(jié)力矩的最小及最大值。腳的質(zhì)量忽略不計,且假設(shè)騰空過程中腳一直與地面保持平行。
圖1 跳躍機器人模型
m1(kg)0.2I1(kg·m2)0.01m2(kg)2I2(kg·m2)0.02m3(kg)8I3(kg·m2)0.04l1(m)0.4r1(m)0.6l2(m)0.35r2(m)0.6l3(m)0.6r3(m)0.4lf1(m)0.2lf2(m)0.2θ1l(°)30θ1u(°)120θ2l(°)75θ2u(°)225θ3l(°)45θ3u(°)90θ23l(°)0θ23u(°)180τ1l(N·m)-50τ1u(N·m)50τ2l(N·m)-50τ2u(N·m)50τ3l(N·m)-50τ3u(N·m)50
(1)
其中,Θ=[θ1θ2θ3]T,f表示腳和質(zhì)心的位置關(guān)系。
一般保守力系的拉格朗日方程為
(2)
q=[θ1θ2θ3xy]T
其中,L為拉格朗日函數(shù)或動勢;q為選取的廣義坐標(biāo);Q為各廣義坐標(biāo)對應(yīng)的廣義力;x、y為踝關(guān)節(jié)在慣性系中的坐標(biāo);τ1、τ2、τ3分別為三個在關(guān)節(jié)上施加的主動力矩;Fx、Fy為地面對腳的反作用力。
模型的動力學(xué)方程表述如下:
(3)
當(dāng)機器人處在站立段時,采用ZMP作為穩(wěn)定性判據(jù),自ZMP判據(jù)提出至今,已經(jīng)出現(xiàn)了許多不同的ZMP定義。概括起來主要有兩類:一類從地面反力的角度出發(fā),將地面反力向地面上某點等效,在該點處地面反力的力矩水平分量為零;另一類是指機器人機構(gòu)上的重力與慣性力的合力的地面投影線的交點。按第二類定義,本文ZMP公式可以簡化如下:
(4)
1.2碰撞模型
(5)
(6)
其中,J為雅可比矩陣,δF為沖擊力在碰撞時間內(nèi)的沖量,由式(5)和式(6)可以得到?jīng)_擊后各個關(guān)節(jié)的角速度為
(7)
其中,I是和D同維數(shù)的單位矩陣。
2.1跳躍過程的分解
機器人的整個跳躍過程如圖2所示,包含開始段(staringphase)、騰空段(flightphase)和站立段(stancephase)或停止段(stoppingphase)。開始段是機器人從靜止直立狀態(tài)到達(dá)離地前一時刻的狀態(tài)(takeoff);騰空段是以腳離開地面開始,到腳再次與地面碰撞(touchdown)的前一刻結(jié)束;站立段從腳碰撞地面后一刻開始,到下一次騰空前結(jié)束;停止段從碰撞后一刻開始,到靜止直立狀態(tài)結(jié)束。
圖2 機器人跳躍過程
2.2周期跳躍過程軌跡優(yōu)化
(8)
(9)
騰空段踝關(guān)節(jié)不提供力矩,是一個欠驅(qū)動過程,三個關(guān)節(jié)角不是相互獨立的。運用參數(shù)化方法假定關(guān)節(jié)角1和關(guān)節(jié)角2按如下規(guī)律進(jìn)行變化:
θj(t)=aj1+aj2t+aj3t2+aj4t3+aj5t4+
aj6t5+aj7t3(t-tfl)3
(10)
j=1,2
騰空段外力只有重力,所以其關(guān)于質(zhì)心的角動量守恒。由此可得關(guān)系式
(11)
(12)
(13)
由式(10)~式(13)計算出所有關(guān)節(jié)角的角度、角速度和角加速度后,再由式(2)可以計算出每個采樣時間內(nèi)的膝關(guān)節(jié)和髖關(guān)節(jié)力矩τ2、τ3,踝關(guān)節(jié)力矩τ1=0。
機器人在騰空段的優(yōu)化模型如下:
目標(biāo)函數(shù):
U=
[τ1(1)τ2(1)τ3(1)…τ1(N)τ2(N)τ3(N)]T
等式約束:
不等式約束:
τ2l≤τ2≤τ2uτ3l≤τ3≤τ3u
θil≤θi≤θiui=1,2,3
θ23l≤θ23≤θ23u
(14)
站立段是全驅(qū)動狀態(tài),假設(shè)三個關(guān)節(jié)角都按式(10)的規(guī)律變化,目標(biāo)函數(shù)與騰空段相同,優(yōu)化模型的約束如下:
等式約束:
不等式約束:
τ1l≤τ1≤τ1uτ2l≤τ2≤τ2u
τ3l≤τ3≤τ3uθil≤θi≤θiui=1,2,3
θ23l≤θ23≤θ23u-lf1≤xp≤lf2
Fy≥0Fx≤μFy
其中,lf1和lf2分別是腳后跟和腳尖到踝關(guān)節(jié)的距離,μ是地面滑動摩擦因數(shù),文中取μ=2/3。
周期跳躍過程中三個關(guān)節(jié)角、角速度、關(guān)節(jié)力矩、ZMP隨時間變化關(guān)系如圖3~圖6所示,從圖中可以看出,整個過程中關(guān)節(jié)角連續(xù)變化,在碰撞時刻關(guān)節(jié)角速度產(chǎn)生突變。
圖3 周期過程的關(guān)節(jié)角變化
圖4 周期過程的關(guān)節(jié)力矩變化
圖5 周期過程的關(guān)節(jié)角速度變化
圖6 周期過程的ZMP變化
2.3開始段以及停止段軌跡優(yōu)化
開始段和停止段優(yōu)化方法以及約束條件與周期過程的站立段相似,值得強調(diào)的一點是騰空段前向速度為vcx的取值不宜過大。從開始段來看,若vcx選取過大,機器人從靜止直立狀態(tài)到騰空前的狀態(tài),踝關(guān)節(jié)需要施加更大的力矩,容易導(dǎo)致機器人失穩(wěn)。
圖7~圖10所示為開始段三個關(guān)節(jié)角、角速度、關(guān)節(jié)力矩、ZMP隨時間的變化曲線,圖11~圖14為停止段各量的變化規(guī)律圖。
圖7 周期過程的關(guān)節(jié)角變化
圖8 周期過程的關(guān)節(jié)力矩變化
圖9 周期過程的關(guān)節(jié)角速度變化
圖10 周期過程的ZMP變化
圖11 周期過程的關(guān)節(jié)角變化
圖12 周期過程的關(guān)節(jié)力矩變化
圖13 周期過程的關(guān)節(jié)角速度變化
圖14 周期過程的ZMP變化
對比站立段、開始段以及停止段的ZMP軌跡可知,在站立段和停止段ZMP變化范圍較小,而開始段變化較大,特別是開始段取得的負(fù)值很大,一個可能的解釋是開始段從靜止加速到起跳狀態(tài),需要的踝關(guān)節(jié)力矩較大,導(dǎo)致ZMP負(fù)值很大。
圖15 水平地面上跳躍步態(tài)
機器人跳躍過程的棒狀圖如圖15所示,依次包含開始段、騰空段、站立段、騰空段、停止段,圖中一些點組成的一條從左至右的深色曲線表示質(zhì)心軌跡。
本文將單腿跳躍機器人的跳躍過程分為開始段、騰空段和站立段或停止段,采用參數(shù)化優(yōu)化方法規(guī)劃出了每個階段的最優(yōu)關(guān)節(jié)軌跡。與直接規(guī)劃運動軌跡的方法相比,優(yōu)化方法保證了運動過程中機器人關(guān)節(jié)控制勢的最優(yōu);而參數(shù)化優(yōu)化方法相對于非參數(shù)化優(yōu)化方法大大減少了優(yōu)化變量,提高了運算效率。以往關(guān)于軌跡規(guī)劃的文獻(xiàn)只是局限于在直接給定起跳狀態(tài)和著地狀態(tài)的情況實現(xiàn)軌跡的規(guī)劃,既沒有考慮機器人從靜止?fàn)顟B(tài)能否達(dá)到需要起跳狀態(tài),也沒有考慮機器人能否從給定的著地狀態(tài)達(dá)到靜止?fàn)顟B(tài)。本文則考慮了跳躍的全過程,采用參數(shù)化優(yōu)化規(guī)劃了機器人開始段和停止段的關(guān)節(jié)軌跡,實現(xiàn)了機器人從靜止直立狀態(tài)到起跳狀態(tài)以及從碰地后狀態(tài)到靜止直立狀態(tài)的過渡。
[1]郭小強,裴忠才. 跳躍機器人的研究現(xiàn)狀與發(fā)展趨勢[J]. 機械設(shè)計與制造,2011(11):173-175.
GuoXiaoqiang,PeiZhongcai.StudyStatusandDevelopingTreudofHoppingRobots[J].MachineryDesign&Manufacture,2011(11):173-175.
[2]ChenDiansheng,YinJunmao,HuangYu,etal.AHopping-rightingMechanismAnalysisandDesignoftheMobileRobot[J].JournaloftheBrazilianSocietyofMechanicalSciencesandEngineering,2013,4:469-478.
[3]詹望,葛文杰. 仿袋鼠跳躍機器人著地階段的動力特性研究[J]. 機械設(shè)計,2007,24(6):23-25.
ZhanWang,GeWenjie.StudyontheDynamicPropertyintheTouchdownPhaseofKangarooSimulativeJumpingRobot[J].JournalofMachineDesign,2007,24(6):23-25.
[4]HyonSH,EmuraT,MitaT.Dynamics-basedControlofaOne-leggedHoppingRobot[J].ProceedingsoftheInstitutionofMechanicalEngineers.PartI:JournalofSystemsandControlEngineering,2003,2:83-98.
[5]CherouvimN,PapadopoulosE.ControlofHoppingSpeedandHeightOverUnknownRoughTerrainUsingaSingleActuator[C]//9thInternationalConferenceonRoboticsandAutomation.Kobe,Japan, 2009:2743-2748.
[6]VermeulenJ,LefeberD,VerrelstB.ControlofFootPlacement,ForwardVelocityandBodyOrientationofaOne-leggedHoppingRobot[J].Robotica,2003,1:45-57.
[7]UgurluB,KawamuraA.ZMP-basedOnlineJumpingPatternGenerationforaOne-LeggedRobot[J].TransactionsonIndustrialElectronics,2010,57: 1701-1709.
[8]VukobratovicM,BranislavB.ZeroMomentPoint:ThirtyFiveYearsofItsLife[J].InternationalJournalofHumanoidRobotics,2004,1:157-173.
[9]GuoQ,MacnabCJB,PieperJK.HoppingonEvenGroundandUpStairswithaSingleArticulatedLeg[J].JournalofIntelligentandRoboticSystems,2008,4:331-358.
[10]HasaneiniSJ,MacnabCJB,BertramJEA,etal.GlobalOptimumHuman-LikeGaitsforanArticulatedOne-LeggedHopper[C]//ASMEInternationalConferenceonAdvancedIntelligentMechatronics(AIM).Montréal,Canada,2010: 391-396.
[11]WuTingYing,YehTJ,HsuBing-Hung.TrajectoryPlanningofaOne-leggedRobotPerformingStableHop[C]//InternationalConferenceonIntelligentRobotsandSystems(IROS).Taipei,2010:4922-4927.
(編輯郭偉)
Trajectory Planning for an One-legged-hopper Robot
Wang ShenjiangGuo Zuhua
Beijing University of Aeronautics and Astronautics,Beijing,100191
An one-legged-hopper robot was simplified into a three-linkage model herein. The joints’ trajectory planning problem was studied during jumping motion. After summarizing the current trajectory planning methods of hopper robot, a parameteric optimization method was adopted in the research to minimize the control effort of robot joints. The jump motion was decomposed into four phases: starting phase, flight phase, stance phase and stopping phase. Joint trajectories of each segment were planned by optimization separately. Finally trajectories for all joints were obtained during the whole jumping motion that the robot moved from static stand upright state to next static stand state.
hopper robot; zero moment point(ZMP); optimization; trajectory planning
2014-11-17
TP242.6DOI:10.3969/j.issn.1004-132X.2015.17.010
王申江,男,1989年生。北京航空航天大學(xué)宇航學(xué)院碩士研究生。研究方向為仿人機器人。郭祖華,男,1971年生。北京航空航天大學(xué)宇航學(xué)院副教授。