{"id":13526145,"url":"https://github.com/jrl-umi3218/Tasks","last_synced_at":"2025-04-01T06:31:23.339Z","repository":{"id":4521466,"uuid":"5661402","full_name":"jrl-umi3218/Tasks","owner":"jrl-umi3218","description":"The Tasks library is designed to make real-time control for kinematics tree and list of kinematics tree.","archived":false,"fork":false,"pushed_at":"2025-03-31T08:34:42.000Z","size":19250,"stargazers_count":97,"open_issues_count":19,"forks_count":32,"subscribers_count":11,"default_branch":"master","last_synced_at":"2025-03-31T09:32:28.417Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","language":"C++","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"bsd-2-clause","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/jrl-umi3218.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":"AUTHORS","dei":null,"publiccode":null,"codemeta":null}},"created_at":"2012-09-03T16:37:00.000Z","updated_at":"2025-03-31T08:34:46.000Z","dependencies_parsed_at":"2023-10-17T06:45:21.281Z","dependency_job_id":"1e758390-6a5f-4d03-a283-98084bd1b7ae","html_url":"https://github.com/jrl-umi3218/Tasks","commit_stats":null,"previous_names":[],"tags_count":13,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jrl-umi3218%2FTasks","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jrl-umi3218%2FTasks/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jrl-umi3218%2FTasks/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jrl-umi3218%2FTasks/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/jrl-umi3218","download_url":"https://codeload.github.com/jrl-umi3218/Tasks/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":246596915,"owners_count":20802924,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-08-01T06:01:25.765Z","updated_at":"2025-04-01T06:31:22.481Z","avatar_url":"https://github.com/jrl-umi3218.png","language":"C++","funding_links":[],"categories":["Uncategorized"],"sub_categories":["Uncategorized"],"readme":"Tasks\n=====\n\n[![License](https://img.shields.io/badge/License-BSD%202--Clause-green.svg)](https://opensource.org/licenses/BSD-2-Clause)\n[![Hosted By: Cloudsmith](https://img.shields.io/badge/OSS%20hosting%20by-cloudsmith-blue?logo=cloudsmith)](https://cloudsmith.com)\n[![CI](https://github.com/jrl-umi3218/Tasks/workflows/CI%20of%20Tasks/badge.svg?branch=master)](https://github.com/jrl-umi3218/Tasks/actions?query=workflow%3A%22CI+of+Tasks%22)\n[![Documentation](https://img.shields.io/badge/doxygen-online-brightgreen?logo=read-the-docs\u0026style=flat)](http://jrl-umi3218.github.io/Tasks/doxygen/HEAD/index.html)\n\nTasks is library for real time control of robots and kinematic trees using constrained optimization.\nIt has been used extensively to control humanoid robots such as HOAP-3, HRP-2, HRP-4 and Atlas.\n\nDocumentation\n-------------\n\nFeatures:\n * Support Kinematics Tree with Revolute/Prismatic/Spherical/Free/Planar/Cylindrical joints\n * Dynamic motion (motion must fulfill the equation of motion)\n * Contact forces in friction cones\n * Static contacts\n * Articular position, speed and torque limits\n * Collision avoidance\n * Multi-robot contact (can solve problems involving multiple robots in contact)\n * Tasks:\n  * Posture target (articular position target, mandatory if you want avoid singularity issues)\n  * Link Position/Orientation target\n  * Link Velocity target\n  * Center of Mass (CoM) target\n  * Momentum target\n  * Contact force target\n\nTo make sure that Tasks works as intended, unit tests are available for each algorithm.\n\nThe [SpaceVecAlg and RBDyn tutorial](https://github.com/jorisv/sva_rbdyn_tutorials) is also a big resources to understand how to use Tasks by providing a lot of IPython Notebook that will present real use case.\n\nAn online documentation can be found [online](https://jrl-umi3218.github.io/Tasks).\n\nInstalling\n----------\n\n## Ubuntu LTS (16.04, 18.04, 20.04)\n\nYou must first setup our package mirror:\n\n```\ncurl -1sLf \\\n  'https://dl.cloudsmith.io/public/mc-rtc/stable/setup.deb.sh' \\\n  | sudo -E bash\n```\n\nYou can also choose the head mirror which will have the latest version of this package:\n\n```\ncurl -1sLf \\\n  'https://dl.cloudsmith.io/public/mc-rtc/head/setup.deb.sh' \\\n  | sudo -E bash\n```\n\nYou can then install the package:\n\n```bash\nsudo apt install libtasks-dev python-tasks python3-tasks\n```\n\n## Conan\n\nInstall the latest version using [conan](https://conan.io/)\n\n```bash\nconan remote add multi-contact https://api.bintray.com/conan/gergondet/multi-contact\n# Install the latest release\nconan install Tasks/latest@multi-contact/stable\n# Or install the latest development version\n# conan install Tasks/latest@multi-contact/dev\n```\n\n## Manually build from source\n\n### Dependencies\n\nTo compile you need the following tools and libraries:\n\n * [Git]()\n * [CMake]() \u003e= 2.8\n * [pkg-config]()\n * [doxygen]()\n * [g++]() \u003e= 4.7 (for C++11 support)\n * [Boost](http://www.boost.org/doc/libs/1_58_0/more/getting_started/unix-variants.html) \u003e= 1.49\n * [Eigen](http://eigen.tuxfamily.org/index.php?title=Main_Page) \u003e= 3.2\n * [SpaceVecAlg](https://github.com/jrl-umi3218/SpaceVecAlg)\n * [RBDyn](https://github.com/jrl-umi3218/RBDyn)\n * [eigen-qld](https://github.com/jrl-umi3218/eigen-qld)\n * eigen-lssol (Optional, if you have the LSSOL licence ask us this library)\n * [sch-core](https://github.com/jrl-umi3218/sch-core)\n\nFor Python bindings:\n * [Cython](http://cython.org/) \u003e= 0.2\n * [Eigen3ToPython](https://github.com/jrl-umi3218/Eigen3ToPython)\n * [sch-core-python](https://github.com/jrl-umi3218/sch-core-python)\n\n### Building\n\n```sh\ngit clone --recursive https://github.com/jrl-umi3218/Tasks\ncd Tasks\nmkdir _build\ncd _build\ncmake [options] ..\nmake \u0026\u0026 make intall\n```\n\n#### CMake options\n\nBy default, the build will use the `python` and `pip` command to install the bindings for the default system version (this behaviour can be used to build the bindings in a given virtualenv). The following options allow to control this behaviour:\n\n * `PYTHON_BINDING` Build the python binding (ON/OFF, default: ON)\n * `PYTHON_BINDING_FORCE_PYTHON2`: use `python2` and `pip2` instead of `python` and `pip`\n * `PYTHON_BINDING_FORCE_PYTHON3`: use `python3` and `pip3` instead of `python` and `pip`\n * `PYTHON_BINDING_BUILD_PYTHON2_AND_PYTHON3`: builds two sets of bindings one with `python2` and `pip2`, the other with `python3` and `pip3`\n * `BUILD_TESTING` Enable unit tests building (ON/OFF, default: ON)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjrl-umi3218%2FTasks","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fjrl-umi3218%2FTasks","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjrl-umi3218%2FTasks/lists"}