MatlabRoboticToolbox工具箱学习笔记.docx

上传人:b****3 文档编号:929422 上传时间:2022-10-14 格式:DOCX 页数:13 大小:365.43KB
下载 相关 举报
MatlabRoboticToolbox工具箱学习笔记.docx_第1页
第1页 / 共13页
MatlabRoboticToolbox工具箱学习笔记.docx_第2页
第2页 / 共13页
MatlabRoboticToolbox工具箱学习笔记.docx_第3页
第3页 / 共13页
MatlabRoboticToolbox工具箱学习笔记.docx_第4页
第4页 / 共13页
MatlabRoboticToolbox工具箱学习笔记.docx_第5页
第5页 / 共13页
点击查看更多>>
下载资源
资源描述

MatlabRoboticToolbox工具箱学习笔记.docx

《MatlabRoboticToolbox工具箱学习笔记.docx》由会员分享,可在线阅读,更多相关《MatlabRoboticToolbox工具箱学习笔记.docx(13页珍藏版)》请在冰豆网上搜索。

MatlabRoboticToolbox工具箱学习笔记.docx

MatlabRoboticToolbox工具箱学习笔记

MatlabRoboticToolbox工具箱学习笔记

(一)

软件:

matlaba

工具箱:

MatlabRoboticToolboxv9.8

MatlabRoboticToolbox工具箱学习笔记依照RobotToolboxdemonstrations目录,将分三大某些阐述:

1、General(Rotations,Transformations,Trajectory)

2、Arm(Robot,Animation,Forwarwkinematics,Inversekinematics,Jacobians,Inversedynamics,Forwarddynamics,Symbolic,Codegeneration)

3、Mobile(Drivingtoapose,Quadrotor,Braitenberg,Bug,D*,PRM,SLAM,Particlefilter)

General/Rotations

%绕x轴旋转pi/2得到旋转矩阵

(1)r=rotx(pi/2);

%matlab默认角度单位为弧度,这里可以用度数作为单位

(2)R=rotx(30,'deg')*roty(50,'deg')*rotz(10,'deg');

%求出R等效任意旋转变换旋转轴矢量vec和转角theta

(3)[theta,vec]=tr2angvec(R);

%旋转矩阵用欧拉角表达,R=rotz(a)*roty(b)*rotz(c)

(4)eul=tr2eul(R);

%旋转矩阵用roll-pitch-yaw角表达,R=rotx(r)*roty(p)*rotz(y)

(5)rpy=tr2rpy(R);

%旋转矩阵用四元数表达

(6)q=Quaternion(R);

%将四元数转化为旋转矩阵

(7)q.R;

 %界面,可以是“rpy”,“eluer”角度单位为度。

(8)tripleangle('rpy');

General/Transformations

%沿x轴平移0.5,绕y轴旋转pi/2,绕z轴旋转-pi/2

 

(1)t=transl(0.5,0.0,0.0)*troty(pi/2)*trotz(-pi/2)

%将齐次变换矩阵转化为欧拉角

(2)tr2eul(t)

%将齐次变换矩阵转化为roll、pitch、yaw角

(3)tr2rpy(t)

General/Trajectory

clear;

clc;

p0=-1;%定义初始点及终点位置

p1=2;

p=tpoly(p0,p1,50);%取步长为50

figure

(1);

plot(p);%绘图,可以看到在初始点及终点一、二阶导均为零

[p,pd,pdd]=tpoly(p0,p1,50);%得到位置、速度、加速度

%p为五阶多项式,速度、加速度均在一定范畴内

figure

(2);

subplot(3,1,1);plot(p);xlabel('Time');ylabel('p');

subplot(3,1,2);plot(pd);xlabel('Time');ylabel('pd');

subplot(3,1,3);plot(pdd);xlabel('Time');ylabel('pdd');

%此外一种办法:

[p,pd,pdd]=lspb(p0,p1,50);

figure(3);

subplot(3,1,1);plot(p);xlabel('Time');ylabel('p');

subplot(3,1,2);plot(pd);xlabel('Time');ylabel('pd');%可以看到速度是呈梯形

subplot(3,1,3);plot(pdd);xlabel('Time');ylabel('pdd');

%三维状况:

p=mtraj(@tpoly,[012],[210],50);

figure(4);

plot(p)

%对于齐次变换矩阵状况

T0=transl(0.4,0.2,0)*trotx(pi);%定义初始点和目的点位姿

T1=transl(-0.4,-0.2,0.3)*troty(pi/2)*trotz(-pi/2);

T=ctraj(T0,T1,50);

first=T(:

:

1);%初始位姿矩阵

tenth=T(:

:

10);%第十个位姿矩阵

figure(5);

tranimate(T);%动画演示坐标系自初始点运动到目的点过程

 

MatlabRoboticToolbox工具箱学习笔记

(二)

Arm/Robots

机器人是由各种连杆连接而成,机器人关节分为旋转关节和移动关节。

创立机器人两个最重要函数是:

Link和SerialLink。

1、Link类

一种Link包括了机器人运动学参数、动力学参数、刚体惯性矩参数、电机和传动参数。

操作函数:

%A               连杆变换矩阵

%  RP            关节类型:

'R' 或'P'

%  friction      摩擦力

%  nofriction    摩擦力忽视

%  dyn           显示动力学参数

%  islimit       测试关节与否超过软限制

%  isrevolute    测试与否为旋转关节

%  isprismatic   测试与否为移动关节

%  display       连杆参数以表格形式显示

%  char          转为字符串

运动学参数:

%  theta    关节角度

%  d        连杆偏移量

%  a        连杆长度

%  alpha    连杆扭角

%  sigma    旋转关节为0,移动关节为1

%  mdh      原则D&H为0,否则为1

%  offset   关节变量偏移量

%  qlim     关节变量范畴[minmax]

动力学参数:

%  m        连杆质量

%  r        连杆相对于坐标系质心位置3x1

%  I        连杆惯性矩阵(关于连杆重心)3x3

%  B        粘性摩擦力(对于电机)1x1或2x1

%  Tc       库仑摩擦力1x1或2x1

电机和传动参数:

%  G        齿轮传动比

%  Jm       电机惯性矩(对于电机)

2、SerialLink类

操作函数:

%  plot          以图形形式显示机器人

%  teach         驱动机器人

%  isspherical   测试机器人与否有球腕关节

%  islimit       测试机器人与否到达关节极限

%  fkine         前向运动学求解

%  ikine6s       6旋转轴球腕关节机器人逆向运动学求解

%  ikine3        3旋转轴机器人逆向运动学求解

%  ikine         采用迭代办法逆向运动学求解

%  jacob0        在世界坐标系描述雅克比矩阵

%  jacobn        在工具坐标系描述雅克比矩阵

%  maniplty      可操纵性度

%  jtraj         关节空间轨迹

%  accel         关节加速度

%  coriolis      关节柯氏力

%  dyn           显示连杆动力学属性

%  fdyn          关节运动

%  friction      摩擦力

%  gravload      关节重力

%  inertia       关节惯性矩阵

%  nofriction    设立摩擦力为0

%  rne           关节力/力矩

%  payload       在末端坐标系增长负载

%  perturb       随机扰动连杆动力学参数

属性:

%  links      连杆向量(1xN)

%  gravity    重力方向[gxgygz]

%  base       机器人基座位姿(4x4)

%  tool       机器人工具变换矩阵[T6totooltip](4x4)

%  qlim       关节范畴[qminqmax](Nx2)

%  offset     偏置(Nx1)

%  name       机器人名字(在图形中显示)

%  manuf      注释,制造商名

%  comment    注释,总评

%  plotopt    optionsforplot()method(cellarray)

%  n           关节数

%  config      机器人构造字符串, 例如'RRRRRR'

%  mdh         运动学中商定布尔数(0=DH,1=MDH)

如何创立一种机器人?

  %Link调用格式:

 %{

             

(1)L=Link()创立一种带默认参数连杆

             

(2)L=Link(L1)复制连杆L1

             (3)L=Link(OPTIONS)创立一种指定运动学、动力学参数连杆

            OPTIONS可以是:

            %'theta',TH   jointangle,ifnotspecifiedjointisrevolute

            %'d',D        jointextension,ifnotspecifiedjointisprismatic

            %'a',A        jointoffset(default0)

            %'alpha',A    jointtwist(default0)

            %'standard'   definedusingstandardD&Hparameters(default).

            %'modified'   definedusingmodifiedD&Hparameters.

            %'offset',O   jointvariableoffset(default0)

            %'qlim',L     jointlimit(default[])

            %'I',I        linkinertiamatrix(3x1,6x1or3x3)

            %'r',R        linkcentreofgravity(3x1)

            %'m',M        linkmass(1x1)

            %'G',G        motorgearratio(default0)

            %'B',B        jointfriction,motorreferenced(default0)

            %'Jm',J       motorinertia,motorreferenced(default0)

            %'

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 医药卫生 > 中医中药

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1