主要内容

逆运动学

计算关节配置以实现末端执行器位姿

  • 库:
  • 机器人系统工具箱/机械手算法

  • 逆运动学块

描述

逆运动学块使用逆运动学(IK)求解器基于指定的刚体树模型计算所需的末端执行器位姿的关节配置。方法为机器人创建刚体树模型rigidBodyTree类。刚体树模型定义了求解器强制执行的所有关节约束。

指定RigidBodyTree参数和块掩码内所需的末端执行器。的算法参数也可以调优解算器参数选项卡。

输入所需的末端执行器构成,权重对姿势的容忍,和一个InitialGuess对于关节构型。求解器输出一个机器人配置,配置的规定的公差内满足末端执行器位姿的解算器参数选项卡。

港口

输入

全部展开

末端执行器位姿,指定为4 × 4齐次变换。中指定的刚体的所需位置和方向终端执行器参数。

数据类型:|

位姿公差的权重,指定为六元向量。向量的前三个元素对应于所需姿势的方向误差权重。向量的最后三个元素对应于误差上的权重xyz想要的姿势的位置。

数据类型:|

机器人配置的初始猜测,指定为关节位置的向量。位置的数量等于非固定关节的数量刚体树参数。使用这个初始猜测来帮助引导求解器得到所需的机器人配置。然而,不能保证解接近这个初始猜测。

数据类型:|

输出

全部展开

解决所需的末端执行器位姿的机器人配置,指定为一个矢量。机器人构型是刚体树模型中关节位置的向量。位置的数量等于非固定关节的数量刚体树参数。

数据类型:|

作为总线返回的解决方案信息。解决方案信息总线包含以下元素:

  • 迭代-算法运行的迭代次数。

  • PoseErrorNorm-解决方案中末端执行器位姿与期望末端执行器位姿之间的误差的大小。

  • ExitFlag-给出更多算法执行细节和返回原因的代码。有关每种算法类型的退出标志,请参见出口标志

  • 状态-描述解决方案是否在公差(1)或者是算法能找到的最佳解(2).

参数

全部展开

块的参数

刚体树模型,指定为rigidBodyTree对象。在MATLAB中创建机器人模型®在块掩码中指定之前的工作区。

所需姿态的末端执行器名称。看一份尸体名单rigidBodyTree对象,指定刚体树参数,然后单击选择身体

选择以启用信息端口并获取求解器解决方案的诊断信息。

解算器参数

求解逆运动学的算法,具体为“BFGSGradientProjection”“LevenbergMarquardt”.有关每种算法的详细信息,请参见逆运动学算法

选项中指定的联合限制刚体树模型。

优化解决方案的最大迭代次数,指定为正整数。增加迭代次数可以以减少执行时间为代价改进解决方案。

算法在超时前运行的最大秒数,指定为正标量。增加最大时间可以以减少执行时间为代价改进解决方案。

代价函数梯度上的阈值,指定为正标量。如果梯度的幅度低于这个阈值,算法就会停止。低梯度幅值通常表明求解器已经收敛到一个解。

由解生成的末端执行器位姿与期望位姿之间的误差大小的阈值,指定为正标量。的权重指定的每个组成部分的姿态都包括在这个计算中。

求解器允许的最小步长,指定为正标量。较小的步长通常意味着解接近收敛。

迭代之间末端执行器位姿误差变化的阈值,指定为正标量。如果姿态误差的所有元素的变化小于这个阈值,算法返回。

依赖关系

解算器Levenberg-Marquadt

选择复选框以启用错误衰减,然后指定阻尼的偏见参数。

依赖关系

解算器Levenberg-Marquadt

阻尼在代价函数上,指定为正标量。Levenberg-Marquadt算法有一个由这个标量控制的阻尼特性,它与代价函数一起工作,以控制收敛速度。

依赖关系

解算器Levenberg-Marquadt而且使用误差阻尼

  • 解释执行-使用MATLAB解释器模拟模型。此选项缩短了启动时间,但模拟速度较慢代码生成.在此模式下,您可以调试块的源代码。

  • 代码生成-使用生成的C代码模拟模型。你第一次运行模拟器,Simulink万博1manbetx®生成该块的C代码。C代码可用于后续的模拟,只要模型不变。此选项需要额外的启动时间,但后续模拟的速度可与解释执行

可调:没有

参考文献

Badreddine, Hassan, Stefan Vandewalle和Johan Meyers。湍流流动直接数值模拟中序列二次规划(SQP)的最优控制。计算物理杂志.256(2014): 1-16。doi: 10.1016 / j.jcp.2013.08.044。

[2] Bertsekas, Dimitri P。非线性规划.贝尔蒙特,马萨诸塞州:雅典娜科学,1999年。

[3]高德法布,唐纳德。Davidon变度量法在线性不等式和不等式约束下的极大化问题的推广。SIAM应用数学杂志.第17卷第4期(1969):739-64。doi: 10.1137 / 0117067。

[4] Nocedal, Jorge和Stephen Wright。数值优化.纽约,纽约:施普林格,2006。

[5]杉原,友道。Levenberg-Marquardt方法的解性-无关逆运动学IEEE机器人汇刊.第27卷第5期(2011):984-91。doi: 10.1109 / tro.2011.2148230。

[6]赵建民,诺曼·i·巴德勒。高关节图形的非线性规划逆运动学定位ACM图形学汇刊.第13卷第4期(1994):313-36。doi: 10.1145/195826.195827。

扩展功能

版本历史

在R2018b中介绍