TOTG算法——Time-Optimal Trajectory Generation

论文及源码地址:http://www.golems.org/projects/traj.html

As a side note, the algorithm described in “Time-Optimal Trajectory Generation for Path
Following with Bounded Acceleration and Velocity” by Tobias Kunz and Mike Stilman is available as C++ code at https://github.com/tobiaskunz/trajectories. It has no dependencies except Eigen and is thus very easy to integrate. I used it as alternative to IPTP and was very content with computation time and resulting trajectories.

IPTP算法——Iterative Parabolic Time Parameterization

算法原理:TOPP(后有改进版本TOPP-RA),链接中有源码及论文地址。

IPTP算法另一种Improved IPTP by fitting a cubic spline

源码地址:https://github.com/ros-planning/moveit/tree/master/moveit_core/trajectory_processing/src
目前没有找到论文,有个算法描述:

This class sets the timestamps of a trajectory to enforce velocity, acceleration constraints.Initial/final velocities and accelerations may be specified in the trajectory.Velocity and acceleration limits are specified in the model.
This algorithm repeatedly fits a cubic spline, adjusts the timing intervals,and repeats until all constraints are satisfied.When finished, each trajectory waypoint will have the time set,as well as the velocities and accelerations for each joint.Since we fit to a cubic spline, the position, velocity, and acceleration will be continuous and within bounds.The jerk will be discontinuous.
To match the velocity and acceleration at the endpoints,the second and second-last point locations need to move.By default, two extra points are added to leave the original trajectory unaffected.If points are not added, the trajectory could potentially be faster,but the 2nd and 2nd-last points should be re-checked for collisions.
Migration notes: If migrating from Iterative Parabolic Time Parameterization,be aware that the velocity and acceleration limits are more strictly enforcedusing this technique.This means that time-parameterizing the same trajectory with the samevelocity and acceleration limits, will result in a longer trajectory.If this is a problem, try retuning (increasing) the limits.

此类设置轨迹的时间戳以强制执行速度,加速度约束。可以在轨迹中指定初始/最终速度和加速度。在模型中指定速度和加速度极限。

该算法反复拟合三次样条,调整时间间隔,并重复执行直到满足所有约束。完成后,每个轨迹航路点都会设置时间以及每个关节的速度和加速度。样条曲线,位置,速度和加速度将是连续的并且在范围之内。

为了使端点处的速度和加速度匹配,倒数第二个和第二个点的位置需要移动。默认情况下,会添加两个额外的点以使原始轨迹不受影响(这个地方就是三次样条插值的第四种情况:指定初始、最终速度和加速度)。如果不添加点,则轨迹可能会更快,但应该再次检查倒数第二和倒数第二点。

迁移注意事项:如果要从迭代抛物线时间参数化进行迁移,请注意,使用此技术会更严格地强制执行速度和加速度限制,这意味着对具有相同速度和加速度限制的同一轨迹进行时间参数化将导致更长的轨迹。这是一个问题,请尝试调整(增加)限制。

质量很高的相关博客:ROS进阶——运动规划分析
这个链接有三种算法实现效果的简单对比。

添加轨迹运动_时间最优轨迹(资料)相关推荐

  1. 时间最优轨迹规划(3-5-3次多项式)

    轨迹规划是指机械臂在给定起始点和终止点之间运动,其中要保持时间和能量的双重最优,就需要对路径之间的插值点进行规划,目前比较常见的就是三次多项式.五次多项式以及B样条插值等进行轨迹规划.轨迹优化是指对路 ...

  2. ae制作小球轨迹运动_在AE里如何让物体沿着路径运动?

    如何让物体精确的沿着路径轨迹运动, 手动K帧也能创造出曲线运动,但控制比较麻烦,而且不精确, 用钢笔绘制运动路径可以精确的让物体沿着路径运动,控制简单. 一.创建物体 1.新建一个AE合成,选择HDT ...

  3. opengl 粒子按轨迹运动_袁讲经典4:一个粒子在电场中的运动轨迹相关问题

    袁讲经典4:一个粒子在电场中的运动轨迹相关问题 如上图,带电粒子在电场中(电场线如图)从A运动到B,则: 1.判断A和B处的受力大小和加速度大小 电场力大小 电场线密的地方电场强度大 A处的电场强度小 ...

  4. java实现抛物线轨迹计算_控件抛物线轨迹的实现

    写这篇文章的初衷也是加强对插值器和估值器的记忆. 其实对于插值器和估值器来说,除了系统提供的以外,我们可以自定义.实现方式也很简单.因为插值器和估值器都只是一个接口.并且内部只有一个方法.我们只要实现 ...

  5. ae制作小球轨迹运动_关于3D建筑漫游动画制作流程及技术详解

    虽然3D建筑漫游动画是以展示建筑效果为主的短片形式呈现,但是其制作流程与一部完整的3D动画影片的制作过程是差不多的,只不过由人物角色演变成了建筑物的规划展示.一部完整的3D建筑漫游动画要经过前期策划. ...

  6. 时间最优轨迹规划matlab代码,工业机器人时间最优轨迹规划仿真研究

    摘 要:为了使工业机器人在某个轨迹下执行焊接任务的时间最短,采用改进的模拟退火算法作为优化方法,对工业机器人关节轨迹进行时间最优规划.仿真结果表明,与其它同约束条件下的轨迹规划算法相比,采用新型算法后 ...

  7. ae制作小球轨迹运动_视频剪辑教程:AE动画教程,如何创建一个运动的小球

    本篇教程是通过AE制作一个弹跳运动的小球,整个教程比较简单,但是会带给你惊喜,教程主要分2个部分完成,感兴趣的同学们一起来学习一下AE动画教程吧. 教程分为两个部分: 一,怎么用AE做出这样的一个球. ...

  8. ae制作小球轨迹运动_别走,年轻人!这是AE粘性小球制作方法汇总!

    你是否想制作一个生动的小球运动?让人联想到它的质量,形态,材质? 你是否想让简单的动画看起来非常有深度与内涵? 是否有想过制作粘性的小球呢?这篇文章会给你提供三个方法来制作,会让你扩展多的思路. 言归 ...

  9. ae制作小球轨迹运动_利用Ae制作出自由落地运动小球的详细步骤

    各位知道在Ae中如何制作出自由落地运动小球呢?不太会操作的用户可以去下文学习下利用Ae制作出自由落地运动小球的详细步骤. 我们先准备好小球图片素材,背景颜色为黑色.导入素材,新建合成.将素材拖拽的合成 ...

最新文章

  1. excel取整函数_数据分析小白学习之路(三)——Excel多练熟能生巧
  2. 网易云信三个课堂解决方案,让每个孩子都能享有公平而有质量的教育
  3. jquery mobile用代码弹出dialog
  4. ASP.NET把图片存入数据库和使用文件流读取显示(转)
  5. 火狐浏览器的hoxx附件还能用吗_Haspit
  6. 计算机原理实验交通灯自动控制系统设计,微机原理交通灯控制系统设计实验..doc...
  7. xlsx表格怎么筛选重复数据_excel表格怎么筛选重复数据
  8. 1, 定义一个基类BaseClass,从它派生出类DerivedClass。BaseClass里有成员函数fn1(),fn2(),DerivedClass也有成员函数fn1(),fn2()。在主函数中
  9. 解决局域网文件传输慢的问题
  10. P4167 [Violet]樱花
  11. 图解HTTP(笔记)
  12. 教师资格证上传照片时显示内部服务器错误怎么解决
  13. python爬虫某招聘数据进行可视化
  14. Python安装教程步骤3:Pycharm和Anaconda3安装及环境配置相关问题汇总
  15. CoppeliaSim学习笔记之差速小车的控制与传感器的驱动
  16. 毕业设计-基于微信小程序的在线考试系统
  17. 旺旺消息上传到服务器,旺旺在线却发送不了消息怎么办
  18. 超前进位加法器实验报告_超前进位加法器设计实验分析
  19. 教练机飞行原理与操控方法
  20. 10个定时器精选电路方案带你学习时钟脉冲的工作方式

热门文章

  1. 推理集 —— 思维的误区
  2. CMM (软件工程与集成产品开发)
  3. 关于如何提高SQL Server Compact的查询性能
  4. 如何对android菜单,Android菜单构造技巧
  5. java跳过_java跳过https证书直接请求工具类
  6. iview table 自定义列_案例 | iview中Table:拖拽适配列、自定义固定列、合并行
  7. rose顺序图转换为协作图_【S7200指令教程】顺序控制指令SCR SCRT SCRE
  8. python大乐透2019143_[新浪彩票]老梁大乐透第19143期:前区大号走强
  9. layui 给table里面的添加图标_layui中的table中toolbar自定义过程
  10. lambda也是python_Python lambda介绍