利用MATLAB和Simulink进行逆运动学(IK)算法设计金宝app

运动学是研究运动而不考虑运动的原因,如力和力矩。逆运动学是利用运动学方程来确定机器人的运动以达到期望的位置。例如,要实现自动拾取箱子,生产线上使用的机械臂需要在箱子和制造机器之间从初始位置到期望位置的精确运动。机器人手臂的抓取端称为末端执行器。机器人配置是在机器人模型的位置限制内且不违反机器人的任何约束的关节位置列表。

给定所需机器人的末端执行器位置,逆运动学(IK)可以确定一个适当的关节构型,使末端执行器移动到目标姿态。

使用正运动学或逆运动学配置机器人的关节位置。

一旦使用逆运动学计算出机器人的关节角,就可以使用雅可比矩阵生成运动轮廓,使末端执行器从初始姿态移动到目标姿态。雅可比矩阵有助于定义机器人的关节参数和末端执行器速度之间的关系。

与正运动学(FK)不同,具有多个转动关节的机器人的逆运动学通常有多个解,根据目的提出了各种方法。金宝搏官方网站一般分为两种方法,一种是解析法(即解析解),另一种是用数值计算。

数值逆运动学解金宝搏官方网站

为了近似一个机器人配置,以达到指定的目标和约束的机器人,数值解可以使用。金宝搏官方网站每个关节角都是通过迭代算法进行优化计算的,比如基于梯度的方法。

数值IK求解器更一般,但需要多个步骤来收敛到非线性系统的解,而解析IK求解器最适合于简单的IK问题。确定应用哪个IK求解器主要取决于机器人应用程序,如实时交互应用程序,以及一些性能标准,如最终姿态的平滑性和冗余机器人系统的可伸缩性。

例子:多运动约束下的到达轨迹规划

基于MATLAB的多自由度机器人运动学逆解计算。

您可以使用Robotics System Toolbox™和Simscape Multibody™使用数值计算进行IK。完整的工作流程包括:

  • 创建刚体树机器人模型
  • 从URDF和DH参数中导入机器人定义
  • 基于CAD中定义的信息建立多体模型
  • 计算几何雅可比矩阵
  • 分析正运动学和动力学,逆运动学和动力学
  • 求解多约束逆运动学
  • 并联机构分析
  • 生成等价的C/ c++代码并将其嵌入到其他应用程序中

看到机器人系统工具箱Simscape多体为更多的信息。

解析逆运动学解金宝搏官方网站

根据数学公式,从末端执行器的姿态计算各关节角。通过象征性地定义关节参数和末端执行器姿态,IK可以以解析形式找到所有可能的关节角解,这些解是连杆长度、起始姿态和旋转约束的函数。金宝搏官方网站

由于运动学方程的非线性和冗余构型的可扩展性,解析IK主要用于低自由度机器人。

例子:推导并应用二连杆机器人手臂的逆运动学

用两连杆机器人手臂的关节角θ1和θ2及关节参数计算其逆运动学解。金宝搏官方网站

关节角θ1和θ2在期望末端执行器位姿处的解析逆运动学解金宝搏官方网站。

符号数学工具箱™可以用于分析IK。您可以:

  • 用符号形式定义机器人的末端执行器位置和关节参数为正弦和余弦函数
  • 求解关节角的逆运动学方程并生成运动轮廓
  • 以符号形式计算系统的雅可比矩阵,得到关节与机器人速度的关系
  • 将导出的表达式转换为MATLAB®功能块,并创建一个Simulink金宝app®或Simscape™模型来模拟机器人
  • 生成等价的C代码与其他应用程序合并。
有关更多信息,请参见MATLAB符号数学工具箱



参见:机器人系统工具箱Simscape多体符号数学工具箱机器人编程旋转矩阵积分用MATLAB和Simulink进行Arduino编程金宝appArduino工程装备路径规划

密歇根大学开发基于模型设计的双足机器人控制系统