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

[WIP] Add Moco 3D tracking example with foot-ground contact #4008

Draft
wants to merge 23 commits into
base: main
Choose a base branch
from

Conversation

nickbianco
Copy link
Member

@nickbianco nickbianco commented Jan 31, 2025

Fixes issue #3960

Brief summary of changes

This change adds example3DWalking.cpp, an example that demonstrates how to create a simulation of walking tracking both kinematics and ground reaction forces using a contact model. This example lives inside the example3DWalking folder and relies on the existing reference data there, some of which was modified to accommodate the new example while still working for exampleMocoInverse and exampleMocoTrack. New reference files were added to allow adding contact forces to the model and for loading in marker weights based on an IKTaskSet.

The following minor additions are included in this PR which are incorporated in the new/updated examples:

  • Added ModelFactory::createResidualActuators and ModOpAddResiduals to make it easy to add a set of residual actuators to a model.
  • Updated ModelFactory::createReserveActuators and ModOpAddReserves with changes that make them compatible with the new residual utility methods.
  • Added convenience methods to MocoTrack to allow setting marker weights from a Set<MarkerWeight> or IKTaskSet.
  • Added a const-qualifier to IKTaskSet::createMarkerWeightSet.
  • Minor improvements and changes to exampleMocoInverse and exampleMocoTrack based on the updated reference data and the new utility methods.

Testing I've completed

WIP: testing all updated examples to make sure results are consistent across C++, Python, and Matlab.

Looking for feedback on...

I tried to check carefully that all updated examples are consistent with each other, but additional spot checking during review would be helpful.

CHANGELOG.md (choose one)

  • updated.

This change is Reviewable

@nickbianco nickbianco marked this pull request as draft January 31, 2025 21:50
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.

1 participant