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

iCubGazeboV3 model feet contacts are unstable in Gazebo v11.13 #209

Closed
gabrielenava opened this issue Sep 19, 2023 · 6 comments · Fixed by robotology/icub-models-generator#251

Comments

@gabrielenava
Copy link

I have Gazebo v11.13. after dropping the iCubGazeboV3 model in the simulator, the robot starts to drift on the floor and the feet contacts are very unstable:

vokoscreen-2023-09-12_17-44-52.mp4

this is not occurring in @HosameldinMohamed (previous) configuration, with Gazebo 11.12 (see also robotology/whole-body-estimators#169 (comment)):

Screencast_20230912_235556.mp4

after he also updated to Gazebo 11.13, the same issue appeared on his laptop.

cc @traversaro

@HosameldinMohamed
Copy link

Actually, I did more tests, and I found that probably updating Gazebo version is not the cause of this issue.

When I did my test with the latest Gazebo version, I used a clean Conda environment that also installed the latest of icub-models (v2.3.0).

The reason for this issue seems to be updating icub-models from v2.2.2 to v2.3.0!

Which most likely is due to robotology/icub-models-generator#243

@gabrielenava you can try to downgrade icub-models and check again.

traversaro added a commit to robotology/icub-models-generator that referenced this issue Sep 20, 2023
Fix robotology/icub-models#209 .

In #243 the location of the frames of the links of the soles ( with names like `(r|l)_foot_(front|back)` ) have been moved to the origin of the FT sensors that connect them with the `(r|l)_ankle_2` link. All the quantities expressed in this frame have been automatically modified to account for its new location by the simmechanics-to-urdf script, except for the location of the assigned collision, that are hardcoded in the .yaml file . This created a regression, has it effectly moved the sole assigned collisions up, so the robot was actually touching the ground with the (r|l)_ankle_2 links, that do not have any contact parameter assigned.

This commit fixes the situation by taking the existing z value of the assigned collision origin, and adding the offset with which the other elements (visual, inertial) have been modified 
(see robotology/icub-models@799ae07#diff-9d811d6ae4a80f936a2466cdc3b852ac4fb6d6e3a4cd40d2c42e794f42d6415aL260), to obtain:

newCollisionZ = oldCollisionZ + (newVisualZ - oldVisualZ)
              = 0.003         + (0.9241470000000105     - 0.9464470000000105    )
              = -0.0193
@traversaro
Copy link
Member

Fix proposed in robotology/icub-models-generator#251 .

@traversaro
Copy link
Member

@gabrielenava @HosameldinMohamed can you try with the latest devel, i.e. 78b150c ? If it works, I can do a release.

@HosameldinMohamed
Copy link

For me it works from the devel branch!

image

@gabrielenava
Copy link
Author

looks fine also for me! contacts are stable and the robot does not drift anymore!

image

@traversaro
Copy link
Member

Fixed released in https://github.com/robotology/icub-models/releases/tag/v2.4.0 .

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 a pull request may close this issue.

3 participants