基于Matlab的Robotics Toolbox工具箱的机器人仿真函数介绍(空间位姿表示与动力学)

2023-05-16

文章目录

  • 前言
  • 一、空间位姿描述
    • 1. 二维空间
    • 2. 三维空间
    • 3. 旋转的不同表示方法
      • 1)欧拉角
      • 2)RPY角
      • 3)双向量表示
      • 4)轴与旋转角
      • 5)四元数表示
  • 二、动力学
    • 1. 动力学参数
    • 2. 正动力学函数
    • 3. 逆运动学函数
    • 4. 动力学方程参数
  • 总结

前言

在这里插入图片描述
随着我们了解到机器人如何建立运动学模型和动力学模型之后,我们可以使用Matlab中的仿真工具箱内来对模型的准确性进行验证,并且可以通过内置的函数进行简单的轨迹规划和可视化观察,本节涉及到的工具箱是MATLAB自带的Robotics Toolbox工具箱。

一、空间位姿描述

1. 二维空间


平移与旋转函数:
  • SE2(x,y,theta):(x,y)的平移 + theta的旋转
T1 = SE2(1,3,30,"deg");
  • transl2(x,y):纯(x,y)的平移
T2=trans12(3, 4);

绘制坐标变换:

  • trplot2(T):绘制坐标系变换T
trplot2(T1,"frame","1","color","b");
trplot2(T2,"frame","2","color","r");

效果展示:

在这里插入图片描述

T1 = SE2(1,3,30,"deg");
trplot2(T1,"frame","1","color","b");
T2=transl2(3, 4);
hold on;
trplot2(T2,"frame","2","color","r");
axis([0 5 2 6]);

2. 三维空间


平移与旋转函数:
  • transl(x,y,z):(x,y,z)的平移
R1 = transl(0.5,0.0,0.0);
  • trotx(theta) / troty(theta) / trotz(theta):绕x / y / z轴theta的旋转
R2 = trotx(pi/2)*troty(pi/2)*trotz(-pi/2);
  • rotx(theta) / roty(theta) / rotz(theta):绕x / y / z轴theta得到的旋转矩阵
R3 = rotx(30,"deg")*roty(30,"deg")*rotz(30,"deg");

注意:trotx和rotx默认都为弧度,trotx可直接与平移函数相乘,而rotx不可


绘制坐标变换:

  • trplot ( R ):绘制坐标系变换R
trplot(R1,"frame","A", "color", "b");
trplot(R2,"frame","B", "color", "r"); 
  • tranimate ( R ):绘制旋转动画R
tranimate(R1,"frame","A", "color", "b");
tranimate(R2,"frame","B", "color", "r");

效果展示:

在这里插入图片描述

ta = transl(0.5,2.0,1.0)*troty(pi/2)*trotz(-pi/2);
trplot(ta,"frame","A","color","r");
tranimate(ta,"frame","A", "color", "r");
hold on
tb = roty(-pi/2)*rotz(pi/2);
trplot(tb,"frame","B","color","b");
tranimate(tb,"frame","B", "color", "b");

3. 旋转的不同表示方法

1)欧拉角


原理介绍:

在这里插入图片描述


函数解释:

  • R=rotz(α)*roty(β)*rotz(γ):构造旋转矩阵
R1 = rotz(0.1)*roty(0.2)*rotz(0.3);
  • eul=tr2eul( R ):旋转矩阵转换为欧拉角
eul = tr2eul(R);
  • R=eul2r(eul):欧拉角转换为旋转矩阵
R = eul2r(0.1,0.2,0.3);

效果展示:

在这里插入图片描述

R1 = rotz(0.1)*roty(0.2)*rotz(0.3)
eul = tr2eul(R1)
R2 = eul2r(0.1,0.2,0.3)

2)RPY角


原理介绍:

在这里插入图片描述


函数解释:

  • R=rotz(α)*roty(β)*rotx(γ):构造旋转矩阵
R1 = rotz(0.3)*roty(0.2)*rotx(0.1);
  • rpy=tr2rpy( R ):旋转矩阵转换为RPY角
eul = tr2rpy(R);
  • R=rpy2r(α,β,γ,options):RPY角转换为旋转矩阵
R = rpy2r(0.3,0.2,0.1);

效果展示:

在这里插入图片描述

R1 = rotz(0.3)*roty(0.2)*rotx(0.1)
eul = tr2rpy(R1)
R2 = rpy2r(0.3,0.2,0.1)

3)双向量表示


原理介绍:

在这里插入图片描述


函数解释:

  • R=oa2r(o,a):双向量转换为旋转矩阵
a = [1 0 0]';
o = [0 1 0]';
R1 = oa2r(o,a); 

效果展示:

在这里插入图片描述

4)轴与旋转角


原理介绍:

在这里插入图片描述

函数解释:

  • [theta,vec] = tr2angvec( R ):旋转矩阵转换为旋转轴与角
[theta,vec]=tr2angvec( R1 );
  • R = angvec2r(theta,vec):旋转轴与角转换为旋转矩阵
R1 = angvec2r(theta,vec);

效果展示:

在这里插入图片描述

5)四元数表示


原理介绍:

在这里插入图片描述

函数解释:

在这里插入图片描述

效果展示:

在这里插入图片描述

s=0.95;
v=[0.034, 0.106, 0.143];
Q=UnitQuaternion(s,v); % 组成四元数
q=Q.inv(); % 求共轭
Q.display(); % 打印出四元数
Q.plot(); % 画出出四元数
Q.animate(); % 动画展示四元数
TT=Q.T; % 制作齐次变换矩阵
RR=Q.R; % 制作旋转矩阵
rpy=Q.torpy(); % 转换成rpy角
eul=Q.toeul(); % 转换成eul角

二、动力学

1. 动力学参数


知识介绍:

  • 动力学参数:各关节质量、质心位置、惯性张量、惯性矩阵等;
  • 获取方法:
  1. matlab中存在着自带的一些机器人参数,例如puma560等,可直接调用
  2. 手动创建机器人模型文件(参数可由Solidworks手动测量),保存为.m文件,实例如下:
% mdl_Dyn_5dof.m
% 单臂动力学结构参数
d=[        0,     0,        0,        0,       0];
a=[        0,    13,   233.24,   175.64,       0];%/1000
alpha=[    0,  pi/2,        0,        0,    pi/2];

%使用offset
L(1)=Link('d',d(1),'a',a(1),'alpha',alpha(1),'modified'); 
L(2)=Link('d',d(2),'a',a(2),'alpha',alpha(2),'offset',pi/2,'modified');
L(3)=Link('d',d(3),'a',a(3),'alpha',alpha(3),'modified');
L(4)=Link('d',d(4),'a',a(4),'alpha',alpha(4),'offset',pi/2,'modified');
L(5)=Link('d',d(5),'a',a(5),'alpha',alpha(5),'modified');

du=pi/180;
ra=180/pi;
%定义关节范围
L(1).qlim =[-170, 170]*du;
L(2).qlim =[60-70, 60+70]*du;%-10,130
L(3).qlim =[-70-70,-70+70]*du;%-140,0
L(4).qlim =[-70,70]*du;
L(5).qlim =[-170, 170]*du;
bot=SerialLink(L,'name','五自由度机械臂');
%bot.tool= transl(0, 0, tool)

% 动力学参数
data=[
    %     Ixx,    Iyy,      Izz,        Ixy,        Ixz,        Iyz,         xc,         yc,        zc,       m
       47.316,  51.601,   77.113,     -0.003,     -2.549,     -0.016,     -0.598,      0.016,   -23.413,   0.076;
       62.746, 651.130,  704.486,     29.632,     -0.001,     -0.003,    104.910,    -31.512,     0.001,   0.151;
        6.264, 224.674,  228.590,    -14.345,     -0.006,          0,     69.863,      8.061,     0.015,   0.065;
        1.502,   1.800,    2.241,      0.455,          0,          0,      4.498,    -12.503,         0,   0.008;
       13.735,  14.594,   15.321,          0,      0.004,          0,      0.046,          0,    43.571,   0.036
    ];

% data(:,1:6)=data(:,1:6)./1000000;
% data(:,7:9)=data(:,7:9)./1000;

% 惯性张量
data(:,[5 6])=data(:,[6 5]);%交换Ixz和Iyz
for i=1:5
   %I = [L_xx, L_yy, L_zz, L_xy, L_yz, L_xz]
   %放入是6个数字,但存储是矩阵形式的9个数字
   bot.links(i).I=data(i,1:6); 
end

%质心
for i=1:5
   bot.links(i).r=data(i,7:9); 
end

% 质量
for i=1:5
   bot.links(i).m=data(i,10); 
end

% 对于空中机械臂,重力与坐标系方向一致,所以为正
% 这与matlab自带的重力系统相反,所以matlab自带函数为负
% 重力单位是m·s-2,也是N/kg,考虑到第二种意义,这里不改变数量值
bot.gravity=[0;0;-9.81];

函数解释:dyn,查看动力学参数

  • 查看动力学参数:

在这里插入图片描述


代码示例:

mdl_puma560;
p560.dyn;%查看puma560机械臂所有连杆的动力学参数
p560.dyn(2);%查看puma560机械臂第二连杆的动力学参数
p560.links(2).dyn;%查看puma560机械臂第二连杆的动力学参数

2. 正动力学函数


函数解释:fdyn,根据力矩求解关节值

在这里插入图片描述
在这里插入图片描述


代码示例:

mdl_puma560;
torqfun = [1 2 3 4 5 6];
p560 = p560.nofriction();%为了加快求解速度,选择使用不考虑摩擦的动力学模型
[T,q,qd] = p560.fdyn(1,torqfun);

函数解释:accel,计算角加速度

  • qdd = R.accel(q,qd,torqfun):输入位置、速度、力矩求解角加速度

代码示例:

% torqfun = [0,30,6,0,0,0];%设定一组关节力
bot_nf=bot.nofriction();
[T,q,qd] = bot_nf.fdyn(1, torqfun)
for i=1:65,
	qdd = bot_nf.accel(q(i,:),qd(i,:),torqfun)
end

3. 逆运动学函数


函数解释:rne,根据关节值求解所需力矩


在这里插入图片描述

代码示例:

>> mdl_puma560;
>> A = p560.rne(qn,qz,qz)%当关节角为[0 0.7854 3.1416 0 0.7854 0],关节速度、关节加速度为零,重力加速度为9.81时所需的关节力矩

A =

   -0.0000   31.6399    6.0351    0.0000    0.0283         0

4. 动力学方程参数


知识介绍:

在这里插入图片描述

函数解释:gravload,求解重力载荷

>> mdl_puma560;
>> p560.gravload([1 2 3 4 5 6])%给定关节角度,求解出重力载荷

ans =

    0.0000   -7.9683    8.4581   -0.0197    0.0027         0

函数解释:inertia,求解关节空间惯性矩阵

>> mdl_puma560;
>> p560.inertia([1 2 3 4 5 6])%给定关节角度,求解出关节空间惯性矩阵

ans =

    2.6152   -0.6550   -0.0363    0.0001    0.0010    0.0000
   -0.6550    4.3038    0.2953   -0.0008   -0.0017    0.0000
   -0.0363    0.2953    0.9366   -0.0009   -0.0006    0.0000
    0.0001   -0.0008   -0.0009    0.1926    0.0000    0.0000
    0.0010   -0.0017   -0.0006    0.0000    0.1713    0.0000
    0.0000    0.0000    0.0000    0.0000    0.0000    0.1941

函数解释:coriolis,求解科氏力和向心力的耦合矩阵

>> mdl_puma560;
>> qd = [0.1 0.1 0.1 0.1 0.1 0.1];%给定关节速度
>> C = p560.coriolis(qn,qd)%给定关节角度、关节速度,计算科式力和向心力的耦合矩阵

C =

   -0.0267   -0.1291    0.0170   -0.0000   -0.0003    0.0000
    0.0627    0.0386    0.0771   -0.0002   -0.0000   -0.0000
   -0.0361   -0.0387   -0.0001   -0.0001   -0.0003   -0.0000
    0.0000    0.0001   -0.0000    0.0000    0.0000   -0.0000
   -0.0000    0.0001    0.0002   -0.0000   -0.0000   -0.0000
    0.0000    0.0000    0.0000    0.0000    0.0000         0

函数解释:payload,求解有效载荷

>> mdl_puma560;
>> p560.inertia([1 2 3 4 5 6])%没有施加有效载荷时的惯性矩阵

ans =

    2.6152   -0.6550   -0.0363    0.0001    0.0010    0.0000
   -0.6550    4.3038    0.2953   -0.0008   -0.0017    0.0000
   -0.0363    0.2953    0.9366   -0.0009   -0.0006    0.0000
    0.0001   -0.0008   -0.0009    0.1926    0.0000    0.0000
    0.0010   -0.0017   -0.0006    0.0000    0.1713    0.0000
    0.0000    0.0000    0.0000    0.0000    0.0000    0.1941

>> p560.payload(1,[0,0.1,0.2])%施加有效载荷
>> p560.inertia([1 2 3 4 5 6])%施加有效载荷后的惯性矩阵

ans =

    2.8033   -0.8506   -0.0951    0.0079    0.0778    0.0368
   -0.8506    4.6513    0.4828   -0.0858   -0.1011   -0.0584
   -0.0951    0.4828    1.1338   -0.0988   -0.0169   -0.0214
    0.0079   -0.0858   -0.0988    0.2416    0.0029    0.0082
    0.0778   -0.1011   -0.0169    0.0029    0.2120    0.0192
    0.0368   -0.0584   -0.0214    0.0082    0.0192    0.2041

总结

  • 声明:本文借鉴了部分博客内容,原文地址奉上:机器人仿真、机械臂动力学、动力学函数解析

在这里插入图片描述

本文旨在续接上文,对Matlab的Robotics Toolbox工具箱中有关空间位姿描述,各种旋转矩阵表示方法、动力学相关函数进行整理分析,方便未来查询及寻找解释,后续将会推出一些实际机器人的模型计算,敬请期待

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

基于Matlab的Robotics Toolbox工具箱的机器人仿真函数介绍(空间位姿表示与动力学) 的相关文章

  • aufs 存储机制

    aufs存储机制已经发展到超出了改进squid磁盘I O响应时间的最初尝试 34 a 34 代表着异步I O 默认的ufs和aufs之间的唯一区别 xff0c 在于I O是否被squid主进程执行 数据格式都是一样的 xff0c 所以你能在
  • align-items 与 align-content 的区别

    最明显的区别是align content 适用于多行 xff0c align item 则是适用于单行 align content xff08 单行无效 xff09 可以设置上对齐 下对齐 居中 拉伸 平分剩余空间 xff1b align
  • Apache Traffic Server 简介

    http blog sina com cn s blog 502c8cc40100mw7n html 作者 xff1a 王柯龙 一 介绍 Apache Traffic Server xff08 ATS 或 TS xff09 是一个高 性能
  • 反向代理原理

    局域网主机联入互联网的一种方式 xff0c 使用代理上网可以节约紧缺的IP地址资源 xff0c 而且可以阻断外部主机对内部主机的访问 xff0c 使内部网主机免受外部网主机的攻击 但是 xff0c 如果想让互联网上的主机访问内部网的主机资源
  • SQLite 揭秘

    http msdn microsoft com zh cn magazine ff898405 aspx 孜孜不倦的程序员 SQLite 揭秘 Ted Neward 下载示例代码 为了与本刊主题保持一致 xff0c 现在应该回过头来介绍一下
  • Actor的原理

    http www cnblogs com netfocus p 3365166 html 先从著名的c10k问题谈起 有一个叫Dan Kegel的人在网上 xff08 http www kegel com c10k html xff09 提
  • 【车载开发系列】CAN总线帧种类介绍篇

    车载开发系列 CAN总线帧种类介绍篇 CAN总线帧种类介绍篇 车载开发系列 CAN总线帧种类介绍篇一 CAN总线当中帧的种类二 五种类型帧用途说明三 数据帧的组成1 xff09 帧起始2 xff09 仲裁段3 xff09 控制段4 xff0
  • VS2013 C++ Rest SDK 环境配置方法

    简介 C 43 43 REST SDK 是 Microsoft 的一个开源跨平台项目 xff08 使用 MIT 开源协议 xff09 其使用大量现代异步 C 43 43 API 实现了一个基于 HTTP HTTPS 协议的 服务端 客户端
  • 【日常】FIFA历年四强

    世界杯 xff0c 全称 xff1a 国际足联世界杯 xff08 FIFA World Cup xff09 世界杯每四年举办一次 xff0c 任何国际足联会员国 xff08 地区 xff09 都可以派出代表队报名参加这项赛事 从1930年第
  • 【日常】圣诞节、颜色⛄

    2022年圣诞节到来啦 xff0c 很高兴这次我们又能一起度过 关于圣诞节 x1f384 xff0c 大家想到什么颜色 xff1f x1f98c x1f381 x1f385 x1f525 demo online https codepen
  • 【笔记】openwrt - full cone NAT(全锥NAT)、解决“arp_cache: neighbor table overflow!”

    最近安装了比特彗星 xff08 bitcomet xff09 后 xff0c 老是收到警告说日志的接收超过每秒上限了 一看日志 xff0c 好家伙 xff0c 一堆的kern info kernel 194004 157620 neighb
  • 【记录】ChatGPT使用记录

    文章目录 2023年02月08日数学哲学Java其他 2023年02月09日ChatGPT网络 2023年02月10日算法组网 2023年02月11日ChatGPT xff08 优化目标 xff09 DOS 2023年02月15日影评 xf
  • 简历模板百度网盘自取

    链接 https pan baidu com s 1ptO hJs69ZA8kwdjRUwc7A 提取码 sibc 复制这段内容后打开百度网盘手机App xff0c 操作更方便哦 来自HHppGo的分享
  • 【工具】笔记软件测评(简单)

    介绍 笔记软件测评 印象笔记 开源 markdown xff08 不好用 xff09 本地存储 臭名昭著 xff0c 被资本搞烂的理想 notion 开源 本地存储 数据导出 xff1a PDF HTML Markdown amp CSV
  • 【工具】logseq 使用分享

    Github https github com logseq logseq 我用 logseq 记录的学习笔记 xff1a 战争历史 https lawsssscat github io logseq worldwar 三月八日国际劳动妇女
  • 谈一谈搜索引擎是如何跟踪你、出卖你的

    文章目录 跟踪结果点击跟踪关键词跟踪 other 跟踪 结果点击跟踪 以b网为例 xff0c 当我们搜索关键词 haha 后 xff0c 搜索结果链接是这样子的 xff1a https www baidu com link url 61 X
  • 整理alacritty使用笔记

    github xff1a https github com alacritty alacritty features xff1a https github com alacritty alacritty blob master docs f
  • 整理windows terminal使用笔记

    github xff1a https github com microsoft terminal 之前这篇文章写了windows中powershell的美化 xff0c 过程中安装了windows terminal 这里记录windows
  • 区分/区别:su、su -、sudo、sudo su -

    su和su 的区别 su 不设置环境变量su 设置环境变量 su 和sudo su 的区别 su 输入root用户密码sudo su 输入当前用户密码 xff08 前提 xff1a 当前用户在 etc sudors或 etc sudors
  • 整理ps使用笔记

    尽管使用ps只需要记住常用命令 xff1a ps aux ps ef 并且理解输出的列含义即可 但不理解命令的含义 xff0c 用起来总有种空虚感 下面研究一下 文章目录 介绍BSD默认simpleaxT r listoutput 总结 介

随机推荐

  • SSO、CAS、OAuth、OIDC

    参考 简单了解概念 xff1a https www bilibili com video BV1XG411w7DN 简单了解操作 xff1a https www bilibili com video BV1334y11739 openid
  • 整理现有的wiki私服项目

    五一技术创作马拉松 https bbs csdn net topics 614845804 https www csdn net qc 文章目录 核心功能现有项目wikijsBookStackmediawikiTiddlyWikigollu
  • 蓝桥杯电子类嵌入式(STM32G431)备赛学习记录(二)——LCD

    02 LCD屏 蓝桥杯正式比赛时会给参赛选手一个数据包 xff0c 里面会有LCD屏相关配置文件和库函数 xff0c 所以这里的例程相当于只是一个代码移植 具体LCD屏的学习可以参考火哥的视频 我们打开之前的工程文件以及 ioc文件 xff
  • Vscode如何设置代码保存后自动格式化

    方法一 xff1a 1 打开vscode xff0c 点击设置 2 搜索框输入格式化 xff0c 如图勾选这三个选项 方法二 xff1a 1 打开设置 xff0c 搜索框不要输入东西 xff0c 点击如图标识 2 点击后 xff0c 会打开
  • 解决桌面右键文件夹卡死的问题

    新买的电脑莫名其妙的右键文件夹就会卡死 xff0c 弄了好几天 xff0c 终于弄好了 xff0c 记录一下 原因大概率是因为右键选项中的一些第三方软件功能异常造成的 xff08 极大概率是百度云或者QQ导致 xff09 xff0c 使用S
  • wsl2与vscode的安装

    网页搜索wsl xff0c 可以看到微软的wsl官方文档 1 安装 开始菜单搜索功能 xff0c 找到启用或关闭Windows功能 勾选适用于linux的windows子系统 xff0c 和虚拟机平台 确定 xff0c 重启 打开微软商店
  • wsl2常用工具的安装及gitlab上搭建仓库

    1 安装wsl2 安装vscode 2 安装相应工具 apt install cmake apt install make apt install g 43 43 3 编写一个函数hello c 想要编译需要创建一个CMakeLists t
  • wsl2里java离线安装方法

    链接 xff1a https pan baidu com s 1azeWBSkaFbPXyfZX 5lAjA 提取码 xff1a 0312 1 把离线安装包放在任意路径下 例如 xff1a usr java下 2 解压tar xzvf op
  • 数据库SQL--数据表与索引(二)

    一 数据表 xff08 xff09 数据表是数据库中最基本的用于存储数据的对象 xff0c 可以认为数据表是以行和列组成的二维表格 xff0c 通常把行称为记录 xff0c 列称为字段 SQL中的常用数据类型 字符型数据 xff1a 大小写
  • Gstreamer学习(一)——安装Gstreamer

    Gstreamer学习 Gstreamer官方网站为https gstreamer freedesktop org 1 安装Gstreamer 官方文档 xff1a https gstreamer freedesktop org docum
  • Gstreamer学习(二)——播放一个视频

    1 参考范例 官方文档 include lt gst gst h gt int main int argc char argv GstElement pipeline GstBus bus GstMessage msg Initialize
  • 菜鸟笔记之计算机网络(3)

    万维网 了解万维网概念相关概念 声明 xff1a 以下是看的视频并结合网上资料所记的笔记 xff0c 侵权请联系删除 可能会有一些错误 xff0c 发现了会修改 了解万维网 概念 万维网 xff08 World Wide Web xff0c
  • STM32串口中断接收实验

    STM32串口中断接收实验的详细说明 准备代码实现总结 准备 材料 xff1a STM32F407ZGT6最小系统板 xff0c 串口1通过跳线帽连接到了CH340上 需求 xff1a 从电脑向板子的串口1发送一个字符串 xff08 以回车
  • 使用C++将网络字节流转为数字(大端与小端区别)

    首先需要了解下大端和小端存储的区别 xff1a 大端方式 xff1a 用存储器的低字节地址单元来存放数据的最高字节 小端存放 xff1a 用存储器的低字节地址单元来存放数据的最低字节 如下图所示 xff1a 网络上都是以字节流的方式传输数据
  • 响应式移动Web测试题

    第一题 下列选项中对bootstrap中的能让元素只在小屏设备隐藏的类是 B A xff1a hidden xs B xff1a hidden sm C xff1a hidden md D xff1a hidden lg 解析 xff1a
  • ROS path [0]=/opt/ros/melodic/share/ros这种错误所有的可能性

    1 没有在ros workspace目录下source devel setup bash 2 roslauch启动节点时 xff0c launch文件包名打错了也会出现这个错误提示 ERROR cannot launch node of t
  • 【curl】 Linux上用curl 查看请求头和响应头

    curl xff0c 全称CommandLine URL 或 CommandLine Uniform Resource Locator xff0c 顾名思义 xff0c curl命令是在命令行方式下工作 xff0c 利用URL的语法进行数据
  • 【开启新阶段】进入本科末段学习的计划

    简单总结 xff1a 经过本科四年的学习 xff0c 博主只能说取得了一个差强人意的结果 xff0c 但生活总是这样 xff0c 难以尽善尽美 在进入大四下半阶段后 xff0c 准备开始新的学习阶段 xff0c 不再像之前一样有着需要自己不
  • 基于Matlab的Robotics Toolbox工具箱的机器人仿真函数介绍(运动学)

    前言 随着我们了解到机器人如何建立运动学模型和动力学模型之后 xff0c 我们可以使用Matlab中的仿真工具箱内来对模型的准确性进行验证 xff0c 并且可以通过内置的函数进行简单的轨迹规划和可视化观察 xff0c 本节涉及到的工具箱是M
  • 基于Matlab的Robotics Toolbox工具箱的机器人仿真函数介绍(空间位姿表示与动力学)

    文章目录 前言一 空间位姿描述1 二维空间2 三维空间3 旋转的不同表示方法1 xff09 欧拉角2 xff09 RPY角3 xff09 双向量表示4 xff09 轴与旋转角5 xff09 四元数表示 二 动力学1 动力学参数2 正动力学函