-
Notifications
You must be signed in to change notification settings - Fork 1
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
Adds the expressions for writing planners for a humanoid robot #10
Conversation
…l dynamics function
Renamed a parameter in dcc_complementarity_margin for better clarity
…ion task Renamed the yaw alignment function for consistency
Introduced with 45db937
CC @ami-iit/artificial-mechanical-intelligence |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
It looks really good @S-Dafarra! I have mainly comments on patterns plus some other minor ones. I skipped the visualization files, and went quickly on the terrains since probably @rob-mau had a better look at them.
The pattern using variable names seems working fine. However, it might be quite difficult to extend from the user point of view. Probably on the long term it would be helpful to have a sort of database (like a dict or a enum) containing all the names already used internally as casadi variables (and using them as default function parameters instead of using plain strings - quite helpful also for refactoring).
Nothing blocking though, approving regardless.
ecfa28f
to
eb1e074
Compare
Co-authored-by: Diego Ferigo <[email protected]>
opti.debug is called only once
eb1e074
to
f01632b
Compare
Right now, I used a dictionary (will be added in the next PR, see hippopt/src/hippopt/turnkey_planners/humanoid_kinodynamic/planner.py Lines 158 to 188 in 6a2f529
In any case, the user can also avoid defining custom names. Nonetheless, when specifying a dynamics, the name of the variables used in the function is important. The integrators automatically call the dynamics' functions with the input variables matching the name used in the functions. This is why I needed to keep this possibility open. Let me know if it is not clear 😉 @diegoferigo I should also have dealt with your comments, if you are ok with it, I would merge 😉 |
This PR adds all the functions I needed to write planners for a humanoid robot. In particular: