Comodo
Suite of parametrized controller with simulation environments for co-design of Humanoid Robots
Install / Use
/learn @gbionics/ComodoREADME
CoMoDO
Control Motion Design Optimization
CoMoDO is a suite of parametrized controllers and simulators for codesign of robots.
<p align="center"> <b>⚠️ REPOSITORY UNDER DEVELOPMENT ⚠️</b> <br>We cannot guarantee stable API </p>
Table of contents
⚙️ Dependencies
This library depends on
And, optionally, on:
💾 Installation
🐍 Installation with conda
To install comodo in a conda environment, you can use the following commands
conda create -n comododev -c conda-forge adam-robotics bipedal-locomotion-framework=0.19.0 mujoco-python-viewer matplotlib urllib3 urchin notebook jaxsim
conda activate comododev
pip install --no-deps git+https://github.com/CarlottaSartore/urdf-modifiers.git@scalar_modification
pip install --no-deps -e .
With hippopt
To work in comodo with hippopt requires to install also the following packages:
conda install -c conda-forge -c robotology casadi pytest liecasadi meshcat-python ffmpeg-python
pip install --no-deps git+https://github.com/ami-iit/hippopt.git
With Drake
To use drake as the simulator backend requires the following additional dependencies:
conda install meshio tqdm
pip install drake git+https://github.com/ami-iit/amo_urdf
📦 Installation with pixi
An alternative and easy way to use comodo is with pixi package manager. It automatically handles the creation and activation of virtual environments in which to use the different simulators that comodo supports.
At the moment there is an environment associated with each simulation or planning backend, namely:
mujoco: for MuJoCo simulatorjaxsim: for JaxSim simulatordrake: for Drake simulatorhippopt: for Hippopt walking plannerallfor all the simulators
To activate one of these environments in a terminal run:
pixi shell -e <environment-name>
It is also possible to run directly a command in one of these environments using:
pixi run -e <environment-name> python <script-filename.py>
For example, it is possible to run the Jupyter notebooks in the examples folder by just executing:
pixi run -e all jupyter notebook
and then running the examples you prefer in Jupyter.
🚀 Usage
Take a look at the examples folder!
:construction_worker: Maintainer
This repository is maintained by | | | | :----------------------------------------------------------: | :--------------------------------------------------: | | <img src="https://user-images.githubusercontent.com/56030908/135461492-6d9a1174-19bd-46b3-bee6-c4dbaea9e210.jpeg" width="40"> | @CarlottaSartore |
