Skip to main content

A fast and flexible implementation of Rigid Body Dynamics algorithms and their analytical derivatives

Project description

TSID - Task Space Inverse Dynamics

Pipeline status Coverage report PyPI version

License Code style: black Ruff

TSID is a C++ library for optimization-based inverse-dynamics control based on the rigid multi-body dynamics library Pinocchio.

Documentation

  • Take a look at the project wiki for an overview of the design of the library.
  • In the exercises folder you can find several examples of how to use TSID in Python with robot manipulators, humanoids, or quadrupeds.
  • On the website of Andrea Del Prete you can find slides and video lessons on TSID.
  • Memmo 2020 summer school

Installation with Conda

If you want to directly dive into TSID in Python, only one single line is sufficient (assuming you have Conda installed):

conda install tsid -c conda-forge

Installation from Debian/Ubuntu packages, with robotpkg

If you have never added robotpkg's software repository you can do it with the following commands:

sudo tee /etc/apt/sources.list.d/robotpkg.list <<EOF
deb [arch=amd64] http://robotpkg.openrobots.org/packages/debian/pub $(lsb_release -sc) robotpkg
EOF

curl http://robotpkg.openrobots.org/packages/debian/robotpkg.key | sudo apt-key add -
sudo apt update

You can install TSID and its python bindings (replace * with you Python version) with:

sudo apt install robotpkg-py3*-tsid

Installation from sources

First you need to install the following dependencies:

To install eigen3 on Ubuntu you can use apt-get: sudo apt-get install libeigen3-dev

To install pinocchio follow the instruction on its website.

To compile TSID:

cd $DEVEL/openrobots/src/
git clone --recursive git@github.com:stack-of-tasks/tsid.git
cd tsid
mkdir _build-RELEASE
cd _build-RELEASE
cmake .. -DCMAKE_BUILD_TYPE=RELEASE -DCMAKE_INSTALL_PREFIX=$DEVEL/openrobots
make install

Python Bindings

To use this library in python, we offer python bindings based on Boost.Python and EigenPy.

To install EigenPy you can compile the source code:

git clone https://github.com/stack-of-tasks/eigenpy

or, on Ubuntu, you can use apt-get:

sudo apt-get install robotpkg-py3*-eigenpy

For testing the python bindings, you can run the unit test scripts in the script folder, for instance:

ipython script/test_formulation.py

To run the demo using gepetto-viewer:

ipython demo/demo_romeo.py

Credits

This package is authored by:

It includes key contributions from:

And is maintained by:

Citing

If you are (or not) happy with TSID and want to cite it, please use the following citation:

@inproceedings {adelprete:jnrh:2016,
    title = {Implementing Torque Control with High-Ratio Gear Boxes and without Joint-Torque Sensors},
    booktitle = {Int. Journal of Humanoid Robotics},
    year = {2016},
    pages = {1550044},
    url = {https://hal.archives-ouvertes.fr/hal-01136936/document},
    author = {Andrea Del Prete, Nicolas Mansard, Oscar E Ramos, Olivier Stasse, Francesco Nori}
}

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

libtsid-1.9.0.tar.gz (8.0 MB view details)

Uploaded Source

Built Distributions

If you're not sure about the file name format, learn more about wheel file names.

libtsid-1.9.0-1-cp313-cp313-manylinux_2_28_x86_64.whl (462.7 kB view details)

Uploaded CPython 3.13manylinux: glibc 2.28+ x86-64

libtsid-1.9.0-1-cp313-cp313-manylinux_2_28_aarch64.whl (422.3 kB view details)

Uploaded CPython 3.13manylinux: glibc 2.28+ ARM64

libtsid-1.9.0-1-cp313-cp313-macosx_11_0_arm64.whl (334.5 kB view details)

Uploaded CPython 3.13macOS 11.0+ ARM64

libtsid-1.9.0-1-cp313-cp313-macosx_10_9_x86_64.whl (368.8 kB view details)

Uploaded CPython 3.13macOS 10.9+ x86-64

libtsid-1.9.0-0-cp313-cp313-manylinux_2_28_x86_64.whl (461.7 kB view details)

Uploaded CPython 3.13manylinux: glibc 2.28+ x86-64

libtsid-1.9.0-0-cp313-cp313-manylinux_2_28_aarch64.whl (420.9 kB view details)

Uploaded CPython 3.13manylinux: glibc 2.28+ ARM64

libtsid-1.9.0-0-cp313-cp313-macosx_11_0_arm64.whl (334.2 kB view details)

Uploaded CPython 3.13macOS 11.0+ ARM64

libtsid-1.9.0-0-cp313-cp313-macosx_10_9_x86_64.whl (367.9 kB view details)

Uploaded CPython 3.13macOS 10.9+ x86-64

File details

Details for the file libtsid-1.9.0.tar.gz.

File metadata

  • Download URL: libtsid-1.9.0.tar.gz
  • Upload date:
  • Size: 8.0 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for libtsid-1.9.0.tar.gz
Algorithm Hash digest
SHA256 52de6ee337fb94bf1a9761424f9d8def51537844eed77c7a00827ded2e956937
MD5 4e25ad58ad381fdcc13ff02ee264cad4
BLAKE2b-256 4c4673ed7b5ed8939b076c6ce3de2469393607656381e48ecd51ee9b55d558b0

See more details on using hashes here.

Provenance

The following attestation bundles were made for libtsid-1.9.0.tar.gz:

Publisher: release.yml on cmake-wheel/libtsid

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file libtsid-1.9.0-1-cp313-cp313-manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for libtsid-1.9.0-1-cp313-cp313-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 f3bd47f9a4ba5fa6d844a504ef3d123a17df65d256ffe1bdf633029baf1fb612
MD5 928fa9426514152deff1ce41f78cd46d
BLAKE2b-256 4f74fd2944d6437b71bcde84959fe72c7b877c8c7e3ec5bd6463234ec753ff40

See more details on using hashes here.

Provenance

The following attestation bundles were made for libtsid-1.9.0-1-cp313-cp313-manylinux_2_28_x86_64.whl:

Publisher: release.yml on cmake-wheel/libtsid

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file libtsid-1.9.0-1-cp313-cp313-manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for libtsid-1.9.0-1-cp313-cp313-manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 cb77115d56f874387c7ad29d9b1d12a4e2d95f77aa43e1d7fa7fd439d06bca21
MD5 390b99c5ff797b16714dfd0ff43b57cb
BLAKE2b-256 a1a5176bf61c845e8f2df6f0bee8e286a401bed55264b4c7009e97122ab3176d

See more details on using hashes here.

Provenance

The following attestation bundles were made for libtsid-1.9.0-1-cp313-cp313-manylinux_2_28_aarch64.whl:

Publisher: release.yml on cmake-wheel/libtsid

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file libtsid-1.9.0-1-cp313-cp313-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for libtsid-1.9.0-1-cp313-cp313-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 fdf624d58f5f414d527d0776770a25c287d6eba8df2f09494db1b0092c56050c
MD5 a4f5dedd7a6cd3b3fc1a2811c20fa357
BLAKE2b-256 41c5ae3edea7129e49f5723105e3a2633d7cc7893f03594cdee81e3edb905dfc

See more details on using hashes here.

Provenance

The following attestation bundles were made for libtsid-1.9.0-1-cp313-cp313-macosx_11_0_arm64.whl:

Publisher: release.yml on cmake-wheel/libtsid

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file libtsid-1.9.0-1-cp313-cp313-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for libtsid-1.9.0-1-cp313-cp313-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 8746c7a54c71179258e7b1603aa8f894310bffef1b401e760a678f378031e213
MD5 a8becd916f397c48fdf933025903471e
BLAKE2b-256 5961d1344b0815137bc1b4002a9a03f456628f1b8222d274d5bd6a2bf571f92f

See more details on using hashes here.

Provenance

The following attestation bundles were made for libtsid-1.9.0-1-cp313-cp313-macosx_10_9_x86_64.whl:

Publisher: release.yml on cmake-wheel/libtsid

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file libtsid-1.9.0-0-cp313-cp313-manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for libtsid-1.9.0-0-cp313-cp313-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 11e6595a3eed72355661a3f951a46305acbc1855f1059709d5d07d006da1f90c
MD5 193d72726c9bdfc7b33cc51f83e0eb52
BLAKE2b-256 894bae3c7c3da842320db1e5c4dccb6bb3ff69306c3ae53c8ed02d3ccfe996ab

See more details on using hashes here.

Provenance

The following attestation bundles were made for libtsid-1.9.0-0-cp313-cp313-manylinux_2_28_x86_64.whl:

Publisher: release.yml on cmake-wheel/libtsid

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file libtsid-1.9.0-0-cp313-cp313-manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for libtsid-1.9.0-0-cp313-cp313-manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 4b01265f3d43a27a10c564ee068150b5241e08ceb2cca3fe1b98f0e6996d3737
MD5 045193f1d10cc3414530f10f41ff8916
BLAKE2b-256 3b6baa05aedcb7602419c878416c099250dbde9f8aa5383446e42acc3bd50bfe

See more details on using hashes here.

Provenance

The following attestation bundles were made for libtsid-1.9.0-0-cp313-cp313-manylinux_2_28_aarch64.whl:

Publisher: release.yml on cmake-wheel/libtsid

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file libtsid-1.9.0-0-cp313-cp313-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for libtsid-1.9.0-0-cp313-cp313-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 0f2b281642600bcbe977c1df17059971546c478ecf209d337bca74866dc51219
MD5 7656ce614d08461e5463a424477c478a
BLAKE2b-256 e7a74c0027b6646170ee746cc672366184ef1e6e967b08f161ee2edaa979b81a

See more details on using hashes here.

Provenance

The following attestation bundles were made for libtsid-1.9.0-0-cp313-cp313-macosx_11_0_arm64.whl:

Publisher: release.yml on cmake-wheel/libtsid

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file libtsid-1.9.0-0-cp313-cp313-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for libtsid-1.9.0-0-cp313-cp313-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 502e6414d904e3937d532063c7ba55d3ac4b48fa3df0b5f094505896e03cb337
MD5 d29e429d0655883f256cb010a0c799f3
BLAKE2b-256 24beb22ec776810f77f804c81b342f20e38c2bac2a138f196085c078e30a01ac

See more details on using hashes here.

Provenance

The following attestation bundles were made for libtsid-1.9.0-0-cp313-cp313-macosx_10_9_x86_64.whl:

Publisher: release.yml on cmake-wheel/libtsid

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page