-
Notifications
You must be signed in to change notification settings - Fork 269
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
TrackedVehicle system does unexpected movement on low turn commands. #2506
Comments
Yeah, it seems like it could be an issue with how that condition is handled on line 689. Would you be able to work on a fix? cc @peci1 |
Yeah, it seems to be caused by the hardcoded threshold. The threshold is there to prevent division by zero when computing turning radius. But I don't see any reason why it couldn't have a lower value. Not sure if it makes sense to turn the thresholds into configurable values. Probably just changing the hardcoded values to something like 1e-4 would suffice. This would, of course, be a breaking change, but I don't think it would really affect anyone. @azeey not sure what the current policy is, but feel free to add me as a codeowner for the files added in the tracked vehicles PR. |
Should we prepare this PR? |
You definitely can do that. I'm away this week. |
Hello, |
Hi. I have a branch with fix, but I didn't check it properly yet. And I also want to think about this question, but maybe it can be done in a separate way |
I see, I tried to build gazebo harmonic from source in order to modify the plugin but I get errors when running: do you know if it is possible to overwrite the plugin installed with binaries so I can build only the plugin to test it with the modification? Thanks! |
|
Hello, One other issue I have been encountering with this plugin (which is not related so this should not be the best place to refer to it) is that the center of rotation is not in the expected position (I would expect it to allign to the center of gravity of the vehicle + tracks) however, it alligns with the geometric center of the tracks (visual and collision), the links are alligned with what I though want to be the rotation axis, so not with the geometric center of the tracks. Have you find this issue also, or do you know what could be related to it? Thank you!! |
Yeah, that would be an inherent limitation of the approximate method that is used to simulate tracks. There's no way to fix this in this approach. However, you could probably work it around by creating an extra link positioned in the CoM and setting that link as |
Oh I see, so the center of rotation will always be alligned with the base_link? |
Mostly yes. More exactly, it will rotate around whatever is set in the |
I guess in this case I'll open a PR. |
Since this is out of the scope of this issue I have open a new one: Using body_link to move center of rotation in TrackedVehicle plugin. Also, I posted some days ago another issue regarding this plugin here: Change odometry publication frequence if you wanna take a look. Thank you very much! |
I created PR to gz-sim9 branch due to it's a main branch right now. |
That process is described here: https://community.gazebosim.org/t/gazebo-policy-update-new-backporting-policy/2880 . It should reflect what is in the docs, however, the docs still mention the old forward-porting policy. @azeey Could you have a look? |
Yes, I saw this document, but I just want to clarify how the backport should looks like (which git mechanism I should use to do it according to a project rules: should it be cherry-pick or I can just apply same changes ad-hoc) |
Backports are done by the maintainers. |
I created a PR to update the contribution policy doc: gazebosim/docs#525 |
Environment
Description
If you send command with zero linear component and small (<0.1) angular component, vehicle behaves in unexpected way.
Expected behavior: no movement or slow turn in place.
Observed behavior: slow linear motion.
Probably something wrong with edge case here: https://github.com/gazebosim/gz-sim/blame/007aa87cd0007c2bbe2887e79b3679070d7bc806/src/systems/tracked_vehicle/TrackedVehicle.cc#L689
Code looks same in gz-sim8, so probably reproducible in newer versions.
Steps to reproduce
Commands executed:
Output
The text was updated successfully, but these errors were encountered: