发明名称 基于闭环控制的仿人机器人全向行走方法
摘要 本发明提供一种基于闭环控制的仿人机器人全向行走方法,包括足部落脚点规划、机器人躯干运动轨迹、足部空间轨迹规划、关节角度计算和反馈控制策略,首先规划出机器人足部在二维空间下的落脚点并计算出机器人的零力矩点ZMP值;由ZMP值建立带预测控制的双线性倒立摆模型并得到机器人躯干的参考位姿;由规划得出的落脚点使用三次样条插值法,得出每两个落脚点在三维空间中的最佳运行轨迹,即可获得足部参考位姿;由上述得出躯干和足部的参考位姿利用逆运动学知识计算出机器人各个关节的角度。本发明在仿人机器人行走过程中,利用闭环控制实现机器人的全向行走。相比现有技术,本发明的机器人行走方法具有鲁棒性强、稳定性好的优点。
申请公布号 CN103149933B 申请公布日期 2016.01.20
申请号 CN201310060399.8 申请日期 2013.02.27
申请人 南京邮电大学 发明人 刘娟;梁志伟;郝越;朱松豪
分类号 G05D1/02(2006.01)I 主分类号 G05D1/02(2006.01)I
代理机构 南京正联知识产权代理有限公司 32243 代理人 王素琴
主权项 一种基于闭环控制的仿人机器人全向行走方法,其特征在于:包括足部落脚点规划、机器人躯干运动轨迹、足部空间轨迹规划、关节角度计算和反馈控制策略,步骤一,足部落脚点规划:采用蚁群算法进行路径规划得出机器人足部在二维空间下的落脚点,并计算出机器人的零力矩点ZMP值;足部落脚点规划包括以下步骤:步骤a,通过指定移动路径上的落脚点的方法来规划每一步,确定每步的步长<img file="FDA0000814987740000011.GIF" wi="103" he="93" />步宽<img file="FDA0000814987740000012.GIF" wi="77" he="95" />和转向角度θ<sup>(n)</sup>;所述步骤a中的落脚点的规划为:将<img file="FDA0000814987740000013.GIF" wi="340" he="105" />称之为步行参数,第n个落脚点p<sup>(n)</sup>在X‑Y平面上可用<img file="FDA0000814987740000014.GIF" wi="241" he="105" />表示:<maths num="0001" id="cmaths0001"><math><![CDATA[<mrow><mfenced open = "(" close = ")"><mtable><mtr><mtd><msubsup><mi>p</mi><mi>x</mi><mrow><mo>(</mo><mi>n</mi><mo>)</mo></mrow></msubsup></mtd></mtr><mtr><mtd><msubsup><mi>p</mi><mi>y</mi><mrow><mo>(</mo><mi>n</mi><mo>)</mo></mrow></msubsup></mtd></mtr></mtable></mfenced><mo>=</mo><mfenced open = "(" close = ")"><mtable><mtr><mtd><msubsup><mi>p</mi><mi>x</mi><mrow><mo>(</mo><mi>n</mi><mo>-</mo><mn>1</mn><mo>)</mo></mrow></msubsup></mtd></mtr><mtr><mtd><msubsup><mi>p</mi><mi>y</mi><mrow><mo>(</mo><mi>n</mi><mo>-</mo><mn>1</mn><mo>)</mo></mrow></msubsup></mtd></mtr></mtable></mfenced><mo>+</mo><mfenced open = "(" close = ")"><mtable><mtr><mtd><msubsup><mi>c</mi><mi>&theta;</mi><mrow><mo>(</mo><mi>n</mi><mo>)</mo></mrow></msubsup></mtd><mtd><mrow><mo>-</mo><msubsup><mi>s</mi><mi>&theta;</mi><mrow><mo>(</mo><mi>n</mi><mo>)</mo></mrow></msubsup></mrow></mtd></mtr><mtr><mtd><msubsup><mi>s</mi><mi>&theta;</mi><mrow><mo>(</mo><mi>n</mi><mo>)</mo></mrow></msubsup></mtd><mtd><msubsup><mi>c</mi><mi>&theta;</mi><mrow><mo>(</mo><mi>n</mi><mo>)</mo></mrow></msubsup></mtd></mtr></mtable></mfenced><mfenced open = "(" close = ")"><mtable><mtr><mtd><msubsup><mi>s</mi><mi>x</mi><mrow><mo>(</mo><mi>n</mi><mo>)</mo></mrow></msubsup></mtd></mtr><mtr><mtd><mrow><mo>-</mo><msup><mrow><mo>(</mo><mo>-</mo><mn>1</mn><mo>)</mo></mrow><mi>n</mi></msup><msubsup><mi>s</mi><mi>y</mi><mrow><mo>(</mo><mi>n</mi><mo>)</mo></mrow></msubsup></mrow></mtd></mtr></mtable></mfenced><mo>-</mo><mo>-</mo><mo>-</mo><mrow><mo>(</mo><mn>1</mn><mo>)</mo></mrow></mrow>]]></math><img file="FDA0000814987740000015.GIF" wi="1583" he="246" /></maths>式(1)中,<img file="FDA0000814987740000016.GIF" wi="74" he="85" />表示前进方向即X轴方向上的步长,<img file="FDA0000814987740000017.GIF" wi="72" he="91" />表示侧移方向即Y轴方向上的步宽,θ<sup>(n)</sup>表示踏足与X轴的夹角,上标(n)均表示是第n步,n=0,1,2............N;<img file="FDA0000814987740000018.GIF" wi="586" he="92" />是第n步的转向角θ的余弦和正弦值;<img file="FDA0000814987740000019.GIF" wi="234" he="107" />为第一个支撑脚的位置,式(1)中步行开始时是左脚,如果开始步行的是右脚,则将式(1)中‑(‑1)<sup>n</sup>改为(‑1)<sup>n</sup>;步骤b,确定由当前位置到目标点移动过程中所有落脚点在X‑Y平面上的位置;步骤c,相对于第n‑1步而言第n步的位置,可由第n步的步长<img file="FDA00008149877400000110.GIF" wi="104" he="93" />步宽<img file="FDA00008149877400000111.GIF" wi="80" he="91" />和转向角度θ<sup>(n)</sup>来确定,并计算出第n步的终止速度;步骤二,机器人躯干运动轨迹:由步骤一得出的ZMP值建立带预测控制的双线性倒立摆模型并得到机器人躯干的参考位姿;步骤三,足部空间轨迹规划:由步骤一的足部落脚点规划得出的落脚点使用三次样条插值法,得出每两个落脚点在三维空间中的最佳运行轨迹,即可获得足部参考位姿;步骤四,关节角度计算:由步骤二、步骤三得出躯干和足部的参考位姿利用逆运动学知识计算出机器人的膝盖处的关节角,踝关节的滚动角和俯仰角,股关节的偏摆角、滚动角和俯仰角;步骤五,反馈控制策略:采用PID控制算法精确各个关节角度值并应用于实体机器人,由陀螺仪传感器信息值计算出机器人行走过程中的真实躯干位置,并与双线性倒立摆结合形成反馈控制,形成对整个行走过程的闭环控制。
地址 210003 江苏省南京市鼓楼区新模范马路66号