Closed henningkayser closed 1 year ago
Do things actually work with MoveItCpp
? Like if we launch the MoveItCpp tutorial and similarly test with use_sim_time
as in these 2 issues, are the errors the same or not?
And if they aren't, the only difference I see in the tutorial vs. MoveItPy is the addition of allow_undeclared_parameters(true)
... which I don't know if it will do much?
EDIT: I tested the MoveItCpp tutorial and it still works with use_sim_time: True
and allow_undeclared_parameters
...
@sea-bass thanks for testing.. Yes, MoveGroup works and MoveItCpp should work as well since that's being used internally. The allow_undeclared_parameters(true)
flag is also used by MoveGroup here, so that shouldn't be the issue.
My current guess is that MoveItPy is missing some ROS args for the global context (whatever that really means...)
ok, looks like rclcpp is really not happy when not being told about use_sim_time:=true
. #2223 fixes moveit_py sim for me.
Description
When working around #2219 by merging
use_sim_time:=True
into the MoveIt config dictionary, I'm seeing mixed results:use_sim_time
is actually set toTrue
:tada:rclcpp::exceptions::InvalidParameterValueException
In particular it prints:
A quick search brought me to this issue comment, pointing out that
use_sim_time:=True
will enable qos_override callbacks on the/clock
topic. Question is, why does everything work with the C++ versions MoveGroup/MoveItCpp, and why do we run into this exception with moveit_py? I have briefly skimmed the node initialization and didn't find any obvious issues.For context, I've been working on a MoveIt+Gazebo setup and wanted to add a MoveItPy example. Here are instructions for running different launch files in a docker compose container. You'll find that all service targets besides python_gazebo work, python_gazebo fails for the described reason.
Your environment
Steps to reproduce
Try passing
use_sim_time:=True
like this.Expected behaviour
The launch file should work and allow using sim time with moveit_py.
Actual behaviour
The Exception is thrown, node dies.