Matlab Robotics Toolbox--旋转矩阵

版权声明:本文为博主原创文章,转载请注明出处Brian2018的csdn博客http://blog.csdn.net/libing403?viewmode=contents https://blog.csdn.net/libing403/article/details/81877770

这里写图片描述

摘要

在机器人工具箱中,可以用rotx( θ )、roty( θ )、rotz( θ )计算旋转 θ 的旋转矩阵,默认单位为度(版本10.2.0)。可以用trplot()和tranimate()实现坐标旋转可视化。

获取旋转矩阵

  • rotx(): R=rotx( θ )是表示围绕X轴旋转角度为 θ 得到的旋转矩阵,返回一个3x3的矩阵。
  • roty(): R=roty( θ )是表示围绕Y轴旋转角度为 θ 得到的旋转矩阵,返回一个3x3的矩阵。
  • rotz(): R=rotz( θ )是表示围绕Z轴旋转角度为 θ 得到的旋转矩阵,返回一个3x3的矩阵。

例如

>> R=rotx(30)

R =

    1.0000         0         0
         0    0.8660   -0.5000
         0    0.5000    0.8660

绘制坐标系

  • 函数trplot()

    trplot(R):绘制由旋转矩阵R得到的坐标系,其中坐标系根据正交旋转矩阵围绕原点旋转得到,R为3x3的矩阵。

    trplot(T):trplot(R):绘制由齐次矩阵T表示的三维坐标系,T为4x4的矩阵。另外函数trplot()还包含了以下主要可选参数

参数 意义 参数 意义
‘noaxes’ 在绘图上不显示坐标轴 ‘axis’, A 将图形显示的轴尺寸设置为A,其中 A=[xmin xmax ymin ymax zmin zmax]
‘color’,C 设置轴的颜色,C代表MATLAB图形内置的颜色类型 ‘frame’,F 将绘制出来的坐标系命名为F,并且X,Y,Z轴的下标含有F
‘text_opts’,opt 调整显示文本的字体等属性;例如{‘FontSize’,10,’FontWeight’,’bold’} ‘view’,V 把绘图视图参数设置为V=[az,el]角度,或者对于坐标系的原点查看‘atuo’
‘length’,s 坐标轴的长度(默认值1) ‘arrow’ 设置坐标轴的末端为箭头,而不是线段
‘with’,w 箭头宽度(默认值1) ’thick‘,t 线条粗细,默认0.5
’3d‘ 在三维空间中使用浮雕图形绘制 ’anaglyph‘,A 将“3d”的浮雕颜色指定为左右两个字符(默认为rc):选自红,绿,蓝,青,品红
’dispar‘,D 3d显示差异(默认0.1) ’text‘ 启用在框架上显示X,Y,Z标签
’labels‘,L 使用字符串L的第1个,第2个,第3个字符标记X,Y,Z轴 ’rbg‘ 以红色,绿色,蓝色分别显示X,Y,Z轴

##动画展示

函数为:tranimate()

  • tranimate(x1,x2,options)展示3D坐标系从姿态x1变换到姿态x2的动画效果。其中姿态x1和x2有三种表示方法:一个4x4的其次矩阵,或一个3x3的旋转矩阵,或一个四元素。

  • tranimate(x,options)展示坐标系由上一个姿态变换到姿态x的动画效果。其中姿态x有三种表示方法:一个4x4的其次矩阵,或一个3x3的旋转矩阵,或一个四元素。

  • tranimate(xseq,options)展示了移动一段轨迹的动画效果。xseq可以是一组4x4xN的其次矩阵,或一组3x3xN的旋转矩阵,或是一组四元素向量(Nx1).

    options可以是以下可选参数

    参数 意义 参数 意义
    ‘fps’,fps 每秒显示的帧数(默认为10) ‘nstep’,n 沿路径的步数(默认50)
    ‘axis’,A 设置三个轴的边界,A=[xmin xmax ymin ymax zmin zmax] ‘movie’,M 将帧保存为文件夹M中的文件,M为文件的路径

    例子

    R=rotx(0);
    R2=rotx(90);
    tranimate(R,R2);

    结果如下图所示
    tannimate

    参考文献
    [1]机器人仿真与编程技术[M].杨辰光,李智军,许杨.北京:清华大学出版社,2018

猜你喜欢

转载自blog.csdn.net/libing403/article/details/81877770