0
$\begingroup$

Rosanswers logo

Hello,

I recently found an updated GitHub repository for the Fetch simulation on Gazebo here https://github.com/fetchrobotics/fetch_gazebo

The release notes mention that this repository is now compatible with ROS Kinetic and more recent ROS versions as well. However, when I downloaded this package and tried to launch the Gazebo simulation (after placing it within my Catkin work space and rebuilding it with catkin_make), it terminates by showing me an error stating its unable to find the robot description.

Here's the entire sequence right from roslaunch

saai@ubuntu:~/catkin_ws$ roslaunch fetch_gazebo simulation.launch
... logging to /home/saai/.ros/log/5e6221a2-d746-11e8-a3d4-000c29ebafb8/roslaunch-ubuntu-3845.log
Checking log directory for disk usage. This may take awhile.
Press Ctrl-C to interrupt
Done checking log file disk usage. Usage is <1GB.
xacro: Traditional processing is deprecated. Switch to --inorder processing!
To check for compatibility of your document, use option --check-order.
For more infos, see http://wiki.ros.org/xacro#Processing_Order
resource not found: fetch_description
ROS path [0]=/opt/ros/kinetic/share/ros
ROS path [1]=/home/saai/catkin_ws/src
ROS path [2]=/opt/ros/kinetic/share None
when processing file: /home/saai/catkin_ws/src/fetch_gazebo/robots/fetch.gazebo.xacro
while processing /home/saai/catkin_ws/src/fetch_gazebo/launch/include/fetch.launch.xml:
Invalid <param> tag: Cannot load command parameter [robot_description]: command 
[/opt/ros/kinetic/share/xacro/xacro.py /home/saai/catkin_ws/src/fetch_gazebo/robots/fetch.gazebo.xacro] returned with code [2].

Param xml is <param command="$(find xacro)/xacro.py $(find fetch_gazebo)/robots/fetch.gazebo.xacro" name="robot_description"/>

The traceback for the exception was written to the log file

saai@ubuntu:~/catkin_ws$

I'm using ROS Kinetic on a virtual machine running Ubuntu 16.04 LTS with Gazebo 7, and I'm able to successfully run the Turtlebot simulation in Gazebo 7 with no issues. My issue is just with the Fetch package.

As I'm new to ROS I'm unable to understand what to do next. Would really appreciate some guidance in this regard.

Thanks in advance!


Originally posted by Saai Sundar on ROS Answers with karma: 3 on 2018-10-24

Post score: 0

$\endgroup$

1 Answer 1

0
$\begingroup$

Rosanswers logo

There is not really any issue here, apart from the fact that cloning a single package in isolation into your workspace is almost never enough.

The Gazebo simulation depends on the fetch_description package (and a whole nr of other packages, as you can see here), and as it can't find it, you get that error message.

For packages that have been released (so binaries are available), the procedure to setup your workspace when you want to build some of them from source can be found in #q252478.

For fetch_gazebo specifically, you'll want to follow that proccedure as well, but rosdep is going to complain that it cannot find fetch_description for you for Kinetic. That makes sense, as it hasn't been released.

What you need to do is git clone https://github.com/fetchrobotics/fetch_ros.git into your workspace as well, as that repository provides fetch_description and the related packages.

Be sure to re-run the rosdep install .. command from #q252478 again (or wait with it until after you've cloned fetch_ros), or you could run into trouble when trying to build your workspace.


Edit: please note that fetch_gazebo has branches for Gazebo 7 and Gazebo 9 and that gazebo9 is currently the default. You'll want to make sure to have checked out the correct one for Kinetic (ie: gazebo7).

The same goes for fetch_ros: it contains a branch for Indigo and for Melodic. For Kinetic you'll probably need to check out the indigo branch.


Originally posted by gvdhoorn with karma: 86574 on 2018-10-24

This answer was ACCEPTED on the original site

Post score: 0


Original comments

Comment by Saai Sundar on 2018-10-24:
Wow, thank you so much! Followed all your instructions and it works like a charm!

$\endgroup$

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.