用MATLAB编写逆运动学算法程序

运动学是对运动的研究,不考虑运动的原因,如力和力矩。逆运动学是一种帮助定义机器人达到期望位置的运动的方法。例如,为了完成一项手术任务,在医疗手术中使用的机械手臂需要从初始位置到期望位置的精确运动。

机器人运动学涉及到推导方程来描述机器人的关节参数和末端执行器之间的解析关系。推导运动方程有两种方法:

  • 正运动学。给定关节角值,正运动学方程计算机器人在坐标空间中的末端执行器位置。
  • 逆运动学。给定机器人的末端执行器位置,逆运动学方程计算将末端执行器移动到该位置所需的关节角。

插图显示双连杆机械臂末端执行器与所需的位置和角度θ1和θ2.

利用逆运动学方程计算出机器人的关节角后,利用雅可比矩阵将末端执行器从初始位置移动到最终位置。雅可比矩阵有助于定义机器人关节参数与末端执行器速度之间的关系。

使用MATLAB®和符号数学工具箱™,您可以:

  • 将机器人的末端执行器位置和关节参数象征性地定义为正弦和余弦函数
  • 求解关节角的逆运动学方程,生成运动廓线
  • 将系统雅可比矩阵作为符号表达式进行计算,得到关节与机器人速度之间的关系
  • 将导出的表达式转换为MATLAB函数块并创建Simulink万博1manbetx®或Simscape™模型来模拟机器人
  • 生成与其他应用程序相结合的等效C代码

有关更多信息,请参见MATLAB符号数学工具箱

参见:符号数学工具箱,机器人编程,旋转矩阵,积分,Arduino编程使用MATLAB和Simulink万博1manbetx,Arduino工程装备

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