MATLAB2020a+Robotics Toolbox v10.4,工具箱版本不同命令有差异。
本文持续更新。
参考:Robotics Toolbox官方文档

文章目录

  • 1. 位姿描述
    • 1.1 二维空间位姿
    • 1.2 三维空间位姿
  • 2. 运动学
    • 2.1 建立机器人模型
    • 2.2 运动学
    • 2.3 雅克比矩阵
  • 3. 机器人轨迹规划
    • 3.1 关节空间
    • 3.2 笛卡尔空间
  • 4. 动力学
    • 4.1 逆动力学
    • 4.2 动力学方程
    • 4.3 正向动力学

1. 位姿描述

1.1 二维空间位姿

T = SE2(x, y, theta);       % x、y为偏移量,theta为旋转角度
trplot2(T);                 % 画出T坐标系
T = transl2(x, y);             % 纯平移变换

1.2 三维空间位姿

rotx(alpha), roty(beta), rotz(theta);        % 绕xyz轴旋转的旋转矩阵(3x3)
trplot(T);                                  % 画出相应的旋转坐标系
tranimate(T);                               % 旋转动画
transl( [x, y, z] );                        % 平移变换(4x4)
trotx(theta), troty(theta), trotz(theta);   % 只有旋转的绕xyz轴旋转的齐次变换矩阵(4x4)

三维齐次变换矩阵还可以使用 T = SE3() 方法,在这里不多赘述。

2. 运动学

2.1 建立机器人模型

L(i) = Link( [theta, d, a, alpha, sigma] )          % 定义关节,DH参数:关节角、连杆偏距、连杆长度、连杆转角,sigma=1为移动副L(i).qlim = [ min, max ]                           % 关节角度限制Six_link = SerialLink( L, 'name', 'Sixlink' )      % 将Link连接成一个机械臂Six_link.plot( [theta_1, theta_2, ..., theta_n] )    % 画出机械臂,theta为关节初始角度Six_link.display                                 % 输出机械臂信息Six_link.teach                                     % 机械臂操控交互界面

Link的参数
运动学参数:

名称 意义
theta 关节角
d 连杆偏距
a 连杆长度
alpha 连杆转角
jointtype R-转动副,P-移动副
mdh 0-标准DH,1-改进DH
offset 关节变量的偏移量(转动副为角度,移动副为位移)
qlim 关节变量的限制

动力学参数:

名称 意义
m 连杆质量
r 连杆质心坐标 3x1
I 连杆惯性矩阵 3x3
B 粘性摩擦力(对于电机)1x1或2x1
Tc 库仑摩擦力1x1或2x1

电机参数:

名称 意义
G 齿轮传动比
Jm 电机惯性矩(对于电机)

2.2 运动学

Six_link.fkine( [theta_1, theta_2, ..., theta_n] );  % 正运动学
Six_link.ikine6s(T);                                % 逆运动学封闭解
Six_link.ikine(T);                                  % 逆运动学数值解

2.3 雅克比矩阵

% q是位姿
Six_link.jacob0(q)  % 对于基坐标系的雅克比矩阵
Six_link.jacobn(q)  % 对于末端坐标系的雅克比矩阵

3. 机器人轨迹规划

3.1 关节空间

[q, qd, qdd] = jtraj(q0, qf, m)     % q0——初始位姿,qf——结束位姿,m——步数,q——位姿,qd——速度,qdd——加速度

3.2 笛卡尔空间

Tc = ctraj(T0, T1, n)           % T0——初始齐次变换矩阵,T1——结束时齐次变换矩阵, n——步数

4. 动力学

% R是SerialLink类
R.dyn       % 输出动力学特性

4.1 逆动力学

R.rne(q, qd, qdd)                % 逆向动力学(角度、角速度、角加速度——>力、力矩)
R.rne(q, qd, qdd, grav, fext)   % grav——重力加速度,fext——机械臂末端受力W=[Fx Fy Fz Mx My Mz]

4.2 动力学方程

R.gravload(q)        % 计算重力载荷
R.inertia(q)        % 关节空间惯性矩阵
R.coriolis(q, qd)   % 科氏力和向心力的耦合矩阵
R.payload(M, P)     % 施加有效载荷:在P处施加质量M的载荷

4.3 正向动力学

[T2, q, qd] = R.fdyn(T1, torqfun)           % 正向动力学
% 输入:T1——积分时间,torqfun——力矩函数
% 输出:T2——时间,q——角度,qd——角速度

这里有点难理解,用一下官方文档的例子来说明

% 首先定义一个力矩函数(PD Controller)
function tau = mytorqfun(t, q, qd, qstar, P, D)tau = P*(qstar-q) + D*qd;
end
% 再使用正向动力学函数
[t,q] = robot.fdyn(10, @mytorqfun, qstar, P, D);

【Robotics Toolbox】MATLAB机器人工具箱使用教程相关推荐

  1. MATLAB 机器人工具箱简单教程:(下载及安装)

    蓝奏云网盘,链接应该不会失效 https://xbzy.lanzoui.com/iQCa5ouxrih 密码:0320 在Matlab 的安装目录下新近一个 robot的文件夹 2.下载好的压缩包放进 ...

  2. 强大的MATLAB机器人工具箱Matlab_Robotic_Toolbox_v9.8及教程

    强大的MATLAB机器人工具箱Matlab_Robotic_Toolbox_v9.8及教程 Matlab_Robotic_Toolbox_v9.8是一个功能强大的机器人工具箱,包含了机器人正.逆向运动 ...

  3. 工业机器人(9)-- Matlab机器人工具箱之创建单臂/双臂机器人SDH/MDH方法

    目录 1. Matlab机器人工具箱 2. 创建MDH单机械臂 3. 创建MDH双臂机器人 UR构型双臂 如何进行轨迹仿真 4. MDH-双臂机器人 1. Matlab机器人工具箱 官方网站Robot ...

  4. matlab工具箱使用手册,matlab机器人工具箱使用手册.pdf

    [实例简介] matlab机器人工具箱使用手册.pdf Preface This, the ninth major release of the Toolbox, repre * stal sents ...

  5. MATLAB机器人工具箱【1】——建模+正逆运动学+雅克比矩阵

    MATLAB机器人工具箱[1]-- 机械臂建模+正逆运动学+雅克比矩阵 1. 二维空间位姿描述 2. 三维空间位姿描述 3. 建立机器人模型 3.1 Link 类 3.2 SerialLink 类 3 ...

  6. MATLAB机器人工具箱【3】—— 动力学相关函数及用法

    MATLAB机器人工具箱[3]-- 动力学相关函数及用法 1. 查看机器人动力学参数 2. 逆动力学 3. 正动力学 4. 机器人动力学方程 5. 赋予机器人动力学参数 本文在参考B站up主刘海涛大佬 ...

  7. matlab机器人工具箱 欧拉角,Matlab机器人工具箱(一)

    开始学习<Robotics,Vision and Control>,今天是学习的第一篇章,因为项目需要, 需要在Matlab上做一个仿真实验,由于是串联机器人系统,不涉及到移动机器人系统, ...

  8. matlab机器人工具箱学习

    选了机器人的课,作业需要用matlab机器人工具箱robotic toolbox.作业要求是搭建一个机械臂,然后在工作空间某个平面内写一个字,涉及到机器人的轨迹规划,求逆解.步骤: 1. 搭建四轴sc ...

  9. Matlab机器人工具箱(0)——旋转与平移变换

    Matlab机器人工具箱(0)--旋转与平移变换 前言 旋转变换 旋转矩阵与可视化 欧拉角 RPY角 角轴 单位四元数 平移与旋转组合 总结 参考资料 前言 本文主要介绍如何使用matlab工具箱对旋 ...

最新文章

  1. C++流操纵算子(格式控制)
  2. 几句话总结21种设计模式。
  3. 前端学习 -- 内联框架iframe
  4. C语言高级编程:二维数组、指针的指针、数组指针、指针数组
  5. linux nginx 安装出错,Linux Nginx安装以及可能出现错误
  6. 喜讯 | 大势智慧获得全球软件领域最高权威CMMI5认证
  7. soui 设置边框_第三十四篇:在SOUI中使用异步通知
  8. Python下载Wyoming怀俄明大学探空数据(数据网址更新)
  9. Redis 过期策略+conf 记录
  10. 怎么看matlab程序运行到哪了,MATLAB运行程序时怎么查看还有多久完成
  11. SequoiaDB 网络通信三剑客(maxsocketpernode,maxsocketperthread,maxsocketthread)
  12. edge浏览器设置启动时默认打开新标签页
  13. Java注释的重要性
  14. 深度学习/机器学习入门基础数学知识整理(五):Jensen不等式简单理解,共轭函数
  15. 无源领域自适应:Source Hypothesis Transfer for Unsupervised Domain Adaptation
  16. 牛客网——华为题库(91~100)
  17. 基于SSM的电影票预订系统 JAVA MYSQL
  18. 关于AQS中的enq方法的理解
  19. 影视行业舆情监测方案
  20. 人脸识别系统——Dlib人脸检测

热门文章

  1. 服务器端分层架构(丛林战争项目)
  2. 妙用Adobe Audition 系列教程(一):信号发生器
  3. Unity 手机摇晃检测
  4. 驱动精灵2014网卡版 v8.0.515.1101 扩展版
  5. Netlogo 之 Extension
  6. 模拟声音实验室插件-Arturia Analog Lab v4.2.3.3897 WiN-MAC
  7. 华为云桌面Workspace,不得不爱的移动办公新体验
  8. NetBeans使用Consolas中文乱码的解决
  9. 内含福利|云栖攻略·解锁视频消费新方式
  10. Castor-解析xml的另外一种方法