趙子儐
(上海理工大學 機械工程學院,上海 200093)
仿人跑步機器人穩(wěn)定性研究
趙子儐
(上海理工大學 機械工程學院,上海 200093)
針對仿人跑步機器人跑步過程中不易控制、容易跌倒的問題,將機器人跑步過程分為起跳、飛行兩個階段,分別采用ZMP與角動量定理進行穩(wěn)定性分析。在起跳階段,推導出機器人ZMP軌跡的計算公式,飛行階段的角動量與起跳階段的起跳瞬間角動量相同,因此根據(jù)起跳瞬間的角動量大小判斷機器人在飛行階段是否會發(fā)生翻轉。仿真結果顯示,機器人起跳階段ZMP軌跡始終位于機器人的支撐多邊形之內(nèi),飛行階段的動量矩為0.01 kg·m2/s,說明機器人能夠保持穩(wěn)定。
跑步機器人;穩(wěn)定性;ZMP;角動量
跑步機器人研究開始于上世紀80年代,最早的是Raibert 等人[1],Raibert團隊采用數(shù)種方法研制出跳躍機器人,這些方法為后來機器人的動態(tài)研究提供了早期的原則[2]。近年來跑步機器人研究受到越來越多的重視[3-5],2003年以后相繼有日、美、法、韓等國成功研制出數(shù)款跑步機器人,比如日本的Asimo,Athlete機器人。國內(nèi)仿人跑步機器人研制還處于實驗室研究階段,目前還沒有研制出仿人跑步機器人樣機。清華大學陳懇、付成龍等人提出了跑步機器人截面穩(wěn)定性判據(jù)[6];哈爾濱工業(yè)大學洪炳熔等[7]研究了跑步機器人的基本運動模型以及控制方法;上海交通大學雷旭升[8]等以最小能量方程為優(yōu)化了跑步機器人運動軌跡。
仿人跑步機器人腳掌和地面之間存在單邊約束,這種雙足系統(tǒng)本質(zhì)上是不穩(wěn)定的系統(tǒng)[9],同時仿人機器人機械結構復雜,因此不易控制[10]、穩(wěn)定性差。穩(wěn)定性較差以及能耗較高的問題已成為仿人機器人實用化進程的兩大障礙[11],國內(nèi)尚未研制出仿人跑步機器人樣機,穩(wěn)定性是其中很重要的原因。目前,步行機器人的穩(wěn)定性研究較多[12-13],而跑步機器人的穩(wěn)定性還需要更加的深入研究。鑒于以上問題,本文對跑步機器人穩(wěn)定性進行了研究,將跑步過程分為起跳與飛行階段各自進行分析,得到了跑步機器人的穩(wěn)定性判據(jù),并對該方法進行了仿真驗證。
1.1 起跳階段穩(wěn)定性
仿人跑步機器人在起跳階段有一只腳著地,因此穩(wěn)定性判據(jù)可以借鑒步行機器人穩(wěn)定性判別方法:機器人ZMP必須始終位于機器人的支撐多邊形以內(nèi)[14]。
圖1描述了機器人壓力分布與ZMP的關系。如圖1(a)所示,當?shù)孛鎸C器人足底作用力基本均勻分布時,機器人ZMP位于足底中間位置;如圖1(b),當?shù)孛孀饔昧ο驒C器人腳前端偏移時,機器人ZMP處于機器人腳的前部;極端情況下如圖1(c)所示,當所有作用力均由機器人腳尖承受時,此時機器人ZMP便位于機器人腳尖位置,在這種情況下,由于機器人足底位置與地面不再保持接觸,因此一個輕微的外界擾動作用于機器人身上都有可能使機器人旋轉或者跌倒。為了提高仿人機器人運動的穩(wěn)定性,ZMP必須位于機器人支撐多邊形的內(nèi)部,并距離支撐多邊形邊界有一定的距離。式(1)和式(2)為仿人機器人在起跳階段的ZMP計算公式
(1)
(2)
圖1 機器人壓力分布與ZMP關系
1.2 飛行階段穩(wěn)定性
機器人在飛行階段處于騰空狀態(tài),與地面沒有接觸,只受重力與慣性力的作用,因此在此階段機器人作自由落體運動。由達朗貝爾原理得
(3)
(4)
其中,ai為機器人桿件 的質(zhì)心慣性加速度;1ci為機器人桿件i質(zhì)心與重心的距離;Mi為機器人桿件 在飛行階段所受的力矩;M為機器人桿件繞機器人質(zhì)心的合力矩。將式(3)帶入到式(4)得
(5)
對式(5)進行積分,得到機器人在飛行階段的角動量為
(6)
其中ts,tf,T分別為機器人起跳階段持續(xù)時間、飛行階段持續(xù)時間以及單步長(右腳落地到下一次左腳落地之間的距離)持續(xù)時間,T=ts+tf,k為機器人步數(shù),Li為機器人桿件i角動量。在飛行階段,機器人所受外力矩為零,角動量守恒,即在飛行階段機器人角動量保持不變,設為常數(shù)C,則由式(6)得
(7)
若C較大,則機器人在飛行過程中容易發(fā)生翻轉,為此在機器人起跳末端必須控制C為零或者接近于零,即
(8)
其中,ε為常數(shù),其取值與跑步機器人的跑步速度以及機器人質(zhì)量等因素有關。
2.1 碰撞分析
機器人在飛行階段結束落地,落地腳與地面碰撞,速度變?yōu)榱恪E鲎驳漠a(chǎn)生必然會影響機器人的穩(wěn)定性。為了分析機器人的碰撞問題,對機器人的碰撞作如下假設:(1)碰撞為瞬時完成,碰撞過程中腳與地面不發(fā)生打滑;(2)碰撞過程中只考慮碰撞力的作用,其他諸如摩擦力等忽略不計;(3)碰撞后機器人腳始終與地面接觸(機器人腳底可能有彈簧等緩沖裝置)。
在起跳階段,機器人自由度為10,但在飛行階段脫離地面約束,因此在矢狀面內(nèi)增加了兩個轉動與一個移動自由度,此時自由度變?yōu)?3。設機器人獨立廣義為x=[θ,p,r]T,其中θ為機器人關節(jié)轉角,θ=[θ1,θ2,…,θ12];p,r分別為機器人質(zhì)心在參考坐標系的位置與方向矢量。在機器人著地的瞬間,機器人自由度為10,機器人的拉格朗日方程為
(9)
(10)
即
(11)
將式(11)在碰撞時間Δt內(nèi)進行積分
(12)
根據(jù)前文假設,碰撞是在瞬時完成的,因此Δt→0,在取此種極限的情況下,由式(12)得到
(13)
機器人落地后瞬間落地腳的速度降為零,因此
(14)
將式(12)帶入式(11)得到
(15)
I#為6×6的單位矩陣。
因此,若要減小著地時腳與地面的碰撞,提高機器人的穩(wěn)定性,需要從兩方面考慮:(1)盡量減小落地前落地腳的速度,需在機器人的軌跡規(guī)劃時予以考慮;(2)使機器人在落地時與地面有一個緩沖,跑步機器人質(zhì)心與參考坐標系原點位置的連線可以看作一條“彈簧腿”,此“彈簧腿”在落地時一邊伸縮運動一邊旋轉運動,通過調(diào)整落地時“彈簧腿”的伸縮與旋轉可以達到緩沖目的,或在落地腳底面加上彈簧等的緩沖裝置以達到緩沖目的。本文采用第一種方法,對機器人軌跡規(guī)劃時將機器人落地速度規(guī)劃為零。
2.2 機器人腳的軌跡規(guī)劃
假設機器人跑步時第一次落地為右腳落地,則到下一次右腳落地時機器人完成一個跑步周期,經(jīng)歷了右腳起跳、飛行、左腳落地起跳、飛行、右腳落地5個階段。以右腳為例采用三次樣條曲線擬合腳的軌跡,以右腳落地時開始計時。右腳運動的邊界條件為
(16)
(17)
Ds為單步長,在t=T0時,右腳底面中心在參考坐標系中達到最高點(Da,Ha),xf,zf為右腳底面中心在參考坐標系在x,z方向的坐標。另外,由于在t=0時刻機器人右腳剛離開地面,此時初速度為0;而t=(k+2)T時刻,機器人右腳從空中落地,若此時右腳在x軸和z軸上的速度分量為vxt和vzt,得到右腳運動速度的邊界條件(第二類邊界條件)[15]
(18)
(19)
為減小落地時腳與地面的碰撞,將vxy和xzt規(guī)劃為0。令Ts=0.204 s,單步長Ds=0.47 m,飛行時間Tr=0.067 s,(Da,Ha)為(0.137 m,0.17 m)則根據(jù)式(16)~式(19)擬合出右腳的軌跡如圖2和圖3所示。
圖2 機器人右腳在x軸的軌跡
圖3 機器人右腳在z軸軌跡
為檢驗方法的正確性與有效性,對該方法進行仿真驗證,所采用的機器人主要參數(shù)如表1所示。首先規(guī)劃了機器人的質(zhì)心軌跡與雙腳軌跡,然后建立了機器人坐標系,對機器人正逆解進行分析,得到了機器人的關節(jié)轉角,并對機器人進行動力學分析,求得機器人動力學逆解;最后將機器人關節(jié)轉角帶入Matlab中進行仿真驗證。
根據(jù)式(1)和式(2)計算機器人在起跳階段的ZMP軌跡,如圖4所示,可以看出在起跳階段機器人的ZMP軌跡始終位于機器人的支撐多邊形以內(nèi),說明機器人在起跳階段是穩(wěn)定的;計算機器人在起跳結束時刻的動量矩,在起跳結束時刻機器人的動量矩為0.01 kgm2/s,接近于0,說明機器人在飛行階段不會發(fā)生翻轉。圖3給出了機器人的Matlab仿真桿狀圖,由圖3可以看出機器人實現(xiàn)了穩(wěn)定的跑步動作,單步長為0.47 m。
表1 機器人主要參數(shù)
圖4 跑步機器人桿狀圖
圖5 機器人起跳階段ZMP軌跡
針對跑步機器人容易跌倒的問題進行了分析,為維持穩(wěn)定,在起跳階段機器人ZMP必須位于機器人的支撐多邊形以內(nèi),在飛行階段機器人的角動量必須為零或接近于零。此外為減小機器人落地時腳與地面產(chǎn)生碰撞對穩(wěn)定性的影響,須控制落地速度或增加緩沖。仿人跑步機器人的進步需要基礎理論與機器人樣機的共同推進,將機器人理論應用于仿人跑步機器人、提高仿人跑步機器人運動能力,是目前仿人跑步機器人工作的重點與難點。
[1] Park J,Kim Y K,Yoon B,et al.Design of biped robot inspired by cats for fast running[J].EIectronics Letters,2014,50(10):730-731.
[2] Raibert M,Tello E R.Legged robots that balance[J].IEEE Expert,1986,1(4):89-89.
[3] Sullivan T,Seipel J.3D dynamics of bipedal runn- ing:effects of step width on an amputee- amputee-inspired robot[C].HA,USA: IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS 2014),IEEE,2014.
[4] Amagata Y,Nakaura S,Sampei M.The running of humanoid robot on uneven terrain utilizing output zeroing[C].Qubic:SICE Annual Conference,IEEE,2008.
[5] Cho B K,Kim J H,Oh J H.Online balance controllers for a hopping and running humanoid robot[J].Advanced Robotics,2011,25(9-10):1209-1225.
[6] 賈丁.仿人機器人概述[J].機器人技術與應用,2002(5):6-7.
[7] 洪炳熔,賀懷清.虛擬人的步行和跑步運動控制方法的研究[J].高技術通訊,2001,11(3):91-95.
[8] Lei X S,Su J B.Running trajectory generation for humanoid robot[C].HongKong:Proceedings of 2004 International Conference on Machine Learning and Cybernetics,2004.
[9] 彭勝軍,稅海濤,馬宏緒.仿人跑步機器人穩(wěn)定性與控制策略研究進展[J].控制工程,2011,18(1):142-146.
[10] 顧巖秀,華云松.雙足載人機器人的結構設計及高度優(yōu)化[J].電子科技,2016,29(2):77-80.
[11] 楊亮,傅瑜,付根平,等.基于能效優(yōu)化的仿人機器人跑步步態(tài)優(yōu)化與控制[J].計算機科學,2016,43(6):59-63.
[12] 王險峰,李建平,王輝.基于ZMP的仿人機器人跑步運動模式[J].計算機研究與發(fā)展,2013,50(10):2206-2211.
[13] Jungyup Kim,Youngseog Kim. Human-like gait generation for biped android robot using motion capture and ZMP measurement system[J].International Journal of Humanoid Robotics,2010,7(4):511-534.
[14] 梶田秀司,管貽生.仿人機器人[M].北京:清華大學出版社,2007.
[15] 張明,文世鵬.應用數(shù)值分析[M].北京:石油工業(yè)出版社,2001.
Research on Stability of Humanoid Running Robot
ZHAO Zibin
(School of Mechanical Engineering,University of Shanghai for Science and Technology,Shanghai 200093,China)
Aiming at the problem of humanoid running robot in the running process is not easy to control,easy to fall,the robot running process is divided into two stages: take-off phase and flight phase,the stability analysis is carried out by using ZMP and angular momentum theorem respectively. In the take-off phase,the calculation formula of the ZMP trajectory of the robot is derived; The angular momentum of the moment of Take-off is same with the angular momentum of the flight phases,therefore,according to the angular momentum of the moment of take-off to judge whether the robot will turn over the flight phase. The simulation results show that the ZMP trajectory of the robot is always in the support polygon of the robot,and the moment of momentum of the flight phase is 0.01kg·m2/s,which indicates that the robot can keep stable.
running robot;stability;ZMP;angular momentum;simulation.
TP242
A
1007-7820(2017)11-089-04
2016- 10- 22
趙子儐(1990-),男,碩士研究生。研究方向:機器人學。
10.16180/j.cnki.issn1007-7820.2017.11.024