丁宇 杜玉曉 黃修平 盧冠雄 曾春苗 王洽蓬 牛浩陽
預(yù)規(guī)劃的實(shí)時步態(tài)控制算法
丁宇 杜玉曉 黃修平 盧冠雄 曾春苗 王洽蓬 牛浩陽
(廣東工業(yè)大學(xué)自動化學(xué)院)
雙足機(jī)器人能夠在不同地形行走,而穩(wěn)定的步態(tài)是其適應(yīng)不同地形的前提。首先,結(jié)合地形特點(diǎn)和機(jī)器人位置,計(jì)算穩(wěn)定的動作,即在機(jī)器人行走之前完成動作預(yù)規(guī)劃;然后,通過構(gòu)建運(yùn)動學(xué)模型、設(shè)計(jì)姿態(tài)、穩(wěn)定性判斷等步驟完成步態(tài)規(guī)劃;最后,通過實(shí)驗(yàn)驗(yàn)證此算法可行。
雙足機(jī)器人;預(yù)規(guī)劃;步態(tài)規(guī)劃;運(yùn)動學(xué)模型
隨著信息技術(shù)迅速發(fā)展,工業(yè)4.0和中國制造2025等戰(zhàn)略的提出,人工智能領(lǐng)域受到廣泛關(guān)注。人形機(jī)器人作為靈活性、適應(yīng)性較高的機(jī)器人之一,能夠代替人類在惡劣的環(huán)境下工作,成為國內(nèi)外研究的熱點(diǎn)。步態(tài)控制是提高機(jī)器人行走能力的重要組成部分,因此對此方面的研究具有十分重要的意義[1]。
穩(wěn)定行走是人形機(jī)器人設(shè)計(jì)的難點(diǎn)??紤]到本團(tuán)隊(duì)的軟硬件水平,設(shè)計(jì)了簡單實(shí)用的預(yù)規(guī)劃的實(shí)時步態(tài)控制算法。該算法結(jié)合機(jī)器人與地形的實(shí)際特點(diǎn),通過構(gòu)建運(yùn)動學(xué)模型、設(shè)計(jì)姿態(tài)、穩(wěn)定性判斷等步驟,預(yù)先計(jì)算機(jī)器人每一步的位姿,完成步態(tài)的預(yù)先規(guī)劃。機(jī)器人根據(jù)預(yù)先計(jì)算的結(jié)果調(diào)整每一步的位姿,從而保證行走穩(wěn)定。
通過分析人形機(jī)器人關(guān)節(jié)自由度,并與人體關(guān)節(jié)自由度相對比,設(shè)計(jì)本文使用的機(jī)器人樣機(jī)。機(jī)器人關(guān)節(jié)示意圖如圖1所示,其中一個關(guān)節(jié)即為一個舵機(jī),圖1中標(biāo)號為舵機(jī)編號。運(yùn)動學(xué)模型是指機(jī)器人全身各處的關(guān)節(jié)角度和各個連桿位姿之間的關(guān)系,它是雙足機(jī)器人完成步態(tài)規(guī)劃的基礎(chǔ)。圖1中,在機(jī)器人的各處關(guān)節(jié)自由度上創(chuàng)建局部坐標(biāo)系,各坐標(biāo)原點(diǎn)均位于關(guān)節(jié)自由度轉(zhuǎn)動軸的中心點(diǎn)。
圖1 機(jī)器人關(guān)節(jié)示意圖
繞軸轉(zhuǎn)動的齊次變換矩陣為
繞軸轉(zhuǎn)動的齊次變換矩陣為
(2)
繞軸轉(zhuǎn)動的齊次變換矩陣為
利用齊次變換矩陣(1)、(2)、(3)和鏈?zhǔn)椒?,即可通過人形機(jī)器人的各關(guān)節(jié)角度求出各連桿位姿。
機(jī)器人的姿態(tài)是指在整個步態(tài)規(guī)劃過程中,各部分組件相對于局部坐標(biāo)系瞬時時刻的空間位置,可通過步行過程中瞬時時刻組建的廣義坐標(biāo)表示。
在機(jī)器人步行過程中,首先明確其運(yùn)動需求;然后對部分關(guān)節(jié)的運(yùn)動情況進(jìn)行預(yù)先規(guī)劃;再結(jié)合機(jī)器人的平衡關(guān)系;最后確定剩余關(guān)節(jié)的運(yùn)動。
為更簡便地規(guī)劃姿態(tài),可將機(jī)器人向前行走步態(tài)規(guī)劃分為重心右擺、左腿上抬、重心移到中心和重心左擺等階段[3],示意圖如圖2所示。
圖2 雙足行走步態(tài)示意圖
當(dāng)前行腿向前擺時,要使機(jī)器人的重心從雙腿中心轉(zhuǎn)移到支撐腿上,軀體要先向支撐腿一側(cè)扭動。為避免機(jī)器人在向支撐腿側(cè)扭動抬腿時,造成軀體向前行腿一側(cè)傾倒,步態(tài)規(guī)劃中將機(jī)器人的側(cè)扭和抬腿分步設(shè)計(jì),即先側(cè)扭,側(cè)扭到位后保持,再抬腿。
假設(shè)髖關(guān)節(jié)的側(cè)向不發(fā)生變化,即左右腿髖關(guān)節(jié)的2個轉(zhuǎn)彎關(guān)節(jié)和2個側(cè)向關(guān)節(jié)的側(cè)向偏轉(zhuǎn)角度均為0,以髖關(guān)節(jié)和踝關(guān)節(jié)為例,求解向前或向后運(yùn)動方程的步驟如下:
1)繪制關(guān)節(jié)隨時間變化的曲線圖,獲得此關(guān)節(jié)的運(yùn)動學(xué)軌跡;
2)與人類行走軌跡對比,按照行走過程的條件明確髖關(guān)節(jié)和踝關(guān)節(jié)運(yùn)動受力的關(guān)鍵點(diǎn);通過3次樣條插值方式,對所有關(guān)鍵點(diǎn)進(jìn)行插值處理,以簡化計(jì)算過程;
3)將處理后的關(guān)鍵點(diǎn)與多項(xiàng)式軌跡中的五次多項(xiàng)式進(jìn)行擬合,獲得髖關(guān)節(jié)與踝關(guān)節(jié)的平滑軌跡。
2.2.1ZMP穩(wěn)定性判據(jù)
為保持機(jī)器人平衡,必須使機(jī)器人的質(zhì)心受力平衡,否則機(jī)器人可能會傾倒。
機(jī)器人的運(yùn)動軌跡需要通過零力矩點(diǎn)來判斷。地面反作用力對人體腳部的影響比較復(fù)雜,但可以簡化為作用在任意一點(diǎn)的力。地面反作用力對人體腳部的作用可等價為一個力與力矩,如圖3所示。零力矩點(diǎn)就是在地面上存在一點(diǎn),使得在與地面平行軸方向的由慣性力(=)與重力(=g)所產(chǎn)生的凈力矩為零的點(diǎn)[4],即ZMP點(diǎn)。
圖3 機(jī)器人腳部受力示意圖
人體的站立、行走歸類為下支撐狀態(tài)。當(dāng)人處于站立狀態(tài)時,重力會通過雙腳在踝關(guān)節(jié)前面構(gòu)成一個支撐面,使軀體處于穩(wěn)定平衡狀態(tài)。當(dāng)人處于行走狀態(tài)時,便需要左右腳輪換支撐軀體,軀體的重心不斷移動,ZMP點(diǎn)也隨之不斷移動。在單腿支撐時,ZMP點(diǎn)必須位于支撐腳的支撐面內(nèi),以保證軀體穩(wěn)定和平衡;在換腿支撐的過程中,ZMP點(diǎn)需要從一個支撐面轉(zhuǎn)移到另一個支撐面,這時軀體處于不穩(wěn)定狀態(tài)。人的行走等效于平衡狀態(tài)與不平衡狀態(tài)的不斷交替[5]。
在步態(tài)規(guī)劃過程中,ZMP是人形機(jī)器人步行穩(wěn)定的主要依據(jù)。在理想情況下,實(shí)際ZMP與期望ZMP重合,且它離支撐面中央越近,機(jī)器人的步態(tài)就越穩(wěn)定。這時,人形機(jī)器人的步態(tài)具有較大ZMP穩(wěn)定裕度。對機(jī)器人的ZMP地面投影進(jìn)行設(shè)計(jì),使它處于穩(wěn)定的支撐區(qū)域內(nèi),以維持機(jī)器人平衡狀態(tài)[6]。
依據(jù)ZMP是否處于支撐區(qū)域內(nèi),判斷得到的所有姿態(tài)(即機(jī)器人完成2.1所規(guī)劃路徑的每一步姿態(tài))是否滿足穩(wěn)定性要求。如符合要求,則將這條規(guī)劃的路線輸出;不符合穩(wěn)定性要求,則重新進(jìn)行姿態(tài)規(guī)劃。不同階段的支撐區(qū)
圖4 不同階段的支撐區(qū)域示意圖
2.2.2ZMP坐標(biāo)計(jì)算
對于所規(guī)劃的姿態(tài),計(jì)算ZMP軌跡來驗(yàn)證其穩(wěn)定性。
繞,,軸的力矩為
可得
如果忽略慣性力的作用,則式(6)可轉(zhuǎn)變?yōu)?/p>
式(7)為靜態(tài)步行時的ZMP,即重心在地面的投影。對比此坐標(biāo)是否在支撐平面內(nèi),可判斷該姿態(tài)的穩(wěn)定性。
本文使用Matlab機(jī)器人工具箱,搭建機(jī)器人腿部仿真模型,如圖5所示。設(shè)定預(yù)規(guī)劃參數(shù),進(jìn)行運(yùn)動學(xué)仿真分析,得到機(jī)器人動畫步行過程,如圖6所示。隨后將數(shù)據(jù)移植進(jìn)入機(jī)器人中,進(jìn)行實(shí)時步行實(shí)驗(yàn),機(jī)器人能夠按照規(guī)劃的步態(tài)正常行走。
圖5 步行過程Matlab仿真模型
圖6 機(jī)器人步行過程圖
本文通過對人體步行軌跡的模仿來預(yù)先設(shè)計(jì)雙足機(jī)器人的步態(tài)規(guī)劃,解決了人形雙足機(jī)器人穩(wěn)定步行的問題。本文算法思路簡單、易實(shí)現(xiàn),但不具有自適應(yīng)性,需將地形與算法中的數(shù)據(jù)嚴(yán)格對照,這是未來研究的重點(diǎn)解決目標(biāo)。
[1] 趙理想,寧祎.仿生雙足機(jī)器人步態(tài)規(guī)劃研究現(xiàn)狀及展望[J]. 機(jī)電信息,2016(27):122-124.
[2] 楊先娜.基于動力學(xué)建模的雙足機(jī)器人步態(tài)規(guī)劃研究[D].北京:北京科技大學(xué),2009.
[3]于文成.雙足機(jī)器人步態(tài)規(guī)劃與控制研究[D].長春:吉林大學(xué),2017.
[4] 竇瑞軍,馬培蓀.基于ZMP點(diǎn)的兩足機(jī)器人步態(tài)優(yōu)化[J].機(jī)械科學(xué)與技術(shù),2003,22(1):77-79.
[5] Erbatur, Kemalettin,Kurt, OkanNatural?ZMP?Trajectories for?Biped?Robot?Reference Generation[J].IEEE Transactions on Industrial Electronics, 2009,56(3):835-845.
[6] Ferreira P, Manuel Crisóstomo, Coimbra A Paulo.Human-like ZMP trajectory reference in sagittal plane for a biped robot[C].International Conference on Advanced Robotics, 2009.
[7] 曹杰.小型仿人機(jī)器人的動態(tài)穩(wěn)定步態(tài)規(guī)劃[D].哈爾濱:哈爾濱工業(yè)大學(xué),2007.
Real-Time Gait Control Algorithm Based on Pre-Planning
Ding YuDu YuxiaoHuang Xiuping Lu GuanxiongZeng ChunmiaoWang QiapengNiu Haoyang
(School of Automation,Guangdong University of Technology)
Bipedal robot can adapt to almost all complex terrain, and the stability of gait is the prerequisite for bipedal robot to adapt to terrain changes. In this paper, by combining the features of terrain and the position of the robot, the stable motion is calculated, that is, the pre-movement planning is completed before the robot walks. A series of steps, such as building kinematics model, designing posture and judging stability, are completed to complete the gait planning.
Biped Robot; Pre-Planning; Gait Planning; Kinematics Model
丁宇,男,1998年生,在讀本科生,主要研究方向:自動控制、計(jì)算機(jī)網(wǎng)絡(luò)技術(shù)等。E-mail: 1316189625@qq.con