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

[TF] Extrapolation into future - Wierd Chain?

asked 2014-09-17 08:26:42 -0500

Rabe gravatar image

Hey everyone,

I have the issue, that while running moveIt, I get transforms errors:

[ERROR] [1410959502.463512661]: Transform error: Lookup would require extrapolation into the future.  Requested time 1410959502.460805976 but the latest data is at time 1410959502.410336017, when looking up transform from frame [finger_1_link_0] to frame [camera_top/camera_top_depth_optical_frame]

Now, following this guide, I debugged the transforms, I appended the results below. What I was wondering is: Why is the chain so long and looped? Might this be the root of the issue?

RESULTS: for camera_top/camera_top_depth_optical_frame to finger_1_link_0
Chain is: segment_0 -> camera_top/camera_top_link -> camera_top/camera_top_rgb_frame -> camera_top/camera_top_link -> camera_front/camera_front_link -> segment_0 -> camera_top/camera_top_depth_frame -> camera_front/camera_front_link -> palm -> segment_7 -> camera_front/camera_front_depth_frame -> camera_front/camera_front_rgb_frame -> finger_1_link_1 -> finger_1_link_0 -> finger_1_link_2 -> finger_2_link_1 -> finger_2_link_0 -> finger_2_link_2 -> finger_middle_link_1 -> finger_middle_link_0 -> finger_middle_link_2 -> palm -> palm -> palm -> segment_6 -> segment_0 -> segment_1 -> segment_2 -> segment_3 -> segment_4 -> segment_5
Net delay     avg = 0.055249: max = 0.117458

Frames:
Frame: camera_front/camera_front_depth_frame published by /camera_front_base_link Average Delay: -0.00940285 Max Delay: 0
Frame: camera_front/camera_front_link published by /second_kinect_broadcaster Average Delay: -0.0993219 Max Delay: 0
Frame: camera_front/camera_front_link published by /second_kinect_broadcaster Average Delay: -0.0993219 Max Delay: 0
Frame: camera_front/camera_front_rgb_frame published by /camera_front_base_link_1 Average Delay: -0.00940964 Max Delay: 0
Frame: camera_top/camera_top_depth_frame published by /camera_top_base_link Average Delay: -0.00945783 Max Delay: 0
Frame: camera_top/camera_top_link published by /camera_top_link_broadcaster Average Delay: -0.00942012 Max Delay: 0
Frame: camera_top/camera_top_link published by /camera_top_link_broadcaster Average Delay: -0.00942012 Max Delay: 0
Frame: camera_top/camera_top_rgb_frame published by /camera_top_base_link_1 Average Delay: -0.00942155 Max Delay: 0
Frame: finger_1_link_0 published by /robot_tf_state_publisher Average Delay: -0.496956 Max Delay: 0
Frame: finger_1_link_1 published by /robot_tf_state_publisher Average Delay: 0.00512914 Max Delay: 0.0639241
Frame: finger_1_link_2 published by /robot_tf_state_publisher Average Delay: -0.496976 Max Delay: 0
Frame: finger_2_link_0 published by /robot_tf_state_publisher Average Delay: -0.496954 Max Delay: 0
Frame: finger_2_link_1 published by /robot_tf_state_publisher Average Delay: 0.00513452 Max Delay: 0.0639276
Frame: finger_2_link_2 published by /robot_tf_state_publisher Average Delay: -0.496969 Max Delay: 0
Frame: finger_middle_link_0 published by /robot_tf_state_publisher Average Delay: -0.496951 Max Delay: 0
Frame: finger_middle_link_1 published by /robot_tf_state_publisher Average Delay: 0.00513811 Max Delay: 0.0639306
Frame: finger_middle_link_2 published by /robot_tf_state_publisher Average Delay: -0.496963 Max Delay: 0
Frame: palm published by /robot_tf_state_publisher Average Delay: -0.496948 Max Delay: 0
Frame: palm published by /robot_tf_state_publisher Average Delay: -0.496948 Max Delay: 0
Frame: palm published by /robot_tf_state_publisher Average Delay: -0.496948 Max Delay: 0
Frame: palm published by /robot_tf_state_publisher Average Delay: -0.496948 Max Delay: 0
Frame: segment_1 published by /robot_tf_state_publisher Average Delay: 0.00514182 Max Delay: 0.0639336
Frame: segment_2 published by /robot_tf_state_publisher Average Delay: 0.00514508 Max Delay: 0.0639368
Frame: segment_3 published by /robot_tf_state_publisher Average Delay: 0.00514861 Max Delay: 0.0639399
Frame: segment_4 published by /robot_tf_state_publisher Average Delay: 0.00515163 Max Delay: 0.063943
Frame: segment_5 published by /robot_tf_state_publisher Average Delay: 0.00515438 Max Delay: 0.0639463
Frame: segment_6 published by /robot_tf_state_publisher Average Delay: 0.00515731 Max Delay: 0.0639497
Frame: segment_7 published by /robot_tf_state_publisher Average Delay: 0.00515987 Max Delay: 0.0639524

All Broadcasters:
Node: /camera_front_base_link 99.3663 ...
(more)
edit retag flag offensive close merge delete

1 Answer

Sort by ยป oldest newest most voted
1

answered 2014-09-17 20:46:05 -0500

tfoote gravatar image

updated 2014-09-17 20:52:02 -0500

You have many sources for your transforms, and you need to make sure that the transform data has arrived.

Duplicate: http://answers.ros.org/question/39968... @Lorenz 's answer is valid

Just use waitForTransform or tf::MessageFilter. Also, make sure you went through this tutorial.

The displayed chain has a bug in it: https://github.com/ros/geometry_exper... is why the listing is wrong at the top.

edit flag offensive delete link more

Comments

Pardon, just that I understand it correctly: -The command line output is not an issue - I or actually some node in moveIt should use the waitForTransform method - Reducing the publishers might help in my case.

Rabe gravatar image Rabe  ( 2014-09-18 03:11:34 -0500 )edit

Ok, I joined all the camera-related publishers into 1 publisher. The issue still persisted. Since I don't want to dive into the moveIt code, to implement MessageFilters, I am dating the transforms from the cameras into the past. This should not be an issue, since they are static. Thanks!

Rabe gravatar image Rabe  ( 2014-09-18 09:35:45 -0500 )edit

Question Tools

1 follower

Stats

Asked: 2014-09-17 08:26:42 -0500

Seen: 416 times

Last updated: Sep 17 '14