How do I visualize the URDF models of the NXT robots?
Hi, I'm trying to visualize the URDF models of the nxt_robots (robot.urdf files on each package) with the display.launch program from the urdf_tutorials stack, but I don't seem to be able to do so, it keeps crashing all the time:
started core service [/rosout]
process[joint_state_publisher-2]: started with pid [2754]
process[robot_state_publisher-3]: started with pid [2759]
process[rviz-4]: started with pid [2762]
Traceback (most recent call last):
File "/home/capelare/ros/urdf_tools/joint_state_publisher/joint_state_publisher", line 208, in <module>
jsp = JointStatePublisher()
File "/home/capelare/ros/urdf_tools/joint_state_publisher/joint_state_publisher", line 25, in __init__
robot = URDF().parse(description)
File "/home/capelare/ros/urdf_tools/urdf_python/src/urdf_python/urdf.py", line 506, in parse
base = xml.dom.minidom.parseString(xml_string)
File "/usr/lib/python2.7/xml/dom/minidom.py", line 1924, in parseString
return expatbuilder.parseString(string)
File "/usr/lib/python2.7/xml/dom/expatbuilder.py", line 940, in parseString
return builder.parseString(string)
File "/usr/lib/python2.7/xml/dom/expatbuilder.py", line 223, in parseString
parser.Parse(string, True)
xml.parsers.expat.ExpatError: not well-formed (invalid token): line 2, column 12
[joint_state_publisher-2] process has died [pid 2754, exit code 1].
log files: /home/capelare/.ros/log/b0629bba-0bad-11e1-93ed-001d4ffc607c/joint_state_publisher-2*.log
That's what I get on the Terminal. Then rviz opens and displays all the meshes on the origin. Any ideas? Too many joints, maybe? The robot.urdf file passes the check_urdf tool, so I guess the syntax is OK. BTW, display.launch works fine with the urdf files I made following the urdf_tutorials, if you're wondering.
I'm still getting used to ros, urdf, rviz... and I tried to make this work by myself, so maybe this is the stupidest problem ever, but I'm totally lost.
Also, as requested by David Lu, here you have the first few lines of the URDF file:
<!--this file was autogenerated from sensor_car.lxf -->
<robot name=sensor_car>
<link name="base_link"/>
<joint name="base_joint" type="fixed">
<parent link="base_link"/>
<child link="ref_0_link"/>
<origin xyz="0.024 0 0.016" rpy="0 0 -1.57079632679" />
<axis xyz="0 0 1" />
</joint>
...
Thanks for your time, Miguel :)