下载链接:包括matlab程序+word报告+视频动画,具体如下图
下载链接:版本二
下载链接:版本三
下载链接:版本三
一、 目的
1、设计一个六自由度机器人,至少包含一个伸缩关节,要求机器人工作空间能满足分拣工位要求。
2、根据自己设计的机器人,建立DH坐标系,设定各关节变量的取值范围,并列出齐次变换矩阵并在matlab进行仿真。

二、内容
1、下载并安装MATLAB里的 Robotic机器人工具箱。
2、编写机器人位姿运动学方程,即给定关节变量,求解机器人末端相对于基坐标的齐次变换矩阵。并在此基础上,用工具箱里的命令fkine验证程序的正确性。
3、编写机器人速度运动学中求解雅克比矩阵的程序,并在此基础上,用工具箱里的命令jacob0验证程序的正确性。
4、使用机器人工具箱建立机器人连杆模型(如图3),并在此基础上,绘制机器人工作空间。

图3机器人连杆模型

5、利用机器人工具箱里的ikine命令求取机器人运动学逆解,基本要求是末端实现位置逆解。利用逆解完成简单的末端路径仿真,例如控制机械臂末端从传送带运动到篮筐的四个角落。
6、自行选定机器人末端抓取物品的起点和终点,以及机器人末端完成任务所需的时间。并在此基础上,利用机器人学轨迹规划的常用方法,对其做关节空间的轨迹规划。需要注意的是,避免在运动过程中使末端碰到障碍。取0.1s为时间步长,利用求解雅克比矩阵的程序,每一个时间步长,求一次雅克比矩阵行列式,并画出其与时间的关系。
三、程序
定义机器人:
%六连杆机器人模型

p=pi/2
%        theta d    a  alpha
L(1)=Link([0,  400, 0,    0],'modified')
L(2)=Link([0,  0,   0,  p],'modified')
L(3)=Link([0,  0,   300,  0],'modified')
L(4)=Link([0,  0,   300,    0],'modified')
L(5)=Link([0,  0,   0,    p],'modified')
L(6)=Link([0,  0,   0,    0],'modified')
L(1).qlim = pi/180*[-180 180];
L(2).qlim = pi/180*[0 180];
L(3).qlim = pi/180*[-90 90];
L(4).qlim = pi/180*[0 180];
L(5).qlim = pi/180*[-180 180];
L(6).qlim = [0 400];
L(6).jointtype='P'
six_link=SerialLink(L,'name','fivelink')

根据DH参数求解变换矩阵的函数trans:
%输入JD,即6个关节变量的值,求解正运动方程

function [ T ] = trans( theta, d, a, alpha )
T =[ cos(theta),           -sin(theta),          0,          a;sin(theta)*cos(alpha),cos(theta)*cos(alpha),-sin(alpha),-d*sin(alpha);sin(theta)*sin(alpha),cos(theta)*sin(alpha),cos(alpha), d*cos(alpha);0,                    0,                    0,          1            ];
end

正向运动学:
%JD为输入的1*6的数组,代表6个关节变量

function [ T06 ] = fkine(JD)
if nargin<2; end
T01 =trans( JD(1), 400,   0,   0 );
T12 =trans( JD(2), 0,     0,   pi/2 );
T23 =trans( JD(3), 0,     300, 0 );
T34 =trans( JD(4), 0,     300, 0 );
T45 =trans( JD(5), 0,     0,   pi/2 );
T56 =trans( 0,     JD(6), 0,   0 );
T06 =T01*T12*T23*T34*T45*T56;
end

求解雅可比:
略 。。。
工作空间:
略 。。。
轨迹规划:
略 。。。

关节空间的轨迹规划,求解雅克比行列式:
略 。。。
四、实验结果
1.机器人模型:
由5个转动关节一个移动关节组成,最后的关节为移动关节
DH参数:

机器人仿真模型:

2.求解齐次变换矩阵,使用工具箱里的命令fkine验证:
q为关节变量,fkine()为自行编写的函数,six_link.fkine()为工具箱函数,结果一致:

  1. 用工具箱里的命令jacob0验证编写的求解雅可比程序的正确性:
    q为关节变量,jacob0()为自行编写的函数,six_link.jacob0()为工具箱函数,两者求解结果一致:

4.工作空间:
蓝色点形成的区域就是工作空间:


5.逆解仿真
定义了四个点,逆解后完成路径规划,规划结果见动画

  1. 关节空间的轨迹规划,以及雅克比矩阵行列式与时间的关系
    关节空间的轨迹规划结果:

雅可比行列式与时间的关系:

下载链接:包括matlab程序+word报告+视频动画,具体如下图
下载链接:版本二
下载链接:版本三
下载链接:版本三

咨询链接:matlab正逆运动学分析与轨迹规划

【机器人学习】分拣机器人运动学分析及轨迹规划仿真相关推荐

  1. 【机器人学习】蛇形机械手(七自由度)D-H建模、正运动学分析与轨迹规划

    资料下载链接 https://download.csdn.net/download/yjw0911/85383686 clear; clc close all % theta d a alpha ql ...

  2. 【机器人学习】UR六自由度机器人运动学分析与轨迹规划(三次多项式、五次多项式、过渡)

    https://download.csdn.net/download/yjw0911/85451711下载链接 六轴机械臂本体由6个可重组的关节模组.连接部件.底座.末端部件组成,如下图所示,定义底部 ...

  3. 树莓派或者乐幻索尔XARM2.0 六自由机器人运动学分析与轨迹规划

    仿真模型建立 % Robotic Toolbox 9.10 clear clc L1=Link('d', 0, 'a', 0.011, 'alpha', pi/2,'offset',0); L2=Li ...

  4. 【机器人学习】 四足机器人(单腿三自由度)正运动学与轨迹规划仿真(solidwork三维模型+matlab代码)

    资料下载链接 solidworks三维模型 clear; clc close all % theta d a alpha qlim offset L(1) = Link( 'd', 0 , 'a' , ...

  5. 【机器人学习】Delta机器人三维模型+正逆运动学分析+matlab代码

    模型与代码下载地址 https://download.csdn.net/download/yjw0911/85003278 1.三维模型 正逆运动分析过程: Delta机器人三维模型+正逆运动学分析+ ...

  6. matlab 4轴机器人建模,SCARA机器人运动学分析及MATLAB建模仿真.pdf

    SCARA机器人运动学分析及MATLAB建模仿真.pdf 100 SCARA机器人运动学分析及 MATLAB建模仿真 SCARA机器人运动学分析及MATLAB建模仿真 KinematicAnalysi ...

  7. ROS 教程2 机器人雷达建图 蒙特卡洛定位 导航 路径规划 仿真

    ros 机器人雷达建图 蒙特卡洛定位 导航 路径规划 仿真 move_base gmapping acml 博文github 一.安装 turtlebot 移动机器人底座 进行导航 1.安装系统依赖 ...

  8. 基于MATLAB的关节型六轴机械臂轨迹规划仿真(2021实测完整代码)

    我是一个目录 基于MATLAB的关节型六轴机械臂轨迹规划仿真 1 实验目的 2 实验内容 2.1标准D-H参数法 2.2实验中使用的Matlab函数 3实验结果 4 全部代码 基于MATLAB的关节型 ...

  9. 机器人笛卡尔空间与关节空间轨迹规划算法

    本实例为如何生成和模拟插值关节轨迹,从一个初始运动到一个理想的末端执行器姿态. 轨迹的定时是基于手臂工具(EOAT)的一个近似的期望末端速度. 加载KINOVA Gen3刚体树(RBT)机器人模型 r ...

最新文章

  1. 【蓝桥杯】2019年第十届蓝桥杯省赛B组试题J — 灵能传输(前缀和,猜想结论)难度⭐⭐⭐⭐
  2. centos安装 php时 出现 make: *** [ext/dom/node.lo] Error
  3. HTML字符实体(Character Entities),转义字符串(Escape Sequence)
  4. CMD命令名详细大全
  5. 《如何阅读一本书》之 阅读的层次
  6. 【Matlab 控制】仿真多智体一致性分析,附代码
  7. 链表数据结构图解 和 代码实现
  8. Windows OS上安装运行Apache Kafka教程
  9. JAVA中fish什么意思,fish是什么意思_fish的翻译_音标_读音_用法_例句_爱词霸在线词典...
  10. 158.用 Read4 读取 N 个字符read characters from file multiple calls
  11. subclipse同步冲突问题A conflict in the working copy obstructs the current operation
  12. erlang 分布式数据库Mnesia 实现及应用
  13. android flag,Android 屏幕锁 - FLAG_KEEP_SCREEN_ON
  14. win10 字体 变得模糊 有锯齿
  15. 【PPT技巧】为PPT寻找好看的英文字体(English nice-looking font free)并安装到Windows
  16. 怎么把ide改成ahci_怎么IDE改成AHCI
  17. 银联在线java接口开发_银联在线Java接口开发
  18. 一文了解生物识别技术
  19. 真正中文攻略之 SAKURA~雪月華~ 花鳥風月プレミアムエディション 汉化、攻略...
  20. PS 运行错误代码: 16 的解决方法

热门文章

  1. Slashdot成立20周年的前史
  2. 数学家排行榜:高斯和黎曼谁才是近现代最伟大的数学家?
  3. DDI英跃学堂学习笔记-计划与组织
  4. Cisco 交换机/路由器 ssh 配置
  5. 第三方SnapChat客户端遭入侵,上万张、近13G私照泄露
  6. 苹果在十字路口接受镁·西格勒的采访
  7. 当事人:现在就是非常后悔,开工那天没去上班,老板不仅省了我的开工红包,连我人都省了
  8. 美团外卖前端容器化演进实践
  9. API 接口的安全性及鉴权方式
  10. 图像特效---漫画滤镜