【外文翻译】双足机器人上楼梯的步态规划
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
双足机器人上楼梯的步态规划
Zhang Qin, Fan Chang-xiang and Yao Tao
School of Mechanical and Automotive Engineering
South China University of Technology
Guang zhou, Guangdong Province, China
zhangqin@
Yoshitsugu Kamiya
Department of Mechanical Systems Engineering
Kanazawa University
Kanazawa, Japan
kamiya@t.kanazawa-u.ac.jp
【摘要】上楼梯是双足机器人的一种基本动作。一个有效的算法对双足步行的稳定性是至关重要的。在本文中,我们以双足机器人爬楼梯为例,提出一个基于重复变换法(RDK)的算法来规划上楼梯动作和前向运动。在本文提出的算法中,为了满足上楼梯的稳定性,机器人通过上身来调整质心的位置,并且由重复变换法(RDK)进行计算和修正。重复变换法的作用是有保证性的,其可行性和有效性已经通过双足机器人上楼梯仿真实验的验证;而本文提出的算法也适用于双足机器人下楼梯。
【索引词】双足机器人;上楼梯;重复变换法;重心运动;
1.介绍
双足机器人和人类一样拥有多自由度的特点,每一个关节可以通过巧妙的组合从而可以完成各种动作。而且双足机器人对环境具有良好的适应性,并能进入相对狭窄空间替代人类执行各种操作,所以它们具有广阔的应用前景。上下楼梯只是双足机器人具有的基本功能。而建立机器人的运动学模型,分析其上下楼梯的过程,并研究其步态规划方法,是实现双足机器人稳定的步态非常重要的保证。
一些目前的研究成果已经计算出双足机器人的上下楼梯的步态规划。如Yusuke Sugahara以及其他人提出通过调整腰部关节的角度和预先设置的零点力矩(ZMP)轨迹来设计机器人的步态规划方法爬楼梯。而Jeon以及其他人通过四项多项式计算关节的运动轨迹,并优化的机器人上下楼所需的最小能耗,实现机器人上楼梯的步态规划。Eun-Su等人则通过优化多项式参数与动态加密算法和自适应遗传算法,并且结合低阶多项式来计算各关节的运动轨迹,最后研究轴承扭矩和能源消耗和ZMP,直至机器人能稳定上下楼梯从而规划机器人的上楼梯轨迹。Song Xian-xi等学者利用踝关节的运动轨迹,并调整踝关节的旋转角与利用模糊控制算法使ZMP的位置接近支撑区域的中心,实现机器人稳定上楼梯的步态规划。除此之外,其他一些国际和国内学者也做了相关研究关于双足机器人的上下楼梯或上下斜坡的步态规划。上面的算法主要是基于关节轨迹的预先计算,然后通过模糊控制算法或遗传算法优化步态等,这些算法相当复杂,因为计算量是非常巨大的,而且处理时间非常长。
本文在分析双足机器人动作的基础上,提出一个基于重复变换法(RDK)的新算法来规划攀爬动作和前向运动。算法的核心主要是通过腰部关节的运动来调整重心位置,以满足重心位置变化的需求,规划机器人能稳定地上楼梯且不让机器人摔倒的步态。
2.仿真模型的建立
双足机器人的仿真模型如图1所示。
图1 双足机器人的仿真模型
图1中的模型有6个自由度。分别是每条腿有3个自由度,右腿包括踝关节JR1,膝关节JR2,髋关节JR3。而左腿包括踝关节JL1,膝关节JL2和髋关节JL3。腰关节是两个自由度的球形关节。J7能够使腰部关节向前和向后旋转,而J8能够使腰部关节左右摆动。根据资料分析,一个普通人的的质量75%都是集中于腰部的,所以我们可以忽略身体下部的质量,而在建立模型时可以令机器人的腰部位置设为重心点c建立坐标系,并简化机器人的上半身。假设每个关节的顺时针旋转为负方向,而逆时针旋转方向为正方向。接着我们可以忽略动力学的影响,只考虑机器人上楼梯的静态步行的过程。
通过静力学的公式,我们可以得到重心的投影坐标是:
在公式中,θ7是腰部关节向前和向后旋转的角度,而θ8是腰部关节左右旋转的角度。鉴于FL和FR在地面上的支撑力分别作用于机器人的左、右脚,所以我们得出:
在公式中g是重力加速度,M的质量重心,Lw是左脚和右脚之间的横向距离。在机器人上楼梯的过程中,首先应该保证机器人不会摔倒,所以当它双脚支撑全身时,ZMP应该时刻保持在两脚之间的区域,也就是说F = min(FR,FL)> 0。机器人一只脚支撑时,ZMP应该保持在支撑区域,也就是说,FL > 0或FR > 0。当机器人一只脚支撑整体时,支撑脚的中心是最稳定的支点,坐标设为B(x0,y0),为了表达机器人的稳定度,机器人ZMP和B点之间的距离关系,公式是:
3.上楼梯的步态分析
机器人上楼梯的动作可以分解为以下步骤:首先机器人从两脚的中间移动ZMP到支撑脚(右脚);然后当重心完全转移到右脚时,弯曲左腿并向前移动;第三重心逐渐从右脚移动向左脚,最后重心完全转移到左脚时,机器人弯曲左腿和伸直腰部上楼梯。然后机器人的右脚重复上述流程从而完成整个操作。在上述过程中,机器人的重心点C在地面上的投影如(1)所示,和运动的重心是图2所示:
图2 机器人的重心轨迹,在图中重心的初始位置是,重心移动是
A基于重复变换法(RDK)算法的重心移动
调整机器人的重心位置使其上部的身体满足ZMP的约束要求,而身体上半身的重心基于重复变换法算法实现。机器人上楼梯的过程中,可以通过旋转腰部关节的自由度θ7θ8来计算机器人的9个姿态。由于腰部关节有限制的旋转范围,根据(1)机器人的重心位置C 投影在地上计算相应的每个姿势和根据(2)分别计算左脚和右脚的支撑力FL和FR。重复这种方式,直到机器人完成其重心的运动。详细算法描述如下:
(1)设置机器人的腰部关节旋转范围(θimin,θimax)和初始角度θi(i = 1、2、3、7、8)。
(2)给定腰部关节两个旋转方向的旋转角度(-θi,0,+θi)(i = 7、8),并计算32个步态和相应的正运动学方程。
(3)在计算出的32个动作中,限定机器人不会摔倒的条件下,然后挑出符合要求的动作,并增加支撑力。如果上面的要求并不存在,也就是说支撑脚的反作用力或FR小于0,那么这意味着目标任务不能完成。
(4)通过(3)得出在每个符合要求的姿势中,设ZMP到最稳定的支点距离l,并选择最低值lmin是机器人的步态。然后再回到(2)。