0
$\begingroup$

Rosanswers logo

I'm trying to run Turtlebot using a fixed Kinect in the room, but I have some Tf issues in rviz. I cannot visualize robot Tf after base_footprint but I can see the link by:

$rosrun tf view_frames

image description

$rosrun tf tf_echo /odom /base_footprint

> At time 1369922387.939
> - Translation: [0.000, 0.000, 0.000]
> - Rotation: in Quaternion [0.000, 0.000, 0.000, 1.000]
>             in RPY [0.000, -0.000, 0.000] At time 1369922388.974
> - Translation: [0.023, 0.001, 0.000]
> - Rotation: in Quaternion [0.000, 0.000, 0.070, 0.998]
>             in RPY [0.000, -0.000, 0.140] At time 1369922389.940
> - Translation: [0.023, 0.001, 0.000]
> - Rotation: in Quaternion [0.000, 0.000, 0.070, 0.998]
>             in RPY [0.000, -0.000, 0.140]

I can see some delay issues by tf_monitor: RESULTS: for all Frames

Frames: Frame: /ar_marker published by /pattern_reader Average Delay: 0.00499706 Max Delay: 0.0056474 Frame: /base_footprint published by /robot_pose_ekf Average Delay: 3415.33 Max Delay: 3415.36 Frame: /base_link published by /robot_state_publisher Average Delay: -0.486476 Max Delay: 0 Frame: /base_marker published by /baseMarker Average Delay: 0.000302851 Max Delay: 0.00233504 Frame: /camera_depth_frame published by /robot_state_publisher Average Delay: -0.486468 Max Delay: 0 Frame: /camera_depth_optical_frame published by /robot_state_publisher Average Delay: -0.486467 Max Delay: 0 Frame: /camera_link published by /robot_state_publisher Average Delay: -0.486478 Max Delay: 0 Frame: /camera_rgb_frame published by /robot_state_publisher Average Delay: -0.486466 Max Delay: 0 Frame: /camera_rgb_optical_frame published by /robot_state_publisher Average Delay: -0.486465 Max Delay: 0 Frame: /front_wheel_link published by /robot_state_publisher Average Delay: -0.486464 Max Delay: 0 Frame: /gyro_link published by /robot_state_publisher Average Delay: -0.486463 Max Delay: 0 Frame: /laser published by /robot_state_publisher Average Delay: -0.486462 Max Delay: 0 Frame: /left_cliff_sensor_link published by /robot_state_publisher Average Delay: -0.486475 Max Delay: 0 Frame: /left_wheel_link published by /robot_state_publisher Average Delay: 3414.33 Max Delay: 3414.34 Frame: /leftfront_cliff_sensor_link published by /robot_state_publisher Average Delay: -0.486473 Max Delay: 0 Frame: /odom published by /initialPose Average Delay: 0.000253598 Max Delay: 0.000583442 Frame: /openni_rgb_optical_frame published by /world_kinect_link Average Delay: -0.0998099 Max Delay: 0 Frame: /plate_0_link published by /robot_state_publisher Average Delay: -0.486461 Max Delay: 0 Frame: /plate_1_link published by /robot_state_publisher Average Delay: -0.48646 Max Delay: 0 Frame: /plate_2_link published by /robot_state_publisher Average Delay: -0.486459 Max Delay: 0 Frame: /plate_3_link published by /robot_state_publisher Average Delay: -0.486458 Max Delay: 0 Frame: /rear_wheel_link published by /robot_state_publisher Average Delay: -0.486457 Max Delay: 0 Frame: /right_cliff_sensor_link published by /robot_state_publisher Average Delay: -0.486472 Max Delay: 0 Frame: /right_wheel_link published by /robot_state_publisher Average Delay: 3414.33 Max Delay: 3414.34 Frame: /rightfront_cliff_sensor_link published by /robot_state_publisher Average Delay: -0.486471 Max Delay: 0 Frame: /spacer_0_link published by /robot_state_publisher Average Delay: -0.486456 Max Delay: 0 Frame: /spacer_1_link published by /robot_state_publisher Average Delay: -0.486455 Max Delay: 0 Frame: /spacer_2_link published by /robot_state_publisher Average Delay: -0.486454 Max Delay: 0 Frame: /spacer_3_link published by /robot_state_publisher Average Delay: -0.486453 Max Delay: 0 Frame: /standoff_2in_0_link published by /robot_state_publisher Average Delay: -0.486452 Max Delay: 0 Frame: /standoff_2in_1_link published by /robot_state_publisher Average Delay: -0.486451 Max Delay: 0 Frame: /standoff_2in_2_link published by /robot_state_publisher Average Delay: -0.48645 Max Delay: 0 Frame: /standoff_2in_3_link published by /robot_state_publisher Average Delay: -0.486449 Max Delay: 0 Frame: /standoff_2in_4_link published by /robot_state_publisher Average Delay: -0.486448 Max Delay: 0 Frame: /standoff_2in_5_link published by /robot_state_publisher Average Delay: -0.486447 Max Delay: 0 Frame: /standoff_2in_6_link published by /robot_state_publisher Average Delay: -0.486446 Max Delay: 0 Frame: /standoff_2in_7_link published by /robot_state_publisher Average Delay: -0.486445 Max Delay: 0 Frame: /standoff_8in_0_link published by /robot_state_publisher Average Delay: -0.486444 Max Delay: 0 Frame: /standoff_8in_1_link published by /robot_state_publisher Average Delay: -0.486443 Max Delay: 0 Frame: /standoff_8in_2_link published by /robot_state_publisher Average Delay: -0.486442 Max Delay: 0 Frame: /standoff_8in_3_link published by /robot_state_publisher Average Delay: -0.486441 Max Delay: 0 Frame: /standoff_kinect_0_link published by /robot_state_publisher Average Delay: -0.48644 Max Delay: 0 Frame: /standoff_kinect_1_link published by /robot_state_publisher Average Delay: -0.486439 Max Delay: 0 Frame: /wall_sensor_link published by /robot_state_publisher Average Delay: -0.486469 Max Delay: 0

All Broadcasters: Node: /baseMarker 33.7055 Hz, Average Delay: 0.000302851 Max Delay: 0.00233504 Node: /initialPose 33.7003 Hz, Average Delay: 0.000253598 Max Delay: 0.000583442 Node: /pattern_reader 30.4921 Hz, Average Delay: 0.00499706 Max Delay: 0.0056474 Node: /robot_pose_ekf 24.4999 Hz, Average Delay: 3415.33 Max Delay: 3415.36 Node: /robot_state_publisher 31.0423 Hz, Average Delay: 109.669 Max Delay: 3414.34 Node: /world_kinect_link 10.5159 Hz, Average Delay: -0.0998099 Max Delay: 0

Robot_pose_ekf has a very big delay of 3415.33.

How can I fix that ? I agree I publish in /vo very slowly but this should not have importance.

$rostopic hz /vo

subscribed to [/vo] average rate:

2.461 min: 0.401s max: 0.411s std dev: 0.00507s window: 3 average rate:

2.497 min: 0.387s max: 0.411s std dev: 0.00862s window: 5 average rate:

2.496 min: 0.387s max: 0.411s std dev: 0.00662s window: 8

$rostopic hz /robot_pose_ekf/odom

subscribed to [/robot_pose_ekf/odom]

average rate: 25.547 min: 0.032s max:

0.067s std dev: 0.01257s window: 24 average rate: 24.306 min: 0.032s max:

0.068s std dev: 0.01409s window: 48 average rate: 24.883 min: 0.032s max:

0.068s std dev: 0.01345s window: 74

Only Rviz has a issue, I have no error and robot_pose_ekf publish well. I can see Tf of kinect side if I choose World as fixed frame and I can see robot Tf if I choose base_footprint as fixed frame. Apparently a link is missing between /odom and base_footprint but only in Rviz.

Do you think is it a Delay issue or something related with Rviz ?


Originally posted by jep31 on ROS Answers with karma: 411 on 2013-05-30

Post score: 0

$\endgroup$

1 Answer 1

0
$\begingroup$

Rosanswers logo

The 3000 second delta will never be transformable across with the default 10 second tf buffer.

The most common reason for this is having multiple machines which are not in sync. You should make sure that your machines are syncronized with ntp. We recommend using chrony.
There's a TurtleBot tutorial to set this up.


Originally posted by tfoote with karma: 58457 on 2013-05-30

This answer was ACCEPTED on the original site

Post score: 1


Original comments

Comment by jep31 on 2013-05-30:
Oh you are right, synchronize machines works very well. Thank you. To be sure, I execute "sudo ntpdate ntp.ubuntu.com" on both machine at the same time. What is the correct process ?

Comment by tfoote on 2013-05-31:
That command will tell your machine to sync to an external server. You don't need to run them at the same time. To keep your machines in sync persistently you should install the chrony service so it runs in the background.

Comment by jep31 on 2013-06-05:
Do I need a Internet connexion to do this ? Because now I'm working on a local network without internet connexion and the synchronization doesn't work anymore. How can I synchronize without external connexion ? EDIT: solution= ntpdate -q other_computer_ip

$\endgroup$

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.