四足仿生机器人连续自由步态生成方法与流程

文档序号:12050436阅读:来源:国知局

技术特征:

1.一种四足仿生机器人连续自由步态生成方法,其特征是,包括以下步骤:

(1)获得地形点云数据,并进行简化和栅格化,得到地形的高程图;根据地形的高程图,计算每个栅格对应的方差,对比预先设立的阈值,判断地形中的不可落足区域;

(2)计算机器人各足选定为摆动足时,为保证机器人在足摆动阶段的稳定性,所需要的重心调整量;

(3)根据机器人各足的位置,以减小四足机器人重心移动的次数和重心沿侧方向上的移动量为原则,选定摆动足;

(4)机器人按照计算的重心调整量主动调整重心至目标位置;

(5)结合地形信息与机器人的位置信息,根据最优落足点选择算法为摆动足选择地形中的相应位置点作为最优落足点;

(6)摆动足摆动至最优落足点,当摆动足的足底触底传感器检测到触地,转到步骤(2),重复整个过程。

2.根据权利要求1所述的四足仿生机器人连续自由步态生成方法,其特征是,所述步骤(1)中对点云数据进行简化和栅格化的过程是:

①确定单个栅格的尺寸,长×宽为m×n;

②按照确定的栅格尺寸,将点云数据进行栅格化处理;

③分别求出每个栅格中点数据对应的拟合平面;

④以栅格中点所对应的拟合平面的高度值,作为该栅格的高程值。

3.根据权利要求1所述的四足仿生机器人连续自由步态生成方法,其特征是,所述步骤(1)中判断地形中的不可落足区域的过程是:

通过建立评估模型,以评估每个栅格的崎岖度,在评估某个栅格的崎岖度时,连同这个栅格以及栅格周围(P*Q-1)个栅格共同组成评估模型,其中,P和Q均是奇数;

用E(i,j)表示栅格的高程值,则分别求得栅格(i,j)崎岖度的评估模型中栅格的平均高程值和高程值方差,如下式所示:

<mrow> <mfenced open = "{" close = ""> <mtable> <mtr> <mtd> <mrow> <mover> <mi>E</mi> <mo>&OverBar;</mo> </mover> <mrow> <mo>(</mo> <mrow> <mi>i</mi> <mo>,</mo> <mi>j</mi> </mrow> <mo>)</mo> </mrow> <mo>=</mo> <munderover> <mi>&Sigma;</mi> <mrow> <mi>p</mi> <mo>=</mo> <mo>-</mo> <mfrac> <mrow> <mo>(</mo> <mrow> <mi>p</mi> <mo>-</mo> <mn>1</mn> </mrow> <mo>)</mo> </mrow> <mn>2</mn> </mfrac> </mrow> <mfrac> <mrow> <mo>(</mo> <mrow> <mi>p</mi> <mo>-</mo> <mn>1</mn> </mrow> <mo>)</mo> </mrow> <mn>2</mn> </mfrac> </munderover> <munderover> <mi>&Sigma;</mi> <mrow> <mi>q</mi> <mo>=</mo> <mo>-</mo> <mfrac> <mrow> <mo>(</mo> <mrow> <mi>Q</mi> <mo>-</mo> <mn>1</mn> </mrow> <mo>)</mo> </mrow> <mn>2</mn> </mfrac> </mrow> <mfrac> <mrow> <mo>(</mo> <mrow> <mi>Q</mi> <mo>-</mo> <mn>1</mn> </mrow> <mo>)</mo> </mrow> <mn>2</mn> </mfrac> </munderover> <mi>E</mi> <mrow> <mo>(</mo> <mrow> <mi>i</mi> <mo>+</mo> <mi>q</mi> <mo>,</mo> <mi>j</mi> <mo>+</mo> <mi>p</mi> </mrow> <mo>)</mo> </mrow> <mo>/</mo> <mrow> <mo>(</mo> <mrow> <mi>P</mi> <mo>&CenterDot;</mo> <mi>Q</mi> </mrow> <mo>)</mo> </mrow> </mrow> </mtd> </mtr> <mtr> <mtd> <mrow> <mi>S</mi> <msup> <mrow> <mo>(</mo> <mrow> <mi>i</mi> <mo>,</mo> <mi>j</mi> </mrow> <mo>)</mo> </mrow> <mn>2</mn> </msup> <mo>=</mo> <munderover> <mi>&Sigma;</mi> <mrow> <mi>p</mi> <mo>=</mo> <mo>-</mo> <mfrac> <mrow> <mo>(</mo> <mrow> <mi>p</mi> <mo>-</mo> <mn>1</mn> </mrow> <mo>)</mo> </mrow> <mn>2</mn> </mfrac> </mrow> <mfrac> <mrow> <mo>(</mo> <mrow> <mi>p</mi> <mo>-</mo> <mn>1</mn> </mrow> <mo>)</mo> </mrow> <mn>2</mn> </mfrac> </munderover> <munderover> <mi>&Sigma;</mi> <mrow> <mi>q</mi> <mo>=</mo> <mo>-</mo> <mfrac> <mrow> <mo>(</mo> <mrow> <mi>Q</mi> <mo>-</mo> <mn>1</mn> </mrow> <mo>)</mo> </mrow> <mn>2</mn> </mfrac> </mrow> <mfrac> <mrow> <mo>(</mo> <mrow> <mi>Q</mi> <mo>-</mo> <mn>1</mn> </mrow> <mo>)</mo> </mrow> <mn>2</mn> </mfrac> </munderover> <msup> <mrow> <mo>&lsqb;</mo> <mrow> <mi>E</mi> <mrow> <mo>(</mo> <mrow> <mi>i</mi> <mo>+</mo> <mi>q</mi> <mo>,</mo> <mi>j</mi> <mo>+</mo> <mi>p</mi> </mrow> <mo>)</mo> </mrow> <mo>-</mo> <mover> <mi>E</mi> <mo>&OverBar;</mo> </mover> <mrow> <mo>(</mo> <mrow> <mi>i</mi> <mo>,</mo> <mi>j</mi> </mrow> <mo>)</mo> </mrow> </mrow> <mo>&rsqb;</mo> </mrow> <mn>2</mn> </msup> </mrow> </mtd> </mtr> </mtable> </mfenced> <mo>,</mo> </mrow>

以栅格(i,j)评估模型的方差作为栅格的崎岖度评价值,计算得到每个栅格的崎岖度评价值后,与预先设定的阈值T相比较;如果某个栅格的崎岖度评价值满足下式,则认为该栅格所在的区域为不可落足区域:

S(i,j)2≥T。

4.根据权利要求1所述的四足仿生机器人连续自由步态生成方法,其特征是,所述步骤(3)中选定摆动足的确定原则是:

(1)如果不需要重心移动,某只足在摆动时,机器人即可满足最小稳定裕度约束以及运动约束时,则该足可被优先选择为摆动足;

(2)如果所有的足均不符合第(1)条,则需根据计算的重心调整量,得到四只足分别选为摆动足时,所对应的重心调整量:Ly1、Ly2、Ly3以及Ly4;之后比较这四个重心调整量的大小,选择重心移动量最小相对应的足作为摆动足。

5.根据权利要求1所述的四足仿生机器人连续自由步态生成方法,其特征是,所述步骤(4)中的重心调整量计算过程是:

在四足支撑调整阶段,计算四足机器人重心的调整量时,必须遵循以下两条规则:

(1)保证四足机器人在重心调整之后,摆动足摆动过程中,其稳定裕度不小于预先设定的最小稳定裕度Smin

(2)在满足规则(1)的同时,尽量减小侧方向上的重心调整量;

假设机器人沿前进方向上的运动速度为Vx,重心调整阶段的时间为t1,则得重心调整的目标位置点P1的横坐标x1需满足下式:

xI=Lx1=Vx·t1

欲使四足机器人经四足支撑阶段的重心调整后,四足机器人的稳定裕度不小于最小稳定裕度Smin,则点P1的位置需满足下式:

(Lx1+Lx2)≥Smin

设重心调整阶段的时间为t2,则Lx2的值由下式求得:

Lx2=Vx·t2

欲使四足机器人经足的摆动阶段后,四足机器人仍能保证其自身的稳定性,即稳定裕度不小于最小稳定裕度Smin,则迈步阶段结束后,重心投影的目标位置点P2需满足下式:

Lx3≥Smin

为提高机器人在行走过程中的能耗,点P1和点P2满足式(Lx1+Lx2)≥Smin和Lx3≥Smin时,对应的最小移动量Ly,即为目标的重心调整量。

6.根据权利要求1所述的四足仿生机器人连续自由步态生成方法,其特征是,所述步骤(5)中的最优落足点选择算法,是:

将可选落足点的坐标位置存储在数组C中,如下式所示:

<mrow> <mtable> <mtr> <mtd> <mrow> <mi>C</mi> <mo>=</mo> <msubsup> <mrow> <mo>(</mo> <msub> <mi>c</mi> <mi>i</mi> </msub> <mo>)</mo> </mrow> <mrow> <mi>j</mi> <mo>=</mo> <mn>1</mn> </mrow> <mi>m</mi> </msubsup> <mo>=</mo> <mo>(</mo> <msub> <mi>c</mi> <mn>1</mn> </msub> <mrow> <mo>(</mo> <mrow> <msub> <mmultiscripts> <mi>x</mi> <mprescripts/> <none/> <mi>c</mi> </mmultiscripts> <mn>1</mn> </msub> <mo>,</mo> <msub> <mmultiscripts> <mi>y</mi> <mprescripts/> <none/> <mi>c</mi> </mmultiscripts> <mn>1</mn> </msub> </mrow> <mo>)</mo> </mrow> <mo>,</mo> <msub> <mi>c</mi> <mn>2</mn> </msub> <mrow> <mo>(</mo> <mrow> <msub> <mmultiscripts> <mi>x</mi> <mprescripts/> <none/> <mi>c</mi> </mmultiscripts> <mn>2</mn> </msub> <mo>,</mo> <msub> <mmultiscripts> <mi>y</mi> <mprescripts/> <none/> <mi>c</mi> </mmultiscripts> <mn>2</mn> </msub> </mrow> <mo>)</mo> </mrow> <mo>,</mo> <mo>...</mo> <mo>,</mo> </mrow> </mtd> </mtr> <mtr> <mtd> <mrow> <msub> <mi>c</mi> <mi>j</mi> </msub> <mo>(</mo> <mrow> <msub> <mmultiscripts> <mi>x</mi> <mprescripts/> <none/> <mi>c</mi> </mmultiscripts> <mi>j</mi> </msub> <mo>,</mo> <msub> <mmultiscripts> <mi>y</mi> <mprescripts/> <none/> <mi>c</mi> </mmultiscripts> <mi>j</mi> </msub> </mrow> <mo>)</mo> <mo>,</mo> <mn>..</mn> <mo>,</mo> <msub> <mi>c</mi> <mi>m</mi> </msub> <mo>(</mo> <mrow> <msub> <mmultiscripts> <mi>x</mi> <mprescripts/> <none/> <mi>c</mi> </mmultiscripts> <mi>m</mi> </msub> <mo>,</mo> <msub> <mmultiscripts> <mi>y</mi> <mprescripts/> <none/> <mi>c</mi> </mmultiscripts> <mi>m</mi> </msub> </mrow> <mo>)</mo> <mo>)</mo> </mrow> </mtd> </mtr> </mtable> <mo>,</mo> </mrow>

其中,ci代表的是摆动足第i个可选的落足点;xi和yi分别表示的是第i个可选落足点在世界坐标系{W}中的横纵坐标;

摆动足的最优落足点,必须满足以下两个条件:

(1)最优落足点必须帮助摆动足获得尽量大的步长,这样有助于机器人提高其平均运动速度;

(2)最优落足点必须帮助机器人获得更大面积的稳定区域,这样有助于机器人提高其在运动过程中的稳定性;

以Li(x,y)和Si(x,y)分别表示第i个可选的落足点被确定为最优落足点时,摆动足的步长以及对应的支撑三角形的面积,然后,建立最优落足点的评价函数,如下式所示:

F(x)=wS·Li(x,y)+wL·Si(x,y),

其中,wS和wL分别表示的是摆动足步长和机器人支撑三角形面积的权重系数;

根据数组C中存储的可选落足点的坐标,分别计算出每个可选落足点对应的评价函数的值,其中,最大评价函数的值对应的可选落足点即为摆动足的最优落足点。

当前第2页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1