Kinematic and dynamic models of continuum and articulated soft robots.
Project description
JAX Soft Robot Modelling
This repository contains symbolic derivations of the kinematics and dynamics of various soft robots using Sympy. The symbolic expressions are then implemented in JAX used for fast, parallelizable, and differentiable simulations. So far, we have focused on planar settings and implemented the following soft robots:
- N-link pendulum
- Planar Piecewise Constant Strain (PCS) continuum soft robot
- Planar Handed Shearing Auxetics (HSA) robot
We are happy to receive contributions for other soft robots and/or other settings (e.g., 3D).
Citation
This simulator is part of the publication An Experimental Study of Model-based Control
for Planar Handed Shearing Auxetics Robots presented at the 18th International Symposium on Experimental Robotics.
You can find the publication online in the Springer Proceedings on Advanced Robotics (SPAR).
Please use the following citation if you use our software in your (scientific) work:
@inproceedings{stolzle2023experimental,
title={An Experimental Study of Model-based Control for Planar Handed Shearing Auxetics Robots},
author={St{\"o}lzle, Maximilian and Rus, Daniela and Della Santina, Cosimo},
booktitle={Experimental Robotics: The 18th International Symposium},
year={2023},
organization={Springer}
}
Installation
The plugin can be installed from PyPI:
pip install jsrm
or locally from the source code:
pip install .
If you want to run the examples, you will also need to install the following dependencies:
pip install ".[examples]"
Usage
Always, first source all necessary environment variables when opening a new terminal:
source 01-configure-env-vars.sh
Then, we can symbolically derive the pendulum kinematics and dynamics
python examples/derive_pendulum.py
Finally, we can simulate the pendulum
python examples/simulate_pendulum.py
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.