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

Time skew updates can cause jumps in the timestamps of odometry output #88

Open
heuristicus opened this issue Oct 13, 2022 · 0 comments

Comments

@heuristicus
Copy link
Owner

The time synchronisation with the robot is done with the time skew component, which has an internal mechanism that is updated every 60 seconds by default. The top chart in the image below shows the time offset between consecutive odometry messages from the robot. When the update happens occasionally there are significant offsets. This seems to happen when the clock of the robot and the operating machine have diverged significantly. The update will gradually bring them together, but these updates can cause problems if you are expecting consistent odometry timestamps. The lower part shows the expected yaw values vs the yaw values given by the odometry, and the discontinuity caused by the gap.

image (4)

This issue can probably be avoided by having the driver turned on for a while before running anything which needs accurate odometry timestamps. Alternatively, we can modify the sync frequency by changing

self._robot.start_time_sync()

to set a shorter time sync interval.

That function is here

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

No branches or pull requests

1 participant