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

rviz keeps displaying initial pose

asked 2018-05-14 14:00:44 -0500

raequin gravatar image

updated 2018-05-14 14:01:23 -0500

When I use rviz, the initial state of the robot persists throughout the entire session. In the picture below, the robot started stretched out parallel to the ground then moved up into the higher pose. Everything in rviz seems to work fine but it would be nice to (a) know what's causing this artifact, and (b) not have that pose cluttering the view. Can you help me?

image description

edit retag flag offensive close merge delete

Comments

I haven't seen this happen. Have you tried deactivating elements of the Rviz display and/or adjusting alpha values to see which object the dead pose belongs to? Does it have TF frames? Check out the tree. If nothing else works, can you post your Rviz tab, URDF and SRDF?

fvd gravatar image fvd  ( 2018-09-05 02:27:00 -0500 )edit

Thanks. That helped. I'll put it in an answer.

raequin gravatar image raequin  ( 2018-09-07 08:19:27 -0500 )edit

1 Answer

Sort by ยป oldest newest most voted
0

answered 2018-09-07 08:22:06 -0500

raequin gravatar image

Thanks to the suggestion by @fvd, I unchecked the "Visual Enabled" box under Displays --> RobotState. That solved the problem!

edit flag offensive delete link more

Comments

1

I don't think this is a solution.

If with "Visual Enabled" you mean the checkbox under the "Robot Model" display, then that would indicate that something is not right with your TF setup.

gvdhoorn gravatar image gvdhoorn  ( 2018-09-07 08:30:42 -0500 )edit

Thanks for the input! If there's a problem in my setup then it's present in the universal_robot package too. If I run their gazebo and moveit launch files, followed by rviz rviz the same behavior occurs and is eliminated by unchecking Displays --> RobotState --> Visual Enabled.

raequin gravatar image raequin  ( 2018-09-07 08:45:25 -0500 )edit

I'm not saying you're wrong, but those pkgs are used by a lot of people daily and this is the first report that I see mentioning this.

gvdhoorn gravatar image gvdhoorn  ( 2018-09-07 10:11:08 -0500 )edit

Ha ha, I ought to have written, "your gazebo and moveit launch files" :) That package (and the driver) has been wonderful for us!

raequin gravatar image raequin  ( 2018-09-07 10:36:14 -0500 )edit

No problem. And I cannot take credit for all of it. It's been a combined effort of quite a nr of people together with the entire ROS community.

I would still recommend to debug why the Robot Model display doesn't correctly reflect the actual pose of your robot.

gvdhoorn gravatar image gvdhoorn  ( 2018-09-08 13:25:59 -0500 )edit

To clarify: rviz correctly displays the actual pose of the robot, it's just that the initial pose is continuously displayed too. That's what unchecking Visual Enabled resolved.

raequin gravatar image raequin  ( 2018-09-09 21:09:28 -0500 )edit

rviz correctly displays the actual pose of the robot

But which display is showing it?

The Robot Model display, or the one from MoveIt? Those are two different things.

gvdhoorn gravatar image gvdhoorn  ( 2018-09-10 01:35:04 -0500 )edit

The two displays that show the UR10 are RobotState and PlanningScene. The former never updates and so I uncheck Visual Enabled. The latter correctly reflects the actual pose of the manipulator.

raequin gravatar image raequin  ( 2018-09-10 08:34:23 -0500 )edit

This is hijacking my thread, but since we are talking about the universal_robot package: would it be possible to change from PositionJointInterface to EffortJointInterface for the UR joint control? I'm working on resolving a problem with manipulating objects in Gazebo and I want to try that.

raequin gravatar image raequin  ( 2018-09-13 11:19:08 -0500 )edit

For Gazebo: sure, you can definitely change that locally. As to making it the default: effort controllers need pid tuning and additionally we don't have any such control capability with the real robots. That is why it's currently set to position.

gvdhoorn gravatar image gvdhoorn  ( 2018-09-13 13:31:17 -0500 )edit

Cool. If you have a minute, I'd appreciate pointers on changing that. I figure it will include replacing PositionJointInterface with EffortJointInterface in ur.transmission.xacro but beyond that I'm unsure.

raequin gravatar image raequin  ( 2018-09-14 12:21:34 -0500 )edit

PS --- Do you know why this tutorial ( http://gazebosim.org/tutorials/?tut=r... ) states that "the <hardwareInterface> must be included in both the <joint> and <actuator> tags," yet ur.transmission.xacro only has it in the <joint> tag?

raequin gravatar image raequin  ( 2018-09-14 12:22:18 -0500 )edit

You could probably take a look at ros-industrial/universal_robot#227.

gvdhoorn gravatar image gvdhoorn  ( 2018-09-14 13:41:43 -0500 )edit

Thanks! Following those modifications allowed me to see that using PositionJointInterface is the source for the unrealistic interaction between the UR and the Gazebo environment. For a long time I've been messing with kp, max_vel, etc. so I'm happy to have that question answered.

raequin gravatar image raequin  ( 2018-09-14 16:23:00 -0500 )edit

Question Tools

2 followers

Stats

Asked: 2018-05-14 14:00:44 -0500

Seen: 608 times

Last updated: Sep 07 '18