ROS Resources: Documentation | Support | Discussion Forum | Index | Service Status | ros @ Robotics Stack Exchange
Ask Your Question

How to run controller_manager

asked 2014-12-06 23:15:32 -0500

Sendoh gravatar image

Hi All,

I use a launch file to load a controller:

 <node name="controller_spawner" pkg="controller_manager" type="spawner" respawn="false" output="screen" args="controller/twist"/>

When I run the launch file, the system said waiting for service controller_manager/load_controller.

But when I type rosservice call controller_manager/load_controller it told me that service is not available.

Do I need to run controller_manager first before calling that service? If yes, how I run controller_manager?

Thanks in advanced.

edit retag flag offensive close merge delete

1 Answer

Sort by ยป oldest newest most voted

answered 2014-12-09 06:34:48 -0500

Adolfo Rodriguez T gravatar image

The spawner script is one of the command-line tools offered by the controller_manager ROS package (doc), and it does _not_ start a controller_manager instance.

The controller_manageris typically instantiated inside your robot hardware abstraction (hardware_interface::RobotHW specialization). If using gazebo_ros_control, this is already done by the existing plugins (Tutorial), but if using on a custom abstraction, you have to do the setup yourself.

edit flag offensive delete link more


lucasw gravatar image lucasw  ( 2014-12-09 14:00:46 -0500 )edit

Can you reproduce the results of this tutorial? If in indigo, you'll have to specify the <hardware_interface> element as a child of <joint>, not <actuator>, in your URDF transmissions.

Adolfo Rodriguez T gravatar image Adolfo Rodriguez T  ( 2014-12-10 01:42:24 -0500 )edit

Question Tools

1 follower


Asked: 2014-12-06 23:15:32 -0500

Seen: 3,321 times

Last updated: Dec 09 '14