-
Notifications
You must be signed in to change notification settings - Fork 75
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
High IMU Jitter with ROS2 #357
Comments
At rates that high, I would also try to tune at the DDS layer. What RMW implementation, what QoS is your publisher (driver) and subscriber? |
Hi @PRAN384, the comment left by @vinnnyr is a good one as DDS tuning can certainly help with timestamp jitter, which I believe is what you are showing. However, the problem you are seeing is also caused by the way that USB data gets read by our devices. One option would be to connect the device over serial, which should result in more consistent DTs assuming you can run at a high enough baudrate. If you want to continue using USB, we have added the |
Hi @robbiefish and @vinnnyr. Thank you for the solutions. I have tried all the three but no luck. Here are my findings:
I tried the same script with the USB connection and everything seems fine. I have also tested the UART port on the PC in isolation(loop-back test: Writing data to TX and reading the RX of the device) and it passed. Please recommend a possible solution. Thank you in advance! |
I have taken a look at dts in the message timestamps when using How are you measuring the dts? Are you looking at the timestamp in the header, or the time at which you receive the ROS messages? |
Hi @robbiefish , yes I agree. I can now confirm that this is the case. This is perfect. Thank you and @vinnnyr for the help! |
Describe the bug
I am experiencing high jitter while using the GV7 AHRS IMU. Although I have tried various data rates, the jitter remains an issue. However, I did observe that the jitter appears to be less pronounced at 1000Hz compared to lower rates. I have experimented with settings like device timestamps and ROS2 timestamps, but the problem persists.
To Reproduce
Steps to reproduce the behaviour:
Launch the IMU node with command ros2 launch with the provided config.yaml file
Set data rate to 200Hz (also tested with 1000Hz).
Observe the output for jitter.
Expected behavior
The IMU data should be stable and without significant jitter across different data rates and configuration settings.
OS: Ubuntu 22
Architecture: ARM64, x86
ROS Version: Humble
Version: 4.3.0
Sensor(s): Microstrain GV7 AHRS IMU
Modifications
No source code modifications were made.
Launch Parameters
Please find the custom_imu.yml.txt file attached here:
custom_imu.yaml.txt
Attaching data rate plots for different settings:
Please help as my application is very sensitive to high jitter.
The text was updated successfully, but these errors were encountered: