MATLAB机器人工具箱(一 机器人运动学)

一、三维空间位姿表示与坐标变换方法

三维空间的位置与姿态表示

位置描述

三维空间中的一点位置可由数组表示,MATLAB中同时提供了函数画出点的位置。

在这里插入图片描述

在这里插入图片描述

姿态描述

旋转矩阵

MATLAB机器人工具箱中提供了函数rotx(), roty(), rotz()用来计算绕三轴旋转的旋转矩阵(3x3)

在这里插入图片描述

坐标系绘制
  • 函数trplot():接收3x3旋转矩阵R或4x4齐次变换矩阵T,并将子坐标系的位置与姿态在原始坐标系中画出来。
  • 函数tranimate():
    tranimate(x1, x2, options):展示从姿态1到姿态2的动态变换过程,这里的姿态1和姿态2可以是3x3旋转矩阵,4x4齐次变换矩阵或一个四元数
    tranimate(x, options):展示从上一个姿态到姿态x的动态变换效果,x的可选类型同上一函数。
    tranimate(xseq, options):展示移动一段轨迹的动态效果,xseq可以是一组齐次变换矩阵或一组旋转矩阵或一组四元数。

坐标变换

平移坐标变换

MATLAB机器人工具箱中提供了函数transl(x, y, z)用来计算平移变换矩阵,返回的结果是4x4的齐次变换矩阵,x,y,z分别是延三个轴的平移距离
在这里插入图片描述
同时函数transl(T)还可以提取坐标变换中的平移分量。
在这里插入图片描述

旋转变换

类似的,MATLAB机器人工具箱提供了函数trotx(), troty(), trotz()来计算绕三轴旋转的齐次变换矩阵。
在这里插入图片描述
函数t2r(),可提取齐次变换矩阵中的正交旋转矩阵分量。
在这里插入图片描述
函数r2t()可将旋转矩阵转换为齐次变换矩阵。
在这里插入图片描述

二、机器人运动学

D-H参数法

创建一个连杆对象

MATLAB机器人工具箱提供了函数Link(theta, d, l, alpha, type)来创建一个连杆对象。
其中参数依次为:
杆件回转角 θ \theta θ, 杆件偏移量 d d d, 连杆长度 l l l,连杆扭转角 α \alpha α,关节类型
在这里插入图片描述
可用以下方法获取连杆的各项参数:

  • 获取连杆的关节类型:L.RP
  • 获取连杆的回转角:L.theta
  • 获取连杆的偏距:L.d
  • 获取连杆的长度:L.a
  • 获取连杆的扭转角:L.alpha

创建一个具有n自由度的机械臂

函数SerialLink()可将多个连杆对象构造成一个机械臂,并为机械臂对象命名。
在这里插入图片描述

机器人正运动学

函数L.A()可以求解连杆的变换矩阵
在这里插入图片描述
该函数接收的参数为该类型连杆的运动变量值,对于转动关节,参数即为连杆的回转角。刚刚输入的参数为0,相当于是初始状态。
在这里插入图片描述
对于一组连杆的组合机械臂,我们可以通过一组关节变量,即可表示出任意一个坐标系相对于基座坐标系的位姿。即
N 0 T = 1 0 T 2 1 T … i + 1 i T … N N − 1 T ^0_NT = ^0_1 T ^1_2T \dots ^i_{i+1}T \dots ^{N-1}_NT N0T=10T21Ti+1iTNN1T
MATLAB机器人工具箱中提供了函数fkine()用于计算正运动学问题:
在这里插入图片描述
函数three_link.plot()可将机械臂图形化的显示出来。
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
函数three_link.teach()还可允许用户自定义关节角度,进行可视化展示:
在这里插入图片描述
在这里插入图片描述

机器人逆运动学

封闭解法

函数ikine6s()提供了封闭解法,只适用于关节数为6,且腕部三个旋转关节的轴相交于一点的情况。

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

q1:

在这里插入图片描述
虽然关节角不同,但末端执行器的位姿相同。

数值解法

函数ikine()提供了数值解法,使用方法类似。

本文参考自《机器人仿真与编程技术》
本文的有关机器人学基础知识可在往期文章机器人学的数理基础知识或常见的机器人学导论教材中找到参考

  • 14
    点赞
  • 142
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

YWL0720

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值