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

MoveIt! RViz display plugin does not show the robot correctly (Melodic)

asked 2018-07-05 11:11:41 -0600

ffusco gravatar image


I recently upgraded my system to Ubuntu 18.04 and Melodic, installing both ROS and MoveIt! from deb. I have some issues with MoveIt!'s display plugin, as shown in the picture below. I generated the config package for this Kuka LWR from scratch by running the setup assistant, but the same problem appears with "pre-existing" configuration packages.

image description

  • bottom left: the robot as shown by MoveIt!'s MotionPlanning display (current state + goal state in violet)
  • top: robot shown via the "standard" RViz RobotModel display

When running the demo.launch, I can set the goal state to a random configuration, plan and execute using the MotionPlanning panel. The interactive marker does not work instead (but I guess it is just a side effect). The only warning I get on the terminal is the following (I run the demo.launch with the _debug_ option enabled):

[ WARN] [1530806517.103186724]: Interactive marker 'EE:goal_p3r3_link_6' contains unnormalized quaternions. This warning will only be output once but may be true for others; enable DEBUG messages for ros.rviz.quaternions to see more details.

Since I just switched to Melodic and I don't trust myself, my guess is that I missed something from the migration guide (or elsewhere), but I cannot figure out what.

Thanks in advance! Has anyone experienced the same issue already? The only warning I get when starting

edit retag flag offensive close merge delete

2 Answers

Sort by ยป oldest newest most voted

answered 2018-07-09 04:31:28 -0600

ffusco gravatar image

I finally figured out what was the issue! It is related to urdfdom and how it parses floating point values. The problem had been fixed, however it seems that the fix is not yet available in Melodic. This causes RViz to mishandle URDF-related plugins. The problem is reported, eg, here, and a quick solution is to change the environment variable LC_NUMERIC so that a point is used as decimal separator: export LC_NUMERIC="en_US.UTF-8". In France the default definition was fr_FR.UTF-8, which assumes commas as decimal separator, and this caused plugins to wrongly interpret the URDF.

edit flag offensive delete link more


Thanks! Just encountered the same problem.

Long Smith gravatar image Long Smith  ( 2018-08-24 09:04:13 -0600 )edit

Is this LC_NUMERIC only a ROS component or does it affect other parts of the system?

tahsinkose gravatar image tahsinkose  ( 2019-08-21 14:52:43 -0600 )edit

It is an environment variabile of the system, which might affect other applications. As an example, an application like Libre Office Calc might read its value to decide what decimal separator should be adopted. In any case, since the day I added such export to my barshrc I have never experienced any issue due to it :)

ffusco gravatar image ffusco  ( 2019-08-21 16:51:19 -0600 )edit

answered 2018-07-05 12:51:42 -0600

9/10 times this issue is a message with a pose that someone didn't fill out the orientation to be normalized. The message will default to empty 0s so the orientation quaternion is (0,0,0,0) which is invalid, identity in quaternion-land is (0,0,0,1).

1/10 times this issue is someone did actually fill it out but they didn't normalize the values.

edit flag offensive delete link more


I thought the warning about quaternions was just a "side effect" due to the state not being well published, but maybe it is indeed the reason of the probolem. An example is link text

ffusco gravatar image ffusco  ( 2018-07-05 15:06:26 -0600 )edit

I need to dig a little more before being sure (the issue should have been solved in ). I will investigate tomorrow to track the problem!

ffusco gravatar image ffusco  ( 2018-07-05 15:12:30 -0600 )edit

I checked the tf topic and at least over there quaternions seem to be properly normalized. By viewing markers topic it seems that when I drag the interactive IK marker quaternions are properly set as well (though as explained the marker does not make the robot move finally).

ffusco gravatar image ffusco  ( 2018-07-06 09:05:26 -0600 )edit

I installed MoveIt! from source, but I still see the same problems. I tested the RobotState display plugin for RViz and it fails as well. I am now trying to go inside its code to see if I can find some useful information!

ffusco gravatar image ffusco  ( 2018-07-06 09:08:11 -0600 )edit

Question Tools



Asked: 2018-07-05 11:11:41 -0600

Seen: 1,519 times

Last updated: Jul 09 '18