Matlab机器人工具箱(0)——旋转与平移变换
前言
旋转变换
旋转矩阵与可视化
欧拉角
RPY角
角轴
单位四元数
平移与旋转组合
总结
参考资料
前言
本文主要介绍如何使用matlab工具箱对旋转和平移进行操作。这里使用的RTB工具箱10.2版本,不同版本间代码风格可能会有差异,因此请注意工具箱的使用版本。
旋转变换
本部分的一些理论说明可参考旋转矩阵、欧拉角、四元数理论及其转换关系
旋转矩阵与可视化
close all;clc;clear;
%% 旋转
%% 以下为旋转矩阵表示法
% 绕x旋转90度
Rx = rotx(90);
% 绕y旋转90度
Ry = roty(90);
% 绕z旋转90度
Rz = rotz(90);
% 绘制旋转后的坐标系
trplot(Rx);
% 绘制世界坐标到Rx的动画过程
tranimate(Rx);
% 两个旋转的叠加, 即先绕世界坐标系的x轴转90度,
% 再沿当前坐标系的y轴转动90度
figure;
Rxy = Rx*Ry;
tranimate(Rxy);
这部分比较直观,代码注释已经写得非常清楚了。
关于旋转矩阵,值得说明的一点是,有的人分不清什么时候左乘,什么时候右乘,其实很简单:以当前坐标系的轴旋转,就右乘;以世界坐标系的轴旋转