Project Name | Stars | Downloads | Repos Using This | Packages Using This | Most Recent Commit | Total Releases | Latest Release | Open Issues | License | Language |
---|---|---|---|---|---|---|---|---|---|---|
Cs Video Courses | 53,706 | 3 days ago | 14 | |||||||
List of Computer Science courses with video lectures. | ||||||||||
Pythonrobotics | 17,854 | a day ago | 12 | other | Python | |||||
Python sample codes for robotics algorithms. | ||||||||||
Stable Baselines3 | 5,243 | 34 | 6 hours ago | 49 | June 14, 2022 | 87 | mit | Python | ||
PyTorch version of Stable Baselines, reliable implementations of reinforcement learning algorithms. | ||||||||||
Robotics Coursework | 1,762 | a year ago | 5 | unlicense | ||||||
🤖 Places where you can learn robotics (and stuff like that) online 🤖 | ||||||||||
Pinocchio | 994 | 8 | 6 | a day ago | 5 | November 16, 2021 | 27 | other | C++ | |
A fast and flexible implementation of Rigid Body Dynamics algorithms and their analytical derivatives | ||||||||||
Cpprobotics | 556 | 3 years ago | 2 | mit | C++ | |||||
cpp implementation of robotics algorithms including localization, mapping, SLAM, path planning and control | ||||||||||
Rpg_quadrotor_control | 359 | 2 years ago | 20 | other | C++ | |||||
Quadrotor control framework developed by the Robotics and Perception Group | ||||||||||
Rbdl | 319 | 6 months ago | 21 | other | C++ | |||||
RBDL is a C++ library that contains some essential and efficient rigid body dynamics algorithms such as the Articulated Body Algorithm (ABA) for forward dynamics, Recursive Newton-Euler Algorithm (RNEA) for inverse dynamics, the Composite Rigid Body Algorithm (CRBA) for the efficient computation of the joint space inertia matrix and is also able to compute forward dynamics with external contact constraints and collision impulses. Furthermore it has some basic support for forward and inverse kinematics. | ||||||||||
Cpprobotics | 266 | a year ago | 3 | mit | C++ | |||||
Header-only C++ library for robotics, control, and path planning algorithms. Work in progress, contributions are welcome! | ||||||||||
Rigidbodydynamics.jl | 239 | 5 months ago | 32 | other | Julia | |||||
Julia implementation of various rigid body dynamics and kinematics algorithms |
RBDL - Rigid Body Dynamics Library Copyright (c) 2018-2022 Martin Felis [email protected] Felix Richter [email protected]
RBDL is a highly efficient C++ library that contains some essential rigid body dynamics algorithms such as the Articulated Body Algorithm (ABA) for forward dynamics, Recursive Newton-Euler Algorithm (RNEA) for inverse dynamics and the Composite Rigid Body Algorithm (CRBA) for the efficient computation of the joint space inertia matrix. It further contains code for Jacobians, forward and inverse kinematics, handling of external constraints such as contacts and collisions, and closed-loop models.
The code was originally developed by Martin Felis [email protected] at the research group Optimization in Robotics and Biomechanics (ORB) of the Interdisciplinary Center for Scientific Computing (IWR) and Institute of Computer Engineering at Heidelberg University. The code closely follows the notation used in Roy Featherstone's book "Rigid Body Dynamics Algorithm".
The documentation is contained in the code and can be extracted with the tool doxygen.
To create the documentation simply run
doxygen Doxyfile
which will generate the documentation in the subdirectory ./doc/html. The main page will then be located in ./doc/html/index.html.
An online version of the generated documentation can be found at https://rbdl.github.io.
As of 08-2021 rbdl
is part of microsofts vcpkg, a tool to manage c++ dependencies on all major operating systems.
The luamodel and urdfmodel addon are installed via vcpkg as well, other addons may be added in the future as well.
Install vcpkg by making a local clone from its GitHub repo Microsoft/vcpkg. Then run the vcpkg-bootstrapper script to set it up. For detailed installation instructions, see Install vcpkg. To integrate vcpkg with your Visual Studio or Visual Studio Code development environment, see Integrate vcpkg. Then, to use vcpkg to install or update a library, see Manage libraries with vcpkg. For more information about vcpkg commands, see vcpkg command-line reference.
The official rbdl git repository can be cloned from
https://github.com/rbdl/rbdl
(See https://git-scm.com/downloads/guis/ for git clients.)
To make sure all submodules are correctly downloaded, clone the repository recursively!
git clone --recursive https://github.com/rbdl/rbdl
For convenience there is a script to upgrade to the newest RBDL repository version.
./upgrade.sh
It pulls the latest commits from master and also checks out the correct version of all sub repositories. Manual upgrading requires doing the following:
git pull origin master
git submodule update --init
sudo apt update
sudo apt upgrade
sudo apt install git-core
sudo apt install cmake
sudo apt install libeigen3-dev
sudo apt-get install build-essential
sudo apt install cmake-curses-gui
At the moment most linux distributions do not have catch2 in their repositories yet. So the recommended install approach is to build it from source.
$ git clone --branch v2.x https://github.com/catchorg/Catch2.git
$ cd Catch2
$ cmake -Bbuild -H. -DBUILD_TESTING=OFF
$ sudo cmake --build build/ --target install
mkdir /rbdl-build
cd rbdl-build/
cmake -D CMAKE_BUILD_TYPE=Release ../rbdl
make
If you have installed cmake-curses-gui you can see all of the available build options by running cmake-curses
mkdir /rbdl-build
cd rbdl-build/
ccmake ../rbdl
at which point you will see full list of build options for RBDL. We recommend that you build and run RBDL's test code at least once by building RBDL with
RBDL_BUILD_TESTS ON
RUN_AUTOMATIC_TESTS ON
sudo apt install doxygen
doxygen Doxyfile
sudo apt install libboost-all-dev
sudo apt install lua5.1
sudo apt install liblua5.1-0-dev
RBDL_BUILD_ADDON_LUAMODEL ON
git submodule init
git submodule update
RBDL_BUILD_ADDON_URDFREADER ON
RBDL_BUILD_ADDON_GEOMETRY ON
RBDL_BUILD_ADDON_MUSCLE ON
RBDL_BUILD_ADDON_GEOMETRY ON
RBDL_BUILD_ADDON_LUAMODEL ON
RBDL_BUILD_ADDON_MUSCLE ON
RBDL_BUILD_ADDON_MUSCLE_FITTING ON
export IPOPT_HOME=/home/mjhmilla/dev/Ipopt-3.12.8
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$IPOPT_HOME/lib
Although RBDL can be installed on Windows, none of the ORB members currently uses Windows and so we are unable to provide detailed instructions.
RBDL can also build an experimental python wrapper that works with python 3 and
python 2. To do this enable the the RBDL_BUILD_PYTHON_WRAPPER
cmake options.
This will build the wrapper for python 3, if you want to use python 2 instead
you will also have to enable the RBDL_USE_PYTHON_2
cmake option. The result
of this is an extra python directory in the build directory. From within which
you can install it using setup.py. This is done automatically when using
make install
python3 -V
sudo apt install cython3 python3-numpy python3-scipy python3-matplotlib
RBDL_BUILD_PYTHON_WRAPPER : ON
(Note: you may need sudo privileges to install the rbdl.egg_info file to usr/local/lib/python directory.) 3. Add RBDL to Python's path Update your .bashrc file so that python can find the python version of rbdl. To do this you need to add the path to 'rbdl-build/python' to the PYTHONPATH which can be done by adding the following line to your .bashrc file.
export PYTHONPATH=$PYTHONPATH:<path-to-the-RBDL-build-directory>/python
There are four main ways to learn about anything that appears in RBDL:
An overview of the theoretical and implementation details has been published in [https://doi.org/10.1007/s10514-016-9574-0](Felis, M.L. Auton Robot (2017) 41: 495). To cite RBDL in your academic research you can use the following BibTeX entry:
@Article{Felis2016,
author="Felis, Martin L.",
title="RBDL: an efficient rigid-body dynamics library using recursive algorithms",
journal="Autonomous Robots",
year="2016",
pages="1--17",
issn="1573-7527",
doi="10.1007/s10514-016-9574-0",
url="http://dx.doi.org/10.1007/s10514-016-9574-0"
}
The library is published under the very permissive zlib free software license which should allow you to use the software wherever you need.
This is the full license text (zlib license):
RBDL - Rigid Body Dynamics Library
Copyright (c) 2011-2020 Martin Felis <[email protected]>
This software is provided 'as-is', without any express or implied
warranty. In no event will the authors be held liable for any damages
arising from the use of this software.
Permission is granted to anyone to use this software for any purpose,
including commercial applications, and to alter it and redistribute it
freely, subject to the following restrictions:
1. The origin of this software must not be misrepresented; you must not
claim that you wrote the original software. If you use this software
in a product, an acknowledgment in the product documentation would be
appreciated but is not required.
2. Altered source versions must be plainly marked as such, and must not
be misrepresented as being the original software.
3. This notice may not be removed or altered from any source
distribution.
Work on this library was originally funded by the Heidelberg Graduate School of Mathematical and Computational Methods for the Sciences (HGS), and the European FP7 projects ECHORD (grant number 231143) and Koroibot (grant number 611909).
Work on the geometry and muscle addons was completed by Matthew Millard [email protected]. Financial support from Deutsche Forschungs Gemeinschaft grant no. MI 2109/1-1 and from the European Commission within the H2020 project Spexor (GA 687662) is gratefully acknowledged.