机器人与matlab—Robotics Toolbox—01空间位姿描述
机器人学与matlab—Robotics Toolbox—01空间位姿描述
- 1、二维空间位姿描述
- 2、三维空间位姿描述
- 2.1 正交旋转矩阵
- 2.2 三角度表示法(欧拉角、RPY角)
- 2.3 等效轴角坐标系法
- 2.4 四元数表示法
1、二维空间位姿描述
(1)T=SE2(x,y,theta);
%代表(x,y)的平移和theta角度的旋转。
(2)trplot2(T);
%代表画出相对于世界坐标系的变换T。
(3)T=transl2(x,y);
%二维空间中,纯平移的齐次变换。
例子:
T1=SE2(1,3,30,'deg');%代表平移了(1,3)和旋转了30°,'deg'表示度数。
%%或者这样表示:T1=SE2(1,2,30*pi/180)
trplot2(T1,'frame','1','color','b');%代表画出相对于世界坐标系的变换T1,新的坐标系命名为坐标系1,并且颜色定义为'b',蓝色。
axis([0 5 0 5]);%设置世界坐标系坐标轴的范围:x轴为(0,5),y轴为(0,5)。
T2=transl2(3,4);%只做(3,4)平移的变换
%%或者这样表示:T2=SE2(3,4,0)
hold on;%让多图共存
trplot2(T2,'frame','2','color','r');%代表画出相对于世界坐标系的变换T2,新的坐标系命名为坐标系2,并且颜色定义为'r',红色。
运行结果:
2、三维空间位姿描述
2.1 正交旋转矩阵
(1)R=rotx(theta);
%绕x轴旋转theta角,得到的旋转矩阵。
(2)R=roty(theta);
%绕y轴旋转theta角,得到的旋转矩阵。
(3)R=rotz(theta);
%绕z轴旋转theta角,得到的旋转矩阵。
(4)trplot( R );
%绘制相应的旋转矩阵。
(5)tranimate( R );
%做一个旋转的动画。
(6)T=transl(x,y,z);
%坐标系到的平移。
(7)Tx=trotx(theta); Ty=troty(theta); Tz=trotz(theta);
%绕x、y、z轴旋转theta角,得到的齐次变换矩阵
例子:
R1=rotx(30,'deg')*roty(50,'deg');
trplot(R1,'frame','A','color','b');
tranimate(R1,'frame','A','color','b');
R2=roty(50,'deg')*rotx(30,'deg');
hold on;
trplot(R2,'frame','B','color','r');
tranimate(R2,'frame','B','color','r');
T=transl(1,2,3);
Tx=trotx(60,'deg');
2.2 三角度表示法(欧拉角、RPY角)
2.2.1 欧拉角
相对于运动坐标系,先绕Zb轴转,再绕Yb轴转,最后绕Xb轴转。
欧拉角:R=rotz(alpha ) * roty(beta) * rotz(gamma);
(1)eul=tr2eul( R );
%旋转矩阵用欧拉角表示。
(2)R=eul2r(eul);
%eul=[alpha beta gamma] . 欧拉角转换为旋转矩阵。
例子:
R3=rotz(0.1)*roty(0.2)*rotz(0.3);
eul=tr2eul(R3);%将旋转矩阵R3,转变为欧拉角。
R4=eul2r(0.1,0.2,0.3);%将欧拉角转变为旋转矩阵。
运行结果:
2.2.2 RPY角
相对于固定坐标系,先绕Xa轴,Ya轴再绕Za轴旋转。
RPPY角:R=rotz(alpha ) * roty(beta) * rotx(gamma);
(1)rpy=tr2rpy( R );
%旋转矩阵用roll-pitch-yaw角表示。
(2)R=rpy2r(alpha,beta,gamma);
%将roll-pitch-yaw角用旋转矩阵表示。
示例:
R5=rotz(0.3)*roty(0.2)*rotx(0.1)
R6=rpy2r(0.1,0.2,0.3)
rpy=tr2rpy(R5)
运行结果:
2.3 等效轴角坐标系法
(1)[theta,vec]=tr2angvec( R );
%求出用等效轴角坐标系法表示旋转时,旋转矩阵R对应的旋转矢量vec和转角theta。
(2)R=angvec2r(theta,vec);
%从角度和向量,计算出相应的旋转矩阵。
示例:
[theta,vec]=tr2angvec(R7)
R8=angvec2r(theta,vec)
运行结果:
2.4 四元数表示法
(1)Q=Quaternion([s,v]);
%建立s四元数。
(2)Q=UnitQuaternion([s,v]);
%监理单位四元数。
(3)Qi=Q.inv();
%四元数的共轭。
(4)Q.display();
%打印出可读形式。
(5)Q.plot();
%绘制四元数所指方向。
(6)Q.animate(options);
%四元数代表坐标变换的动画。
(7)R=Q.R;
%转换成3*3的旋转矩阵。
(8)T=Q.T;
%转换成4*4齐次变换矩阵。
(9)rpy=Q.torpy();
%转换成导航角。
(10)eul=Q.toeul();
%转换成欧拉角。
例子:
s=0.98335
v=[0.034271,0.10602,0.14357]
Q=UnitQuaternion(s,v)
q=Q.inv()
Q.display()
Q.plot()
Q.animate()
TT=Q.T
RR=Q.R
rpy=Q.torpy()
eul=Q.toeul()
运行结果:
机器人与matlab—Robotics Toolbox—01空间位姿描述相关推荐
- matlab机器人自动分拣_YOLOv3 + Matlab Robotics ToolBox 实战 -- 软包装药品的机器人分拣系统设计与仿真...
本项目为大三上<机器人技术基础>课程团队研讨课题之一,当时做这个研讨课题还花了挺多的时间,又觉得还比较有意思,因此放在博客中记录一下.不过当时班上很多大佬的成果更牛逼,我们就属于弟弟水平h ...
- 焊接机器人——6自由度焊接机器人solidworks设计、D-H模型参数及matlab robotics toolbox模型仿真与验证
1 设计思路 焊接机器人在点与点之间移位时速度要快捷,动作要平稳,定位要准确,以减少移位的时间,提高工作效率. 考虑到各种被焊接工件的外型特点,首先我们必须保证机械臂能在达到空间中的所有位置(能够有较 ...
- matlab ikine 源码,RTB-9.10 matlab robotics toolbox 工具箱软件
可进行机器人运动学与动力学建模 275万源代码下载- www.pudn.com...
文件名称: RTB-9.10下载 收藏√ [ 5 4 3 2 1 ] 开发工具: matlab 文件大小: 20442 KB 上传时间: 2016-11-27 下载次数: 16 提 供 者 ...
- 怎么用matlab计算机械手运动,Matlab Robotics ToolBox 实战 -- 斯坦福机械手运动学建模及分析...
这同样是<机器人技术基础>课程实验中的一个,题目比较开放,只要求对任一坐标形式的机械臂进行研究即可.下面是详细介绍: 一.选定建模对象 选定球坐标机器人--斯坦福机械手臂(参考<机器 ...
- 基于Matlab Robotics Toolbox的Dobot机械臂运动规划(2)
[基于Matlab Robotics Toolbox的Dobot机械臂运动规划]系列文章是我在学习robotics toolbox中所做工作的记录,方便自己后面复习.改进. 基于Matlab R201 ...
- 解决高版本MATLAB robotics toolbox在plot/teach时报错问题
在MATLAB 2019 或者 2020 等高版本里,使用机器人工具箱(robotics toolbox/RTB)对机器人进行可视化时(比如robot.teach,robot.plot)会报错: In ...
- 基于Matlab Robotics Toolbox的Dobot机械臂运动规划(3)
[基于Matlab Robotics Toolbox的Dobot机械臂运动规划]系列文章是我在学习robotics toolbox中所做工作的记录,方便自己后面复习.改进 软件环境 : Matlab ...
- 基于Matlab Robotics Toolbox的Dobot机械臂运动规划(4)
[基于Matlab Robotics Toolbox的Dobot机械臂运动规划]系列文章是我在学习robotics toolbox中所做工作的记录,方便自己后面复习.改进 软件环境 : Matlab ...
- 基于Matlab Robotics Toolbox的Dobot机械臂运动规划(1)
[基于Matlab Robotics Toolbox的Dobot机械臂运动规划] 系列文章是我在学习robotics toolbox中所做工作的记录,方便自己后面复习.改进. 基于Matlab R20 ...
最新文章
- php 去除首位字符_php中如何去除字符串首尾字符?
- 根据传入url请求,返回json字符串
- 【数字智能三篇】之二: 一页纸说清楚“什么是推荐系统?”
- boost::phoenix::switch_相关的测试程序
- python 论坛模板_python模板 - PH的个人空间 - OSCHINA - 中文开源技术交流社区
- hdu 1408(高精度)坑人嫩
- java 拆箱_Java自动装箱拆箱
- 2018.7.28 二叉树的遍历规则(前序遍历、后序遍历、中序遍历)
- 数组取值_Python基础(五)--numpy包(数组与矩阵)
- tkinter中text插入_tkinter做一个体重档案
- 用html打开dbf文件怎么打开,dbf格式文件是什么 dbf文件用什么软件打开
- HBase优化案例分析:Facebook Messages系统问题与解决方案
- 节后荐书:Python、PyQt5、Kotlin(评论送书)
- Zookeeper使用案例
- 干货流出|腾讯内部几近满分的项目管理课程PPT
- 车牌自动识别在智能交通系统中的应用及前景分析
- 让你的桌面井井有条,4款桌面整理工具推荐
- 码农分为两类:看过《数学之美》的与没看过的
- 格拉苏蒂 Glashütte Original
- 再探C++中类继承问题:
热门文章
- 核实c#语言教程,C#教程方法用法 _C#语言-w3school教程
- 一加3t android 7.1,一加3T 7.1 ROM刷机包 7.1.2 Xposed框架主题号码归属地杜比全息来电闪光网...
- 三次进入ESI全球前1%,东大计算机实力如何?
- python使用docx模块读写docx文件的方法与docx模块常用方法
- 计算机教学word,计算机教学中word软件教学方法探究
- 爱剪辑的入门使用体验
- matlab 幂法,数值分析试验幂法与反幂法matlab.doc
- 联想笔记本老是出现仅计算机,联想电脑开机只显示节能模式怎么办
- GLAD应用:体全息光栅模拟
- 小米电视屏蔽广告规则