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

Trouble setting up computer with ROS Kinetic, Gazebo 9, and latest gazebo_ros_pkgs

asked 2018-04-24 15:47:41 -0500

raequin gravatar image

updated 2018-04-24 19:03:58 -0500

Setting up a computer to use ROS kinetic, Gazebo 9, and the latest version of gazebo_ros_pkgs (from source) is giving errors. They are basically controller type 'fu/bar' not exist.

[ INFO] [1524592104.175529525, 0.137000000]: Loading gazebo_ros_control plugin
[ INFO] [1524592104.175757532, 0.137000000]: Starting gazebo_ros_control plugin in namespace: /
[ INFO] [1524592104.176666268, 0.137000000]: gazebo_ros_control plugin is waiting for model URDF in parameter [robot_description] on the ROS param server.
[ INFO] [1524592104.309520405, 0.137000000]: Loaded gazebo_ros_control.
[ INFO] [1524592104.331149974, 0.159000000]: waitForService: Service [/gazebo/set_physics_properties] is now available.
Loaded joint_state_controller
[ERROR] [1524592104.335562797, 0.163000000]: Could not load controller 'arm_controller' because controller type 'position_controllers/JointTrajectoryController' does not exist.
[ERROR] [1524592104.335600886, 0.163000000]: Use 'rosservice call controller_manager/list_controller_types' to get the available types
Error when loading arm_controller
[ERROR] [1524592104.339144617, 0.167000000]: Could not load controller 'gripper_fake_controller' because controller type 'effort_controllers/JointPositionController' does not exist.
[ERROR] [1524592104.339186543, 0.167000000]: Use 'rosservice call controller_manager/list_controller_types' to get the available types
Error when loading gripper_fake_controller
[ERROR] [1524592104.343053113, 0.171000000]: Could not load controller 'mobile_base_fake_controller' because controller type 'effort_controllers/JointPositionController' does not exist.
[ERROR] [1524592104.343081991, 0.171000000]: Use 'rosservice call controller_manager/list_controller_types' to get the available types
Error when loading mobile_base_fake_controller
Started ['joint_state_controller'] successfully
[ERROR] [1524592104.349697714, 0.177000000]: Could not start controller with name arm_controller because no controller with this name exists
Error when starting  ['arm_controller']
[ERROR] [1524592104.352091520, 0.180000000]: Could not start controller with name gripper_fake_controller because no controller with this name exists
Error when starting  ['gripper_fake_controller']
[ERROR] [1524592104.354369094, 0.183000000]: Could not start controller with name mobile_base_fake_controller because no controller with this name exists
Error when starting  ['mobile_base_fake_controller']

Based on this answer, I set up the new computer as follows

Thanks for looking at this. Please let me know if you have any suggestions.

Edit: Running sudo apt install ros-kinetic-position-controllers and sudo apt install ros-kinetic-effort-controllers helped with most of the errors but I am still left with

[ERROR] [1524614845.792391368, 0.313000000]: Could not load controller 'arm_controller' because controller type 'position_controllers/JointTrajectoryController' does not exist.
[ERROR] [1524614845.792423207, 0.313000000]: Use 'rosservice call controller_manager/list_controller_types' to get the available types

The output of rosservice call controller_manager/list_controller_types is

types: [effort_controllers/JointEffortController, effort_controllers/JointGroupEffortController, effort_controllers/JointGroupPositionController, effort_controllers/JointPositionController, effort_controllers/JointVelocityController, joint_state_controller/JointStateController, position_controllers/JointGroupPositionController, position_controllers/JointPositionController]
base_classes: ['controller_interface::ControllerBase', 'controller_interface::ControllerBase', 'controller_interface::ControllerBase', 'controller_interface::ControllerBase', 'controller_interface::ControllerBase', 'controller_interface::ControllerBase', 'controller_interface::ControllerBase', 'controller_interface::ControllerBase']
edit retag flag offensive close merge delete

3 Answers

Sort by ยป oldest newest most voted
1

answered 2018-04-24 19:13:02 -0500

raequin gravatar image

updated 2018-04-25 13:15:38 -0500

The following package-installation commands took care of this problem.

sudo apt install ros-kinetic-position-controllers ros-kinetic-effort-controllers ros-kinetic-joint-trajectory-controller ros-kinetic-robot-state-publisher
edit flag offensive delete link more
1

answered 2019-12-27 03:59:09 -0500

Giuseppe Silano gravatar image

updated 2019-12-27 09:07:54 -0500

Starting from the edited question, I found a solution when installing Gazebo 9 with ROS Kinetic Kame. Here the link to the complete guide. I made it for my ROS package, but it is not so much difficult to adapt it for your own purposes.

Remove Gazebo 7 and all related packages, and then install Gazebo 9:

$ sudo apt-get remove ros-kinetic-gazebo* gazebo*
$ sudo sh -c 'echo "deb http://packages.osrfoundation.org/gazebo/ubuntu-stable `lsb_release -cs` main" > /etc/apt/sources.list.d/gazebo-stable.list'
$ wget http://packages.osrfoundation.org/gazebo.key -O - | sudo apt-key add -
$ sudo apt-get update
$ sudo apt-get install gazebo9 gazebo9-* ros-kinetic-gazebo9-*
$ sudo apt upgrade

Additional packages are required to build ROS packages:

$ sudo apt-get install libeigen3-dev ros-kinetic-image-view ros-kinetic-parrot-arsdk libprotobuf-dev libprotoc-dev ros-kinetic-joy-teleop ros-kinetic-nav-msgs ros-kinetic-mav-msgs libyaml-cpp-dev ros-kinetic-nodelet ros-kinetic-mav-planning-msgs ros-kinetic-urdf ros-kinetic-image-transport ros-kinetic-roslint ros-kinetic-angles ros-kinetic-cv-bridge ros-kinetic-tf2-geometry-msgs ros-kinetic-xacro ffmpeg libavcodec-dev libavformat-dev libavutil-dev libswscale-dev ros-kinetic-camera-info-manager ros-kinetic-cmake-modules ros-kinetic-gazebo-msgs ros-kinetic-mavros-msgs ros-kinetic-control-toolbox ros-kinetic-mav-msgs ros-kinetic-libmavconn ros-kinetic-mavros ros-kinetic-octomap-msgs ros-kinetic-geographic-msgs ros-kinetic-mavlink ros-kinetic-mavros-extras ros-kinetic-mav-planning-msgs ros-kinetic-joy

Make Gazebo 9 compatible with ROS Kinetic Kame

$ cd ~
$ mkdir -p ros-kinetic-gazebo9-pkgs
$ cd ros-kinetic-gazebo9-pkgs
$ git clone -b feature/ros-kinetic-gazebo9-pkgs https://github.com/gsilano/BebopS.git
$ chmod 777 gazebo9.sh
$ ./gazebo9.sh
edit flag offensive delete link more

Comments

1

+100 for posting here, but if when gsilano/BebopS gets deleted or changed, the guide you refer to may disappear. That would leave future readers with nothing.

It would be great if you could include the pertinent parts of your guide here in your answer, as that would make the answer stand-alone and infinitely increase the value of your answer.

gvdhoorn gravatar image gvdhoorn  ( 2019-12-27 04:02:44 -0500 )edit

I totally agree with you, but I created a script and collected binary files to handle the problem. If you know a repository that will remain always available, I will immediately push my code.

Giuseppe Silano gravatar image Giuseppe Silano  ( 2019-12-27 04:35:16 -0500 )edit

I would still recommend you post at least a summary here, because even without the files it will probably help future readers.

gvdhoorn gravatar image gvdhoorn  ( 2019-12-27 08:43:09 -0500 )edit

I edited my previous reply reporting part of my guide (the complete guide is reported on GitHub)

Giuseppe Silano gravatar image Giuseppe Silano  ( 2019-12-27 09:08:22 -0500 )edit

Thank you very much.

Please note that your script appears to be copying files to system-managed locations and this tends to be very brittle. If/when anything gets updated apt may refuse to do so and leave you with broken packages and other problems.

I'm also confused: isn't Gazebo 9 available for Ubuntu Xenial by adding the packages.osrfoundation.org repository and installing the binaries?

gvdhoorn gravatar image gvdhoorn  ( 2019-12-27 09:10:42 -0500 )edit

Gazebo 9 is available for Ubuntu Xenial (16.04) but when you follow the official guide it does not work with the RotorS package. The problem appears to be related to some Gazebo packages for ROS which should be compiled from source. Maybe my solution is not the cleanest, but it works. That's why I decided to share it.

Giuseppe Silano gravatar image Giuseppe Silano  ( 2019-12-27 09:20:06 -0500 )edit
1

answered 2018-05-21 07:01:47 -0500

R. Tellez gravatar image

As raequin indicates, your problem is about not having installed the required ros-kinetic controller packages. That problem is not related to Gazebo 9. The same error would appear in any other Gazebo version if those packages are not installed.

Related to the way of installing Gazebo 9 on Kinetic, here I wrote a step by step guide that can be useful.

edit flag offensive delete link more

Comments

Thanks for the guide!

raequin gravatar image raequin  ( 2018-05-21 12:54:54 -0500 )edit

Question Tools

2 followers

Stats

Asked: 2018-04-24 15:47:41 -0500

Seen: 3,531 times

Last updated: Dec 27 '19