法律状态公告日
法律状态信息
法律状态
2010-03-17
授权
授权
2009-06-03
实质审查的生效
实质审查的生效
2009-04-08
公开
公开
技术领域
本发明涉及机器人领域,特别涉及一种仿人机器人稳定行走的脚着地时间的控制方法及系统。
背景技术
双足步行机器人跟人一样,是靠两条腿的行走实现移动的。为了使机器人行走,需要给定机器人的行走轨迹(动态步态)。机器人的动态步态是一种固有的、周期的运动,是依据双足机器人整体动力学产生的。由于约束条件的耦合性和动力学方程的复杂性,动态步态计算需要一个优化过程。所以动态步态一般只能通过离线计算方法来实现。也就是说,动态步态一般是在假设双足机器人模型和周围环境已知的情况下生成的。但由于机器人的建模存在误差,以及周围环境的变化或产生了未知状况,如果不对所规划的动态步态进行实时修正和控制,机器人很可能会产生不稳定甚至摔倒等异常现象。因此,为了使机器人能在实际环境中稳定行走,需要根据当前的环境信息和机器人当前的自身状态,对规划的动态步态进行修正,进行实时步态控制,克服环境的改变与不确定性。
现有技术一公开了一种基于ZMP(Zero Moment Point,零矩点)补偿的控制方法。为了使机器人两足步态稳定,利用ZMP对机器人进行补偿。在ZMP中,作用在机器人足底上的地面反作用力和重力所产生的合力矩等于零。通过改变机器人的上身和修正机器人足部位置来实现ZMP补偿。
现有技术二公开了一种控制两足步行机器人的方法,根据地面反作用力,计算横摇角和纵摇角。按此横摇角和纵摇角驱动制动器,法向向量与重力方向上的参考方向对齐。
在对现有技术进行研究后,本发明人发现:现有技术一中的机器人状态修正需要进行复杂的动力学计算。而且由于机器人的摆动腿的着地时间决定机器人是否开始移重心,所以机器人脚着地时间对机器人的稳定性有重要影响。但是该技术并未考虑此因素,从而导致机器人仍然会产生不稳定甚至摔倒等异常现象。同样,现有技术二也没有把机器人脚着地时间对机器人的稳定性的重要影响考虑进去,所以也会出现机器人不稳定甚至摔倒等异常现象。
发明内容
为了使机器人能在实际环境中稳定行走,本发明实施例提供了一种仿人机器人稳定行走的脚着地时间的控制方法及系统。所述技术方案如下:
一种仿人机器人稳定行走的脚着地时间的控制方法,所述方法包括:
检测机器人摆动腿的脚是否着地及接触力的大小;
如果机器人摆动腿的脚比规划步态的时间提前着地,则抬高该摆动腿踝关节位置;
如果机器人摆动腿的脚比规划步态的时间滞后着地,则把摆动腿踝关节放低。
一种仿人机器人稳定行走的脚着地时间的控制系统,所述系统包括检测设备和调整设备:
所述检测设备:用于通过机器人踝关节处的力传感器检测机器人的脚是否着地及接触力的大小;
所述调整设备:用于通过调整期望的机器人脚部着地时间,使之与规划的着地时间吻合,如果机器人摆动腿的脚比规划步态提前着地,则抬高该摆动腿踝关节位置;如果机器人摆动腿的脚比规划步态滞后着地,则把摆动腿踝关节放低。
所述调整设备包括提前调整模块、滞后调整模块和支撑调整模块:
提前调整模块:用于当Ffoot>0且t<Tland时,则机器人摆动腿的脚比规划步态提前着地,机器人依据脚接触力的大小成比例地抬高该摆动腿踝关节的位置,所述计算机器人该摆动腿踝关节实时修正量为:ΔZf(t)=ΔZf(t-T)+K1Ffoot;
滞后调整模块:用于当Ffoot=0,t<Tland时,则机器人摆动腿的脚比规划步态滞后着地,判断机器人摆动腿伸直时脚是否能着地;
如果能着地,放低机器人摆动腿踝关节的高度;所述计算机器人该摆动腿踝关节实时修正量为:ΔZf(t)=ΔZf(t-T)-h;
如果机器人摆动腿完全伸直时脚底仍然无法接触地面,则调整另外一条腿的髋关节、膝关节和踝关节,使这条腿增大弯曲,机器人上身高度下降,以致摆动腿的脚能达到地面;
支撑调整模块:用于当Ffoot≥Mr,t>Tland时,则该摆动腿单独支撑整个机器人,计算机器人该摆动腿踝关节实时修正量为:ΔZf(t)=(1-K2)ΔZf(t-T);
所述T是计算机伺服控制系统的采样周期,K1和K2是系数,0<K1<1,0<K2<1,Ffoot是力传感器测得的脚与地面间的接触力,Tland是规划期望的脚着地时间,Mr是切换控制方式的门限值,h是大于零的常数。
本发明实施例提供的技术方案的有益效果是:
通过修正双足机器人脚着地时间实现机器人稳定行走,无需具体的机器人动力学模型,计算简单,反应迅速,快速调整机器人脚的高度,使机器人能在凹凸不平的地面上稳定行走,而且这种技术方案不针对特定的机器人结构,适应性广。既结合了动态步态,保证实现行走步态,又能保持动态平衡。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1是本发明实施例1提供的步行控制器结构图;
图2是本发明实施例1提供的一种仿人机器人稳定行走的脚着地时间的控制方法的一种流程图;
图3是本发明实施例1提供的机器人脚提前着地情况下的调整原理图;
图4是本发明实施例1提供的机器人脚提前着地情况下的一种流程图;
图5是本发明实施例1提供的机器人脚滞后着地情况下的调整原理图;
图6是本发明实施例1提供的机器人脚滞后着地情况下的一种流程图;
图7是本发明实施例2提供的控制系统的结构图;
图8是本发明实施例2提供的调整设备的结构图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明实施方式作进一步地详细描述。显然,所描述的实施例仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明通过机器人踝关节处的力传感器检测机器人脚是否着地以及接触力的大小,通过调整期望的机器人脚部着地时间,使之与规划的着地时间吻合。
实施例1
如图1所示,本发明实施例提供了一种机器人步行控制器。该机器人步行控制器采用双结构,由起前馈作用的离线步态规划Zf0(t)和起局部反馈作用的ΔZf(t)构成。步行机器人包括上身1、髋关节2、膝关节3、踝关节4、脚5、脚踝处的力传感器6及其连接件,下身的两条腿分别各有6个自由度。
机器人实时行走时,机器人踝关节的参考高度Zf(t)等于离线规划的动态步态Zf0(t)加上实时修正量ΔZf(t)。其中,Zf0(t)一般是在给定机器人模型和周围环境已知的情况下生成的。ΔZf(t)是当机器人脚没有在期望的时间着地(提前或滞后着地),为了克服环境不确定而使机器人维持平衡时踝关节高度的实时修正量。
参见图2,本发明实施例提供了一种仿人机器人稳定行走的脚着地时间的控制方法,通过调整期望的机器人脚部着地时间,使之与规划的着地时间吻合。具体步骤如下:
步骤201:通过机器人踝关节处的力传感器检测机器人摆动腿的脚是否着地及接触力的大小;
如果着地,则执行步骤202,否则,执行步骤204。
步骤202:Ffoot>0且t<Tland,机器人摆动腿的脚比规划步态提前着地;
步骤203:机器人依据摆动腿的脚接触力的大小成比例地抬高该摆动腿踝关节位置;然后执行步骤208;
步骤204:Ffoot=0,t<Tland,机器人摆动腿的脚比规划步态滞后着地;
步骤205:判断机器人摆动腿伸直时脚底是否能着地;
如果能着地,则执行步骤206,否则,执行步骤207。
步骤206:机器人则需放低摆动腿踝关节的高度;然后执行步骤208;
步骤207:伸直摆动腿,调整另外一条腿的髋关节、膝关节和踝关节,使这条腿增大弯曲,机器人上身高度下降,以致摆动腿的脚达到地面,以保持机器人本体的平衡;
步骤208:Ffoot≥Mr,该摆动腿单独支撑整个机器人,则该摆动腿踝关节位置逐渐恢复到固有动态步态规定的值。
进一步地,本发明实施例将对机器人摆动腿的脚比规划步态提前着地的情况进行说明,如图3所示,机器人依据摆动腿的脚接触力的大小成比例地抬高该摆动腿踝关节位置。当该摆动腿可以单独支撑整个机器人时,则该摆动腿踝关节位置逐渐恢复到固有动态步态规定的值。机器人踝关节实时修正量ΔZf(t)按以下两式计算:
其中,T是计算机伺服控制系统的采样周期。K1和K2是系数,0<K1<1,0<K2<1。Ffoot是力传感器测得的脚与地面间的接触力。Tland是规划期望的脚着地时间。Mr是切换控制方式的门限值,其值略小于机器人的体重(例如,其值等于机器人体重的80%至95%)。
参见图4,具体步骤如下所示:
步骤401:Ffoot>0且t<Tland,对机器人摆动腿的脚比规划步态提前着地的情况进行调整;
步骤402:机器人摆动腿的脚比规划步态提前着地,机器人则依据脚接触力的大小成比例地抬高该摆动腿踝关节的位置;
具体地,机器人摆动腿的脚比规划步态提前着地,计算机器人该摆动腿踝关节实时修正量为:
ΔZf(t)=ΔZf(t-T)+K1Ffoot
步骤403:Ffoot≥Mr且t>Tland,机器人摆动腿单独支撑整个机器人,则机器人该摆动腿踝关节位置逐渐恢复到固有动态步态规定的值。
具体的,机器人摆动腿单独支撑整个机器人,计算机器人该摆动腿踝关节实时修正量为:
ΔZf(t)=(1-K2)ΔZf(t-T)
进一步地,本发明实施例将对机器人摆动腿的脚比规划步态滞后着地的情况进行说明,如图5所示,机器人将适当地把腿踝关节放低,其中,放低的程度将取决于实际接触面与预期的接触面间的高差。当该摆动腿可以单独支撑整个机器人时,则该摆动腿踝关节位置逐渐恢复到固有动态步态规定的值。此种情况下,机器人踝关节实时修正量ΔZf(t)按以下两式计算:
如图6所示,具体步骤如下:
步骤601:Ffoot=0,t<Tland,对机器人摆动腿的脚比规划步态滞后着地的情况进行调整;
步骤602:机器人摆动腿的脚比规划步态滞后着地,判断机器人摆动腿伸直时脚是否能着地;
如果能着地,则执行步骤603,否则,执行步骤604;
步骤603:机器人摆动腿的脚比规划步态滞后着地,放低机器人摆动腿踝关节的高度,放低程度取决于实际接触面与预期的接触面间的高差;然后执行步骤605;
具体地,机器人摆动腿的脚比规划步态滞后着地,计算机器人该摆动腿踝关节实时修正量为:
ΔZf(t)=ΔZf(t-T)-h
步骤604:机器人摆动腿完全伸直时脚底仍然无法接触地面,则调整另外一条腿的髋关节、膝关节和踝关节,使这条腿增大弯曲,机器人上身高度下降,以致摆动腿的脚达到地面,以保持机器人本体的平衡;
步骤605:Ffoot≥Mr且t>Tland,则该摆动腿单独支撑整个机器人,则该摆动腿踝关节位置逐渐恢复到固有动态步态规定的值。
具体地,当机器人摆动腿单独支撑整个机器人,则计算机器人该摆动腿踝关节实时修正量为:
ΔZf(t)=(1-K2)ΔZf(t-T)
本发明实施例无需具体的机器人动力学模型,计算简单,反映迅速,快速调整机器人脚的高度,使机器人能在凹凸不平的地面上稳定行走,并且不针对特定的机器人结构,适应性广,既结合了动态步态,保证实现行走步态,又能保持动态平衡,很好的解决了机器人不稳定的问题。
实施例2
参见图7,本发明还提供了一种仿人机器人稳定行走的脚着地时间的控制系统,具体包括:
检测设备701:用于通过机器人踝关节处的力传感器检测机器人的脚是否着地及接触力的大小;
调整设备702:用于通过调整期望的机器人脚部着地时间,使之与规划的着地时间吻合,如果机器人摆动腿的脚比规划步态提前着地,则抬高该摆动腿踝关节位置;如果机器人摆动腿的脚比规划步态滞后着地,则把摆动腿踝关节放低。
进一步地,参见图8,调整设备702包括:
提前调整模块801:用于当Ffoot>0且t<Tland时,则机器人摆动腿的脚比规划步态提前着地,机器人依据脚接触力的大小成比例地抬高该摆动腿踝关节的位置,所述计算机器人该摆动腿踝关节实时修正量为:ΔZf(t)=ΔZf(t-T)+K1Ffoot;
滞后调整模块802:用于当Ffoot=0,t<Tland时,则机器人摆动腿的脚比规划步态滞后着地,判断机器人摆动腿伸直时脚是否能着地;
如果能着地,放低机器人摆动腿踝关节的高度;所述计算机器人该摆动腿踝关节实时修正量为:ΔZf(t)=ΔZf(t-T)-h;
如果机器人摆动腿完全伸直时脚底仍然无法接触地面,则调整另外一条腿的髋关节、膝关节和踝关节,使这条腿增大弯曲,机器人上身高度下降,以致摆动腿的脚达到地面;
支撑调整模块803:用于当Ffoot≥Mr且t>Tland时,则该摆动腿单独支撑整个机器人,计算机器人该摆动腿踝关节实时修正量为:ΔZf(t)=(1-K2)ΔZf(t-T)。
本发明实施例无需具体的机器人动力学模型,计算简单,反映迅速,快速调整机器人脚的高度,使机器人能在凹凸不平的地面上稳定行走,并且不针对特定的机器人结构,适应性广,既结合了动态步态,保证实现行走步态,又能保持动态平衡,很好的解决了机器人不稳定的问题。
以上实施例提供的技术方案中的全部或部分内容可以通过软件编程实现,其软件程序存储在可读取的存储介质中。
以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
机译: 机器人,一种行走控制装置和一种行走控制方法,其通过改变机器人的行走模式来确保行走稳定性
机译: 农机操作员行走型具有脚,装备有传动系统,设有变速齿轮是一种渐进式摩擦盘
机译: 用于减少扫描不连续性的扫描器控制方法,在连续的时间间隔内将相反的力施加到扫描器基板上,以确定系统稳定性的时间常数