-
Notifications
You must be signed in to change notification settings - Fork 238
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
Spurious readings from wheel position on Turtlebot3 via Dynamixel SDK #321
Comments
I figure there are 3 places the problem could be...
Is that logical? |
Seems like this may be related to the issue discussed in some of the turtlebot3 issues, such as ROBOTIS-GIT/turtlebot3#899. It appears that the root issue is described in ROBOTIS-GIT/turtlebot3#901. I'd love to see a fix for this, because it's causing a lot of problems with navigation. |
Is this only happening with ros2 systems ? |
I've only tested it with ROS2 Foxy, so can't say if it occurs in ROS, but as kgallowa said, the root issue certainly looks to be the issue behind ROBOTIS-GIT/turtlebot3#901 |
I have tested this on several different Turtlebots. One I have updated to the latest firmware, the others may or may not be the latest, but the problem is consistent between them.
After travelling anywhere from 5-20 metres, both wheel positions suddenly jump to large values, and then jump back. This is ruinous for tracking odometry.
I've tracked the issue upstream to the Dynamixel SDK, which is outputting the large values, so the issue is either in the SDK or in the OpenCR board. I'm not sure how to pursue it further, but happy to investigate in more depth if anyone can give me pointers.
I've uploaded an image from plotjuggler showing the issue.
Interestingly, the wheel velocity is also jumping. Whenever the velocity jumps, the position jumps, but sometimes the position jumps without the velocity jumping.
From doing some driving around to try to reproduce it consistently, the problem does not appear to occur when the robot is travelling at high speeds, but appears when it is travelling slowly.
Here is an example of two /joint_state messages, one after the other:
Sometimes the velocity jumps as well, usually just before a position jump.
The bot is moving very slowly at this time.
Interesting that the position jumped to is exactly the same (-51673.713111639) on both, and the velocity jumped to is -26658.010179427813 ... but not always on both wheels, as you can see in the velocity field above.
So far, the problem seems to occur when one or both wheels has a negative velocity, due to turning.
The text was updated successfully, but these errors were encountered: