Matlab Robotics Toolbox--坐标系变换

本文详细介绍了Matlab Robotics Toolbox中的坐标变换功能,包括平移变换和旋转变换的实现方法,以及如何通过函数如transl(), trotx(), troty(), trotz(), t2r(), r2t()进行坐标系变换和矩阵分解。并通过实例展示了如何在不同坐标系间转换点的位置。

Matlab Robotics Toolbox–坐标系变换

摘要

坐标变换一般可由旋转变换和平移变换两部分构成,上一篇介绍了Robotics Toolbox旋转变换的相关函数,这一篇介绍坐标系齐次变换的函数。

平移变换

(1)创建平移变换矩阵

  • T=transl(x,y,z) : 表示能够获取一个分别沿着x,y,z轴平移一段距离得到的4x4齐次变换矩阵。
  • T=transl§ : 表示由经过矩阵(或向量)p=[x,y,z]的平移得到的其次变换矩阵。如果p为(Mx3)的矩阵,则T为一组其次变换矩阵(4x4xM),其中T(:,:,i)对应于p的第i行。

例如

>> T=transl(1,2,3)

T =

     1     0     0     1
     0     1     0     2
     0     0     1     3
     0     0     0     1
     
>>p=[2 3 4];
>>T=transl(p)

T =

     1     0     0     2
     0     1     0     3
     0     0     1     4
     0     0     0     1

(2)使用transl()获取一个矩阵中的平移分量。

  • [x ,y, z]=transl(T): x,y,z是齐次变换矩阵T中的三个分量,是一个1xM的向量。
  • p=transl(T): p是齐次变换矩阵T中平移部分,是一个3xM的矩阵。

例子

T=transl(3,4,5)

T =

     1     0     0     3
     0     1     0     4
     0     0     1     5
     0     0     0     1

>> p=transl(T)

p =

     3
     4
     5

>> [x,y,z]=transl(T)

x =

     3


y =

     4


z =

     5

旋转坐标变换

  • T=trotx(θ\thetaθ): 表示绕X轴旋转θ\theta
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

Galaxy_Robot

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

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

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

打赏作者

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

抵扣说明:

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

余额充值