pilz_industrial_motion_planner#461
Conversation
felixvd
left a comment
There was a problem hiding this comment.
Lots of spelling and nitpicks, I'm not sure how best to contribute those. Very much looking forward to seeing this merged!
| .. code:: yaml | ||
|
|
||
| cartesian_limits: | ||
| max_trans_vel: 1 |
There was a problem hiding this comment.
We should consider spelling these out.
doc/trapezoidal_industrial_planner/trapezoidal_industrial_planner.rst
Outdated
Show resolved
Hide resolved
doc/trapezoidal_industrial_planner/trapezoidal_industrial_planner.rst
Outdated
Show resolved
Hide resolved
doc/trapezoidal_industrial_planner/trapezoidal_industrial_planner.rst
Outdated
Show resolved
Hide resolved
doc/trapezoidal_industrial_planner/trapezoidal_industrial_planner.rst
Outdated
Show resolved
Hide resolved
doc/trapezoidal_industrial_planner/trapezoidal_industrial_planner.rst
Outdated
Show resolved
Hide resolved
doc/trapezoidal_industrial_planner/trapezoidal_industrial_planner.rst
Outdated
Show resolved
Hide resolved
doc/trapezoidal_industrial_planner/trapezoidal_industrial_planner.rst
Outdated
Show resolved
Hide resolved
doc/trapezoidal_industrial_planner/trapezoidal_industrial_planner.rst
Outdated
Show resolved
Hide resolved
|
|
||
| For all commands the planner needs to know the limitations of each robot | ||
| joint. The limits used are calculated from the limits set in the urdf as | ||
| well as the limits set on the parameter server (usually put there by |
There was a problem hiding this comment.
I would note that the file is generated by the setup assistant and the average user does not need to worry about it.
There was a problem hiding this comment.
I've rephrased the paragraph; is it better now?
|
One more thought: This seems to have had multiple names, from "simple" command planner, the to "industrial motion", and now "trapezoidal". The changes all make sense, but I wonder if there has been a previous discussion on the name from the user perspective. Which name is easiest to remember for new users? Should these motions just be considered part of the "basic" MoveIt package, without an extra name? Should they maybe have their own |
|
Also I just noticed that we assume that the user knows what "standard robot motions" like PTP, LIN, CIRC are, but that's not a given. Industrial robot manuals always explain these in detail, and to my knowledge they are diligent about it, because the difference between joint space and cartesian space is not intuitive to new users. It would be very helpful if we had 3 animations side by side of the robot arm executing the three different movements, starting and ending at the same pose, like this. With those, a sentence like this could be enough: "PTP motions move linearly in joint space, LIN motions move linearly in cartesian space (the "real" 3D world), and CIRC motions perform an arc through a midpoint in cartesian space. For more explanation on how these motions work, look at this robotics tutorial." Maybe you know of a tutorial that we could link to? |
In the current implementation the user has to load the corresponding pipeline, so using OMPL and pilz_industrial_motion_planner without restart is left for future extension. |
|
I have no problem with the name, but can you explain what you mean by loading the corresponding pipeline? I might have overlooked something. Does that mean you can't use "free motion" planning with OMPL and this plugin at the same time? |
MoveIt can't load two planners into the same Related: moveit/moveit#1257. |
|
😱 |
|
😱 |
henningkayser
left a comment
There was a problem hiding this comment.
Great documentation, I think it explains the different modes really well. There are some minor nits that should be fixed before merging.
doc/trapezoidal_industrial_planner/trapezoidal_industrial_planner.rst
Outdated
Show resolved
Hide resolved
doc/trapezoidal_industrial_planner/trapezoidal_industrial_planner.rst
Outdated
Show resolved
Hide resolved
doc/trapezoidal_industrial_planner/trapezoidal_industrial_planner.rst
Outdated
Show resolved
Hide resolved
doc/trapezoidal_industrial_planner/trapezoidal_industrial_planner.rst
Outdated
Show resolved
Hide resolved
doc/trapezoidal_industrial_planner/trapezoidal_industrial_planner.rst
Outdated
Show resolved
Hide resolved
doc/trapezoidal_industrial_planner/trapezoidal_industrial_planner.rst
Outdated
Show resolved
Hide resolved
|
|
||
| - ``planner_id``: LIN | ||
| - ``group_name``: name of the planning group | ||
| - ``max_velocity_scaling_factor``: scaling factor of maximal Cartesian |
There was a problem hiding this comment.
Are these really used for Cartesian velocity instead for joint velocities? This might be slightly confusing since the factors apply to joint velocities following the documentation in the message definition.
There was a problem hiding this comment.
Good question. The implementation scales the cartesian velocity, so that e.g. 1m/s maximum speed is executed with 0.25m/s for a scaling_factor = 0.25. Isn't that what you'd expect as a user of the planner?
There was a problem hiding this comment.
I agree that it's probably what I would expect from the planner. It's just not how it's defined in the message, there it's documented as the factor for joint velocities. I'm fine with leaving it as is for now. My only concern is that this will technically allow to move joints at full speed which might be a surprise if you expect the usual behavior.
There was a problem hiding this comment.
Yes, but the name is the same as the scaling factor the move_group applies to each maximum joint velocity.
In cartesian space, I would agree if it was called max_cartesian_velocity_scaling_factor. But at that point, why not just make it max_cartesian_velocity? That's very desirable anyway, I remember it has come up in issues before.
Thanks to @henningkayser
so that the folder is consistent with its content
|
@henningkayser Could you please merge the tutorials as follow-up of moveit/moveit#1893 ? |
Tutorial for
trapezoidalpilz_industrial_motion_plannermoveit/moveit#1893