Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Cartographer crashes /odom messages out of order #597

Open
wants to merge 1 commit into
base: master
Choose a base branch
from

Conversation

ChristofGroschke
Copy link

@ChristofGroschke ChristofGroschke commented Jun 2, 2020

Added a flat_world_odom_node. Cartographer crashed not only when an /imu message arrives out of order, but also when an /odom message is out of
order. I add some diagnose files here so you can verify the issue. I will also add an python script to debug the captured data.

Python Script The reported message is in german.
Odom Diagnose
Imu Diagnose

A little background:

I'm using cartographer with a kinect camera on the turtlebot3 burger
& ros melodic. I'm a beginner with ros. Using cartographer in 2D mode
worked pretty fine. When i switched to 3D mode, the cartographer crashed
a lot with the following error:

[FATAL] [1591025245.229967139]: F0601 17:27:25.000000 20863
pose_extrapolator.cc:229] Check failed: time >= imu_tracker->time()
(637266220451080319 vs. 637266220451179130)

I found out, that the flat_world_imu_node orders the message by timestamp
by ignoring messages with a lower timestamp. I wrote a script checking all
the topics for this kind of behaviour and found out, that odom is not always
in the right order. When you take a look at the two files in the next commit
called odom_diag.txt and imu_diag.txt you will find an error on Seq 260784 in
odom_diag.txt. The error is in the nanoseconds timestamp. Compare Seq 260784 and Seq 260783. The messages are transmitted via 802.11ac. I captured the messages using rostopic echo.

I don't know if it helps anyone with the same problem but i hope so. Maybe
rename the node before implementing this it is a quick and dirty fix for my bachelor thesis. If you are interested i can rename the node.

Greetings from germany
Happy Pride / Black Lives Matter

message arrives out of order, but also when an /odom message is out of
order. I will add diagnose files with the next commit so you can verify
the issue. I will also add an python script to debug the captured data.

A little background:

I'm using cartographer with a kinect camera on the turtlebot3 burger
+ ros melodic. I'm a beginner with ros. Using cartographer in 2D mode
worked pretty fine. When i switched to 3D mode, the cartographer crashed
a lot with the following error:

[FATAL] [1591025245.229967139]: F0601 17:27:25.000000 20863
pose_extrapolator.cc:229] Check failed: time >= imu_tracker->time()
(637266220451080319 vs. 637266220451179130)

I found out, that the flat_world_imu_node orders the message by timestamp
by ignoring messages with a lower timestamp. I wrote a script checking all
the topics for this kind of behavior and found out, that odom is not always
in the right order. When you take a look at the two files in the next commit
called odom_diag.txt and imu_diag.txt you will find an error on Seq 260784 in
odom_diag.txt. The error is in the nanoseconds timestamp. The messages are
transmitted via 802.11ac. I captured the messages using rostopic echo.

I don't know if it helps anyone with the same problem but i hope so. Maybe
rename the node before implementing this it is a quick fix for my bachelor thesis.

Greetings from germany
Happy Pride / Black Lives Matter
@ROBOTIS-Will
Copy link
Contributor

@ChristofGroschke
Thank you for your contribution, but since we do not offer the Kinect in the package, this change may not applied as of now, but we'll keep this update as a useful information for the users who are working with the RGBD camera.
Thank you.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants