本节将介绍使用笛卡尔空间进行轨迹规划,上一节使用关节空间对五自由度机械臂进行了轨迹规划。

笛卡尔空间轨迹规划用函数ctrajctrajctraj表示,函数ctrajctrajctraj的用法和jtrajjtrajjtraj很相似,函数ctrajctrajctraj的调用格式为“T10=transl(4,−0.5,0)∗troty(pi/6)T10=transl(4,-0.5,0)*troty(pi/6)T10=transl(4,−0.5,0)∗troty(pi/6);T11=transl(4,−0.5,−2)∗troty(pi/6);T11=transl(4,-0.5,-2)*troty(pi/6);T11=transl(4,−0.5,−2)∗troty(pi/6);Ts=ctraj(T10,T11,length(t))Ts=ctraj(T10,T11,length(t))Ts=ctraj(T10,T11,length(t))”,transltransltransl代表矩阵中的平移变量,trotytrotytroty代表矩阵中的旋转变量,T10T10T10和T11T11T11分别代表初始和末端的位姿。

首先根据运动学的正解算,计算出机器人末段工具的位置和位姿,然后根据初始位姿和末端位姿来对机器人的末端轨迹进行规划。下面是机器人末端的坐标变化:

T10 = transl(4, -0.5, 0) * troty(pi/6);
T11 = transl(4, -0.5, -2) * troty(pi/6);

笛卡尔空间轨迹规划程序:

% 笛卡尔空间轨迹规划
clc
clear
L(1) = Link([0 0 0 -pi/2 0]);
L(2) = Link([0 0 1.2 0 0]);
L(3) = Link([0 0 1 0 0]);
L(4) = Link([0 0 0 pi/2 0]);
L(5) = Link([0 0 0 0 0]);
h = SerialLink(L, 'name', 'fivelink');
M = [1 1 1 1 1 0];
qz = [0 0 0 0 0];
t = 0:0.01:2;
T = fkine(h,qz);
%T(1,4:)  %T(2,4:)  %T(3,4:)
T10 = transl(4, -0.5, 0) * troty(pi/6);
T11 = transl(4, -0.5, -2) * troty(pi/6);
Ts = ctraj(T10, T11, length(t));
figure(1);
plot(t, transl(Ts))
figure(2);
plot(t, tr2rpy(Ts))
u = Ts(1,4,:);v = Ts(2,4,:);w = Ts(3,4,:);
x = squeeze(u);y = squeeze(v);z = squeeze(w);
figure(3);
subplot(3,1,1);
plot(t,x)
xlabel('Time')
ylabel('x')
subplot(3,1,2);
plot(t,y)
xlabel('Time')
ylabel('y')
subplot(3,1,3);
plot(t,z)
xlabel('Time')
ylabel('z')

仿真结果:
首先是末端执行器从初始位姿到末端位姿坐标系的平移变化,其中aaa线代表的是坐标系中xxx轴的变化,bbb线代表的是坐标系中yyy轴的变化,ccc线代表的是坐标系中的zzz轴的变化。

其次是末端执行器从初始位姿到末端位姿坐标系旋转的变化,aaa线和bbb线分别代表yyy轴和zzz轴的旋转变化。

最后是机器人末端执行器从初始位姿到末端位姿的空间轨迹的规划图形投影到xOyxOyxOy坐标轴内的变化,图中显示了末端执行器在x、y、zx、y、zx、y、z坐标内时间的变化曲线。

机器人-笛卡尔空间轨迹规划相关推荐

  1. 笛卡尔空间轨迹规划(直线、圆弧)

    目录 毕设(5)-笛卡尔空间轨迹规划(直线.圆弧) 直线轨迹规划 圆弧轨迹规划 Matlab代码验证 毕设中用到了很多代码,其中一部分我通过看书和看论文学习并实现的代码,会通过Gitee仓库分享出来, ...

  2. (学习用1)调用用RRT算法进行笛卡尔空间轨迹规划和关节空间轨迹规划

    在MoveIt中,可以通过调用computeCartesianPath()函数来使用RRT算法进行笛卡尔空间轨迹规划,可以通过调用computeJointSpacePath()函数来使用RRT算法进行 ...

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

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

  4. 机器人轨迹规划:简单的笛卡尔空间/关节空间轨迹规划方案

    文章目录 知乎:[OpenRobotSL](https://www.zhihu.com/people/OpenRobotSL) 写在前面 1.关节空间同步运动 2.如何处理运动过程中的平滑性问题 3. ...

  5. 机器人在笛卡尔空间和关节空间的多项式轨迹规划以及matlab代码(三次、五次、七次)

    三次多项式轨迹规划: 三次多项式轨迹规划就是s(t)相对于时间t的变化满足三次多项式变化,其表达式如下: 如前文所述:t的取值范围是[0,T],s(t)的取值范围是[0,1], 又因为初始速度和末速度 ...

  6. 「 运动控制 」“关节空间与笛卡尔空间进行轨迹规划”研究

    1.什么是轨迹规划? 轨迹规划是指根据作业任务的要求,确定轨迹参数并实时计算和生成运动轨迹. 2.轨迹规划目的 它是机器人研究领域中的一个很重要的内容,是工业机器人控制的依据,所有控制的目的都是要围绕 ...

  7. 笛卡尔空间直线轨迹规划——S型曲线加减速插补算法(含MATLAB仿真验证代码)

    写这个算法,是因为博主正在做一个机械臂和全向小车的项目,里面涉及需要笛卡尔空间做直线轨迹的规划.通常的算法有梯型加减速,这个算法只是速度连续,加速度并不连续.所以实际冲击较大,无法实现柔性控制.况且网 ...

  8. 机器人-关节空间轨迹规划

    机器人工作时,已知机器人各关节的初始位置便可以根据机器人的正运动方程求解出机器人末端的末端位姿.知道到机器人末端执行器的初始位姿和末端位姿就可以规划出机器人从初始位姿到达期望位姿的轨迹. 本节将介绍关 ...

  9. 机器人关节空间轨迹规划--S型速度规划

    关节空间 VS 操作空间 关节空间与操作空间轨迹规划流程图如下(上标$i$和$f$分别代表起始位置initial和目标位置final): 在关节空间内进行轨迹规划有如下优点: 在线运算量更小,即无需进 ...

  10. 【机器人关节空间与笛卡尔空间示教】

    机器人关节空间与笛卡尔空间示教演示 在RobtSim机器人快速仿真软件中,对关节空间和笛卡尔空间进行示教演示.关节空间中机器人运动对末端无法有效控制,笛卡尔空间对末端可有效控制,但是对关节空间无法有效 ...

最新文章

  1. eruda/vconsole 手机端调试利器
  2. phpwindexp.php,phpwind Exp 漏洞利用
  3. c语言实现图像拼接程序,opencv2实现10张图像上下左右拼接融合分享!
  4. Struts 体系结构与工作原理 图
  5. window mysql 服务安装
  6. IDA动态调试Android的DEX文件
  7. 女程序员做了个梦,众网友的神回复
  8. 关于本地yum源的创建方法和使用
  9. 在线密码管理器LastPass遭入侵 官方建议修改主密码
  10. 小明种苹果(续)第十七次CCF认证
  11. plc用c语言编程的好处,学习PLC编程的重要性
  12. 华为oj题目c语言,【华为OJ平台习题】
  13. JAVA多线程面试题及答案
  14. Java、JSP房产中介房屋信息管理系统
  15. 多一个渠道,多一份收益!
  16. 计算机学报英语,修改稿要求-计算机学报.PDF
  17. 计算机 英语简历,计算机毕业生英语简历范文
  18. 在PB中计算指定日期相对数量单位前(后)的日期
  19. flex 做的小相册+向上滚动字体
  20. 「好书推荐」《边城》沈从文的乡土情怀代表作,汪曾祺、林徽因、曹文轩等真情推荐!

热门文章

  1. Java 接收OutLook 微软邮箱邮件
  2. HDU 1395 2^x mod n = 1 暴力取模
  3. python重命名异常_Python:如何忽略异常并继续?
  4. 美图大咖-电商图片处理软件
  5. 单位脉冲(冲激)响应与频率响应
  6. 北京大学创业训练营专家讲座:创新大师乔布斯的创业理念与营销哲学
  7. 北大计算机专业考研难不难,北京大学考研有多难 难考的原因是什么
  8. 路由在电话网和计算机网中的区别,计算机猫和路由器之间有什么区别
  9. 66个求职应聘技巧性问答(六)
  10. 客房管理系统java代码_java客房管理系统代码