Robotics StackExchange | Archived questions

openai_ros turtlebot2 example launch fails due to xml/xacro error

ROS Melodic 18.04

Hi,

I am trying to run the openai_ros turtlebot2 example. Unfortunately I cannot launch the simulation as I get the following error message:

Tutorials link: [http://wiki.ros.org/openai_ros/TurtleBot2%20with%20openai_ros]


XML parsing error: unbound prefix: line 25, column 1

roslaunch.core.RLException: while processing /home/benedict/catkin_ws/src/turtlebot/turtlebot_gazebo/launch/includes/kobuki.launch.xml:
Invalid <param> tag: Cannot load command parameter [robot_description]: command [/opt/ros/melodic/share/xacro/xacro.py '/home/benedict/catkin_ws/src/turtlebot/turtlebot_description/robots/kobuki_hexagons_kinect.urdf.xacro'] returned with code [2]. 

Param xml is <param command="$(arg urdf_file)" name="robot_description"/>

I checked the 'kobukihexagonskinect.urdf.xacro' xacro file:

    <?xml version="1.0"?>
<!--
    - Base      : kobuki
    - Stacks    : hexagons
    - 3d Sensor : kinect
-->    
<robot name="turtlebot" xmlns:xacro="http://ros.org/wiki/xacro">

  <xacro:include filename="$(find turtlebot_description)/urdf/turtlebot_library.urdf.xacro" />

  <kobuki/>
  <stack_hexagons   parent="base_link"/>
  <sensor_kinect    parent="base_link"/>
</robot>

And also the turtlebot_library.urdf.xacro:

<?xml version="1.0"?>
<!--
  The complete turtlebot library of xacros for easy reference
 -->
<robot xmlns:xacro="http://ros.org/wiki/xacro">
  <!-- General -->
  <xacro:include filename="$(find turtlebot_description)/urdf/common_properties.urdf.xacro"/>
  <xacro:include filename="$(find turtlebot_description)/urdf/turtlebot_properties.urdf.xacro"/>
  <!-- Bases -->
  <xacro:include filename="$(find create_description)/urdf/create.urdf.xacro"/>
  <xacro:include filename="$(find kobuki_description)/urdf/kobuki.urdf.xacro" />
  <!-- Stacks -->
  <xacro:include filename="$(find turtlebot_description)/urdf/stacks/circles.urdf.xacro"/>
  <xacro:include filename="$(find kobuki_description)/urdf/stacks/hexagons.urdf.xacro"/>
  <!-- 3D Sensors -->
  <xacro:include filename="$(find kobuki_description)/urdf/sensors/kinect.urdf.xacro"/>
  <xacro:include filename="$(find kobuki_description)/urdf/sensors/asus_xtion_pro.urdf.xacro"/>
  <xacro:include filename="$(find kobuki_description)/urdf/sensors/asus_xtion_pro_offset.urdf.xacro"/>
</robot>

Both seem to be ok to me.

Xacroversion is version 1.13.4

Any ideas about that?

Thank you in advance, Ben

Asked by benson33 on 2019-12-10 08:41:35 UTC

Comments

maybe examine turtlebot_library.urdf.xacro?

Asked by jordan on 2019-12-10 11:38:08 UTC

Thank you! I did so and it also looks allright.. Attached the file to the original post!

Asked by benson33 on 2019-12-11 12:10:56 UTC

Hi @benson33

I am dealing with the same exact problem. How did you solve the problem here?

Asked by pnourizadeh on 2020-08-23 21:35:57 UTC

Answers

Shouldn't it be <xacro:kobuki/> and similarly for others too?

Asked by ratz on 2021-04-06 07:44:42 UTC

Comments