Using Time Optimal Parameterization with Cartesian Paths
Hi All,
I will keep this as brief as possible.
Background: I have been playing around with Time Optimal Parameterization. I hacked a portion of the MoveIt code in "add_time_optimal_parameterization.cpp" to take in parameters from a launch file for resample_dt, path_tolerance, and min_angle_change so I could play around with "higher resolution" trajectories.
Question: I noticed, while plotting some of these trajectories in RQT that Cartesian paths do not get resampled (as far as I can tell). I'm wondering if Cartesian paths are treated differently somehow. I couldn't find anything explicitly refusing to work with Cartesian paths in the "time_optimal_trajectory_generation.cpp" file.
Here's a normal path with resample_dt set to 0.03
And here's a cartesian path with resample_dt set to 0.03
Just curious.
I'll also take this opportunity to re-apologize to gvdhoorn for indirectly being a jerk in a previous question. Please forgive me.
My robot and images of trajectories are on my github: https://github.com/drewhamiltonasdf/c...
Best, Drew Hamilton
P.S. Would it be a silly MoveIt! pull request to add this option to set these variables from the parameter server?
I believe this is all because the cartesian path generator does not support the general planning request adapter setup.
I found this answer here: https://github.com/ros-planning/movei...
The code is found here: moveit/moveit_ros/move_group/src/default_capabilities/cartesian_path_service_capability.cpp
As far as setting the variables resample_dt etc from the parameter server goes. I hacked something together by editing add_time_optimal_parameterization.cpp, add something like:
for all the three variables in question to the top of the initialize() method, and added default values that are overwritten if there is a matching parameter found. double path_tolerance = 0.1; double resample_dt = 0.1; double min_angle_change = 0.001;
I opened a moveit pull request for this added feature. Who knows if it will be accepted.
Seems like this is a duplicate of #q326511.
Nice of you to show the code you ended up using though.