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

Fix location of collision element in iCubGazeboV3 model #251

Merged
merged 1 commit into from
Sep 20, 2023

Conversation

traversaro
Copy link
Member

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

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 traversaro changed the title Fix location of collisions element in iCubGazeboV3 model Fix location of collision element in iCubGazeboV3 model Sep 20, 2023
@traversaro traversaro merged commit dbc36cc into master Sep 20, 2023
2 checks passed
@traversaro traversaro deleted the fix-icub-models-209 branch September 20, 2023 13:10
@traversaro
Copy link
Member Author

Similar to icub-tech-iit/ergocub-software#175 .

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 this pull request may close these issues.

iCubGazeboV3 model feet contacts are unstable in Gazebo v11.13
2 participants