机械臂Matlab仿真——路径规划之三阶多项式路径点规划以及五阶多项式路径点规划

2023-05-16

仿真平台:Matlab 2019b 实时编辑器(旧的版本好像没有这几个路径规划函数)
机械臂路径点跟踪有几个基本方法:三阶多项式拟合,五阶多项式拟合以及抛物线拟合(理论来自于《机器人学导论》作者:Jhon J.Craig,这里不再赘述)

原理都不难,编程难度应该也不大,但是刚好新版本的matlab更新了这几个函数(能拿来用为什么要自己写)因此本节简单介绍这两个路径规划函数的使用:

  1. 三阶路径规划:cubicpolytraj
  2. 五阶路径规划:quinticpolytraj

1.三阶多项式规划函数

%假设是个二维机器人,关节空间下,关节(q1,q2)从(01)运动到(02),再到(24)
wpts = [0 0 2;1 2 4];
%初始时间是0s,终点时间是2s
tpts = [0:2];
%仿真所用的时长为2s,仿真时间间隔为0.01s
tvec = 0:0.01:2;
%利用三阶多项式进行路径规划,得到的结果是规划出来的路径q,速度qd,加速度qdd,已经三阶多项式的全部系数pp
[q, qd, qdd, pp] = cubicpolytraj(wpts, tpts, tvec);
%看看规划出来的路径q1 与q2
plot(tvec, q)
hold all
%看三个waypoints,用小叉表示,不是字母x
plot(tpts, wpts, 'x')
xlabel('t')
ylabel('Positions')
legend('X-positions','Y-positions')
hold off
%看q的速度
plot(tvec, qd)
%q的加速度
plot(tvec, qdd)
%2D图看关节空间的整个变化情况
figure
plot(q(1,:),q(2,:),'-b',wpts(1,:),wpts(2,:),'or')
xlabel('X')
ylabel('Y')

仿真结果
q的变化以及各个路径点
在这里插入图片描述
q的速度
在这里插入图片描述
q的加速度
在这里插入图片描述
x y 二维图
在这里插入图片描述

2.五阶多项式路径规划函数

代码跟上面完全一样,只需要改一下路径规划语句对应的函数名

%假设是个二维机器人,关节空间下,关节(q1,q2)从(01)运动到(02),再到(24)
wpts = [0 0 2;1 2 4];
%初始时间是0s,终点时间是2s
tpts = [0:2];
%仿真所用的时长为2s,仿真时间间隔为0.01s
tvec = 0:0.01:2;
%利用三阶多项式进行路径规划,得到的结果是规划出来的路径q,速度qd,加速度qdd,已经三阶多项式的全部系数pp
[q, qd, qdd, pp] = quinticpolytraj(wpts, tpts, tvec);
%看看规划出来的路径q1 与q2
plot(tvec, q)
hold all
%看三个waypoints,用小叉表示,不是字母x
plot(tpts, wpts, 'x')
xlabel('t')
ylabel('Positions')
legend('X-positions','Y-positions')
hold off
%看q的速度
plot(tvec, qd)
%q的加速度
plot(tvec, qdd)
%2D图看关节空间的整个变化情况
figure
plot(q(1,:),q(2,:),'-b',wpts(1,:),wpts(2,:),'or')
xlabel('X')
ylabel('Y')


仿真结果
q1,q2的变化以及各个路径点
在这里插入图片描述
q的速度
在这里插入图片描述
q的加速度
在这里插入图片描述
q1,q2的二维图像
在这里插入图片描述

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

机械臂Matlab仿真——路径规划之三阶多项式路径点规划以及五阶多项式路径点规划 的相关文章

  • 视觉SLAM十四讲:第2讲 初识SLAM

    第2讲 xff1a 初识SLAM 2 1 引言 定位和建图是感知的 内外之分 xff1a 前者任务是明白自身的状态 xff08 即位置 xff09 xff1b 后者任务是了解外在的环境 xff08 即地图 xff09 传感器 xff1a 携
  • 使用Python实现Hadoop MapReduce程序

    转自 xff1a 使用Python实现Hadoop MapReduce程序 英文原文 xff1a Writing an Hadoop MapReduce Program in Python 根据上面两篇文章 xff0c 下面是我在自己的ub
  • nginx1.15与tomcat8.5整合,多https域名指向同一tomcat服务

    一 安装nginx 1 安装依赖包 安装依赖之前检查是否已经安装这些依赖包 1 rpm包安装的 xff0c 可以用 rpm qa 看到 xff0c 如果要查找某软件包是否安装 xff0c 用 rpm qa grep 34 软件或者包的名字
  • 平衡车之角度环分析及调试

    1 直立环pd xff1a d参数的引入是为了抑制震荡 p xff0c 比例参数 xff0c 它的作用是反应了控制的响应速度 xff0c 过小的话平衡车表现是pwm明显不够直立不起来 xff0c 过大的话小车过于震荡 xff0c 震荡的时候
  • 平衡车之速度环分析及调试

    平衡车为什么只有角度环不够 xff0c 还需要速度环 xff1a 因为当角度环有偏差的时候 xff0c 根据角度环的pid是可以给小车输出pwm波维持小车平衡的 xff0c 但是小车要以什么样的速度维持平衡角度环是做不到的 xff0c 加上
  • 平衡车之转向环分析及调试

    转向环 xff1a 一般的控制系统单纯的 P 控制或者 PI 控制就可以了 xff0c 转向环就是这种 一般的控制系统 xff0c 对响应要求不高 xff0c 所以我们只使用 P 控制即可 int turn int encoder left
  • 倒立摆 角度环和位置环 分析以及参数整定

    倒立摆为什么有了角度环还必须有位置环呢 xff1f 答案是 xff1a 和平衡小车类比可得 xff0c 当只有角度环的时候 xff0c 倒立摆是可以对摆锤偏向做出pwm的反应的 xff0c 但是具体要反应合适程度到哪里 xff0c 还是应该
  • 关于新版XP光盘不能自动播放

    光驱自动运行 xff0c 首先要求在光盘中必须有一个autorun inf文件 xff0c 系统检测到这个文件后 xff0c 将调用AutoPlay来运行该文件 在autorun inf中写入了需要运行的光盘应用程序的路径 其次在注册表子键
  • 一、进程的概念、组成和特征

    一 进程与程序的区别 程序 xff1a 程序是静态的 xff0c 就是个存放在磁盘里的可执行文件 xff0c 就是一系列的指令集合 进程 xff1a 进程是动态的 xff0c 是程序的一次执行过程 xff0c 同一个程序多次执行会对应多个进
  • Ubuntu保存终端内容到日志

    Ubuntu保存终端内容到日志 1 在终端中执行 sudo script screen span class token punctuation span log 内容将保存到当前目录的screen log文件中 2 执行以下命令停止保存
  • 平衡小车从原理到实践

    平衡小车从原理到实践 作者 xff1a 公众号 xff1a 小白学移动机器人 关于内容 xff1a 参考很多网上大佬的博客加上自己的理解而成 xff0c 适合平衡车初学者和想要了解原理的小伙伴 1 平衡小车控制原理 先记住一句话 xff0c
  • 我手写了个SLAM算法!

    1 前言 前一段时间看过我文章的都知道 xff0c 我打算写一个SLAM源码阅读的文章 xff0c 然后 xff0c 我就去读了Gmapping的源码 xff0c 感受良多 xff0c 不足的地方是源码太乱了 xff0c 阅读起来真的不香
  • 我手写了个SLAM算法(二)!

    1 前言 看过之前两篇文章的大朋友们应该都知道 xff0c 我们在这里分享了SLAM算法gmapping的大刀阔斧删减版的源码和2D激光雷达运动畸变去除的源码 没看过的朋友可以点击下方文章查看 我手写了个SLAM算法 xff01 详解2D激
  • linux logrotate 配置及测试

    一 logrotate 配置 logrotate 程序是一个日志文件管理工具 用来把旧的日志文件删除 xff0c 并创建新的日志文件 xff0c 我们把它叫做 转储 我们可以根据日志文件的大小 xff0c 也可以根据其天数来转储 xff0c
  • Ubuntu Gnome屏幕旋转设置

    开始安装或启用新账户时 xff0c 屏幕自动旋转 xff0c 笔记本上很不方便 可通过如下命令设置成正常状态 xrandr o normal 通过命令完全关闭旋转功能 gsettings set org gnome settings dae
  • ubuntu之tools

    文章目录 系统图形界面优化 xff1a tweakgenome TODOFrameshot截图软件Nomacs看图软件计算器比较工具 xff1a Meld比较工具 xff1a Diffuse3 2 gif录制工具peek 编辑器 xff1a
  • python之lmdb

    文章目录 lmdb介绍安装lmdb使用 lmdb介绍 参考 LMDB的全称是Lightning Memory Mapped Database 快如闪电的内存映射数据库 它的文件结构简单 xff0c 包含一个数据文件和一个锁文件LMDB文件可
  • ubutnu系统维护

    文章目录 1 参考知识点 2 分区3 内核系统版本号查看是uefi还是leagcy启动升级设置时区自动清理手动清理 xff08 推荐 xff09 4 软件修改主机名修改用户名修改用户秘密root密码添加新用户用户组 生成随机密码管理命令温控
  • python之pcl

    pcl是点云可视化软件 xff0c 安装 conda create n py36 python 61 3 6 conda activate py36 方法1 xff0c 推荐 conda install c sirokujira pytho
  • 从零开始学习verilog:1

    在线资料 Verilog 教程 verilog tutorial 推荐书籍 verilog数字系统技术和实例分析 环境搭建 vscode verilog HDL SystemVerilog verilog语言高亮 Verilog Testb

随机推荐