添加轨迹运动_时间最优轨迹(资料)
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 PathFollowing 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(后有改進(jìn)版本TOPP-RA),鏈接中有源碼及論文地址。
IPTP算法另一種Improved IPTP by fitting a cubic spline
源碼地址:https://github.com/ros-planning/moveit/tree/master/moveit_core/trajectory_processing/src
目前沒有找到論文,有個算法描述:
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.
此類設(shè)置軌跡的時間戳以強(qiáng)制執(zhí)行速度,加速度約束。可以在軌跡中指定初始/最終速度和加速度。在模型中指定速度和加速度極限。
該算法反復(fù)擬合三次樣條,調(diào)整時間間隔,并重復(fù)執(zhí)行直到滿足所有約束。完成后,每個軌跡航路點(diǎn)都會設(shè)置時間以及每個關(guān)節(jié)的速度和加速度。樣條曲線,位置,速度和加速度將是連續(xù)的并且在范圍之內(nèi)。
為了使端點(diǎn)處的速度和加速度匹配,倒數(shù)第二個和第二個點(diǎn)的位置需要移動。默認(rèn)情況下,會添加兩個額外的點(diǎn)以使原始軌跡不受影響(這個地方就是三次樣條插值的第四種情況:指定初始、最終速度和加速度)。如果不添加點(diǎn),則軌跡可能會更快,但應(yīng)該再次檢查倒數(shù)第二和倒數(shù)第二點(diǎn)。
遷移注意事項(xiàng):如果要從迭代拋物線時間參數(shù)化進(jìn)行遷移,請注意,使用此技術(shù)會更嚴(yán)格地強(qiáng)制執(zhí)行速度和加速度限制,這意味著對具有相同速度和加速度限制的同一軌跡進(jìn)行時間參數(shù)化將導(dǎo)致更長的軌跡。這是一個問題,請嘗試調(diào)整(增加)限制。
質(zhì)量很高的相關(guān)博客:ROS進(jìn)階——運(yùn)動規(guī)劃分析
這個鏈接有三種算法實(shí)現(xiàn)效果的簡單對比。
總結(jié)
以上是生活随笔為你收集整理的添加轨迹运动_时间最优轨迹(资料)的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 前端参数无法转为后端实体内部类_Spri
- 下一篇: debian安vs_debian下使用v