Open ptiza-v-nebe opened 5 years ago
@ptiza-v-nebe I stumbled upon this issue by accident, but let me answer it for future reference. The problems you're experiencing is that by default, the controller manager
script looks for controllers under the base namespace (i.e., /
). In your case, the robot controller_maneger is found under the /rrbot
namespace. It looks like the controller_manager
unfortunately doesn't throw a warning when this happens, but waits till controllers are found. When this happens you have to change the ROS_NAMESPACE
for the controller_manager
to find your controllers. This is done by setting the ROS_NAMESPACE environmental variable:
export ROS_NAMESPACE=/rrbot
@ptiza-v-nebe I stumbled upon this issue by accident, but let me answer it for future reference. The problems you're experiencing is that by default, the
controller manager
script looks for controllers under the base namespace (i.e.,/
). In your case, the robot controller_maneger is found under the/rrbot
namespace. It looks like thecontroller_manager
unfortunately doesn't throw a warning when this happens, but waits till controllers are found. When this happens you have to change theROS_NAMESPACE
for thecontroller_manager
to find your controllers. This is done by setting the ROS_NAMESPACE environmental variable:export ROS_NAMESPACE=/rrbot
Hi Rick. I was just wondering how should it be specified when you have more than one namespace, e.g., if you have two arms. Thank you!
First I just run:
roslaunch ros_control_boilerplate rrbot_simulation.launch
Now I'm trying to list all available controllers with:
rosrun controller_manager controller_manager list
It freezes, nothing happens, no error, no nothing until ctrl-c
The same operation with ros services do the job well:
rosservice call /rrbot/controller_manager/list_controllers
Return of service call:
Now in the search for solution I found that custom namespaces do maybe something wrong. If I go to rrbot_simulation.launch and change this:
Into this:
it works well.
If anyway need a custom namespace then use something like this:
This sounding all a little bit like tutorial but no, this is a question. Do I'm something wrong or is the behavior above, a bug or feature or what else??
Same issue and ros_control_boilerplate, with same commandline controller_manager freezing behaviour, are mentioned here: https://answers.ros.org/question/284099/controller-spawner-stuck-while-loading/
Thank you!