Skip to content

Commit

Permalink
🚀 Release 0.14.0
Browse files Browse the repository at this point in the history
  • Loading branch information
GiulioRomualdi committed Jul 4, 2023
1 parent 25cb411 commit 2736a04
Show file tree
Hide file tree
Showing 4 changed files with 47 additions and 30 deletions.
5 changes: 3 additions & 2 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
# Changelog
All notable changes to this project are documented in this file.

## [unreleased]
## [0.14.0] - 2023-07-04
### Added
- Implement a class to perform inference with the [MANN network](https://github.com/ami-iit/mann-pytorch) (https://github.com/ami-iit/bipedal-locomotion-framework/pull/652, https://github.com/ami-iit/bipedal-locomotion-framework/pull/686)
- Add some useful methods to the `SubModel` and `SubModelKinDynWrapper` classes (https://github.com/ami-iit/bipedal-locomotion-framework/pull/661)
Expand Down Expand Up @@ -415,7 +415,8 @@ All notable changes to this project are documented in this file.
- Added `mas-imu-test` application to check the output of MAS IMUs (https://github.com/ami-iit/bipedal-locomotion-framework/pull/62)
- Implement motor currents reading in `YarpSensorBridge`. (https://github.com/ami-iit/bipedal-locomotion-framework/pull/187)

[unreleased]: https://github.com/ami-iit/bipedal-locomotion-framework/compare/v0.13.0...master
[unreleased]: https://github.com/ami-iit/bipedal-locomotion-framework/compare/v0.14.0...master
[0.14.0]: https://github.com/ami-iit/bipedal-locomotion-framework/compare/v0.13.0...v0.14.0
[0.13.0]: https://github.com/ami-iit/bipedal-locomotion-framework/compare/v0.12.0...v0.13.0
[0.12.0]: https://github.com/ami-iit/bipedal-locomotion-framework/compare/v0.11.1...v0.12.0
[0.11.1]: https://github.com/ami-iit/bipedal-locomotion-framework/compare/v0.11.0...v0.11.1
Expand Down
2 changes: 1 addition & 1 deletion CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ cmake_minimum_required(VERSION 3.16.0)

## MAIN project
project(BipedalLocomotionFramework
VERSION 0.13.100)
VERSION 0.14.0)

list(APPEND CMAKE_MODULE_PATH ${CMAKE_CURRENT_SOURCE_DIR}/cmake)

Expand Down
13 changes: 9 additions & 4 deletions docs/config.toml
Original file line number Diff line number Diff line change
Expand Up @@ -3,21 +3,26 @@ main_page = "docs/pages/main-page.dox"
additional_pages = ["docs/pages/python-additional-info.md", "docs/pages/so3-minjerk.md"]
src_folder = "src"

['v0.13.0']
['v0.14.0']
main_page = "docs/pages/main-page.dox"
additional_pages = ["docs/pages/python-additional-info.md"]
additional_pages = ["docs/pages/python-additional-info.md", "docs/pages/so3-minjerk.md"]
src_folder = "src"

['v0.12.0']
['v0.13.0']
main_page = "docs/pages/main-page.dox"
additional_pages = ["docs/pages/python-additional-info.md"]
src_folder = "src"

['v0.11.1']
['v0.12.0']
main_page = "docs/pages/main-page.dox"
additional_pages = ["docs/pages/python-additional-info.md"]
src_folder = "src"

# ['v0.11.1']
# main_page = "docs/pages/main-page.dox"
# additional_pages = ["docs/pages/python-additional-info.md"]
# src_folder = "src"

# ['v0.10.0']
# main_page = "docs/pages/main-page.dox"
# additional_pages = ["docs/pages/python-additional-info.md"]
Expand Down
57 changes: 34 additions & 23 deletions docs/pages/main-page.dox
Original file line number Diff line number Diff line change
Expand Up @@ -20,29 +20,35 @@ The minimum required dependencies are `Eigen3`, `iDynTree` and `spdlog`. If you

The **bipedal-locomotion-framework** project consists of several components. The components are stored in the [`src`](https://github.com/ami-iit/bipedal-locomotion-framework/tree/master/src) folder and their compilation depends on the installed dependencies.

| Component | Description | Additional Dependencies |
| :------------------------------------------: | :----------------------------------------------------------: | :----------------------------------------------------------: |
| Framework | Interface library that gathers all the exported components, includable with the file `BipedalLocomotion/Framework.h` | - |
| [AutoDiff](https://github.com/ami-iit/bipedal-locomotion-framework/tree/master/src/AutoDiff) | Bridge between CppAD and Eigen | [`CppAD`](https://coin-or.github.io/CppAD/doc/cppad.htm) |
| [ContactModels](https://github.com/ami-iit/bipedal-locomotion-framework/tree/master/src/ContactModels) | Models to describe the contact between robot and enviroment | - |
| [Contacts](https://github.com/ami-iit/bipedal-locomotion-framework/tree/master/src/Contacts) | Syntactic description of a contact | [`manif`](https://github.com/artivis/manif) [`nlohmann json`](https://github.com/nlohmann/json/) |
| [CommonConversions](https://github.com/ami-iit/bipedal-locomotion-framework/tree/master/src/Conversions) | Common conversion utilities used in the framework | - |
| [ManifConversions](https://github.com/ami-iit/bipedal-locomotion-framework/tree/master/src/Conversions) | `manif` library related conversion utilities used in the framework | [`manif`](https://github.com/artivis/manif) |
| [Estimators](https://github.com/ami-iit/bipedal-locomotion-framework/tree/master/src/Estimators) | Library containing observers | - |
| [FloatingBaseEstimator](https://github.com/ami-iit/bipedal-locomotion-framework/tree/master/src/Estimators) | Library containing floating base estimators | [`manif`](https://github.com/artivis/manif) |
| [GenericContainer](https://github.com/ami-iit/bipedal-locomotion-framework/tree/master/src/GenericContainer) | Data structure similar to ``span`` but resizable. | - |
| [IK](https://github.com/ami-iit/bipedal-locomotion-framework/tree/master/src/IK) | Inverse kinematics | [`manif`](https://github.com/artivis/manif) [`osqp-eigen`](https://github.com/robotology/osqp-eigen) |
| [Math](https://github.com/ami-iit/bipedal-locomotion-framework/tree/master/src/Math) | Library containing mathematical algorithms | [`manif`](https://github.com/artivis/manif) |
| [ParametersHandler](https://github.com/ami-iit/bipedal-locomotion-framework/tree/master/src/ParametersHandler) | Library for retrieving parameters from configuration files | [`YARP`](https://www.yarp.it/git-master/) (only if you want the `YARP` implementation) [`tomlplusplus`](https://github.com/marzer/tomlplusplus/) (only if you want the `toml` implementation) |
| [Planners](https://github.com/ami-iit/bipedal-locomotion-framework/tree/master/src/Planners) | Library containing planner useful for locomotion | [`manif`](https://github.com/artivis/manif) [`CasADi`](https://web.casadi.org/) [`qhull`](http://www.qhull.org/) |
| [RobotInterface](https://github.com/ami-iit/bipedal-locomotion-framework/tree/master/src/RobotInterface) | Generic interface classes to adapt to various IO data formats | [`YARP`](https://www.yarp.it/git-master/) (only if you want the `YARP` implementation) |
| [System](https://github.com/ami-iit/bipedal-locomotion-framework/tree/master/src/System) | Description of discrete and continuous dynamical systems | - |
| [TSID](https://github.com/ami-iit/bipedal-locomotion-framework/tree/master/src/TSID) | Task space inverse dynamics | [`manif`](https://github.com/artivis/manif) [`lie-group-controllers`](https://github.com/ami-iit/lie-group-controllers) |
| [YarpUtilities](https://github.com/ami-iit/bipedal-locomotion-framework/tree/master/src/YarpUtilities) | Utilities library for retrieving data and from YARP structures | [`YARP`](https://www.yarp.it/git-master/) |
| [PerceptionInterface](https://github.com/ami-iit/bipedal-locomotion-framework/tree/master/src/RobotInterface) | Generic interface classes to adapt to perception data formats like images and point clouds | [`OpenCV`](https://github.com/opencv/opencv) [`PCL`](https://github.com/PointCloudLibrary/pcl) |
| [PerceptionCapture](https://github.com/ami-iit/bipedal-locomotion-framework/tree/master/src/Perception) | Library containing driver classes for perception devices | [`OpenCV`](https://github.com/opencv/opencv) [`PCL`](https://github.com/PointCloudLibrary/pcl) [`realsense2`](https://github.com/IntelRealSense/librealsense) |
| [PerceptionFeatures](https://github.com/ami-iit/bipedal-locomotion-framework/tree/master/src/Perception) | Library containing perception algorithms useful for locomotion | [`OpenCV`](https://github.com/opencv/opencv) |
| [SimplifiedModelControllers](https://github.com/ami-iit/bipedal-locomotion-framework/tree/master/src/SimplifiedModelControllers) | Library containing the controllers based on simplified models | [`manif`](https://github.com/artivis/manif) |
| Component | Description | Additional Dependencies |
| :--------------------------------------------: | :----------------------------------------------------------: | :----------------------------------------------------------: |
| `Framework` | Interface library that gathers all the exported components, includable with the file `BipedalLocomotion/Framework.h` | - |
| [`AutoDiff`](https://github.com/ami-iit/bipedal-locomotion-framework/tree/v0.14.0/src/AutoDiff) | Bridge between CppAD and Eigen | [`CppAD`](https://coin-or.github.io/CppAD/doc/cppad.htm) |
| [`ContactModels`](https://github.com/ami-iit/bipedal-locomotion-framework/tree/v0.14.0/src/ContactModels) | Models to describe the contact between robot and enviroment | - |
| [`Contacts`](https://github.com/ami-iit/bipedal-locomotion-framework/tree/v0.14.0/src/Contacts) | Syntactic description of a contact | [`manif`](https://github.com/artivis/manif) [`nlohmann json`](https://github.com/nlohmann/json/) |
| [`CommonConversions`](https://github.com/ami-iit/bipedal-locomotion-framework/tree/v0.14.0/src/Conversions) | Common conversion utilities used in the framework | - |
| [`ManifConversions`](https://github.com/ami-iit/bipedal-locomotion-framework/tree/v0.14.0/src/Conversions) | Library related conversion utilities used in the framework | [`manif`](https://github.com/artivis/manif) |
| [`matioCppConversions`](https://github.com/ami-iit/bipedal-locomotion-framework/tree/v0.14.0/src/Conversions) | Library related conversion utilities used in the framework | [`matio-cpp`](https://github.com/ami-iit/matio-cpp) |
| [`CasadiConversions`](https://github.com/ami-iit/bipedal-locomotion-framework/tree/v0.14.0/src/Conversions) | Library related conversion utilities used in the framework | [`CasADi`](https://github.com/casadi/casadi) |
| [`Estimators`](https://github.com/ami-iit/bipedal-locomotion-framework/tree/v0.14.0/src/Estimators) | Library containing observers | - |
| [`FloatingBaseEstimator`](https://github.com/ami-iit/bipedal-locomotion-framework/tree/v0.14.0/src/Estimators) | Library containing floating base estimators | [`manif`](https://github.com/artivis/manif) |
| [`RobotDynamicsEstimator`](https://github.com/ami-iit/bipedal-locomotion-framework/tree/v0.14.0/src/Estimators) | Library containing floating base estimators | [`manif`](https://github.com/artivis/manif) |
| [`GenericContainer`](https://github.com/ami-iit/bipedal-locomotion-framework/tree/v0.14.0/src/GenericContainer) | Data structure similar to ``span`` but resizable. | - |
| [`IK`](https://github.com/ami-iit/bipedal-locomotion-framework/tree/v0.14.0/src/IK) | Inverse kinematics | [`manif`](https://github.com/artivis/manif) [`osqp-eigen`](https://github.com/robotology/osqp-eigen) |
| [`Math`](https://github.com/ami-iit/bipedal-locomotion-framework/tree/v0.14.0/src/Math) | Library containing mathematical algorithms | [`manif`](https://github.com/artivis/manif) |
| [`ML`](https://github.com/ami-iit/bipedal-locomotion-framework/tree/v0.14.0/src/ML) | Library containing deep learning algorithms | [`onnxruntime`](https://onnxruntime.ai/) |
| [`ParametersHandler`](https://github.com/ami-iit/bipedal-locomotion-framework/tree/v0.14.0/src/ParametersHandler) | Library for retrieving parameters from configuration files | [`YARP`](https://www.yarp.it/git-master/) (only if you want the `YARP` implementation) [`tomlplusplus`](https://github.com/marzer/tomlplusplus/) (only if you want the `toml` implementation) |
| [PerceptionInterface](https://github.com/ami-iit/bipedal-locomotion-framework/tree/v0.14.0/src/RobotInterface) | Generic interface classes to adapt to perception data formats like images and point clouds | [`OpenCV`](https://github.com/opencv/opencv) [`PCL`](https://github.com/PointCloudLibrary/pcl) |
| [PerceptionCapture](https://github.com/ami-iit/bipedal-locomotion-framework/tree/v0.14.0/src/Perception) | Library containing driver classes for perception devices | [`OpenCV`](https://github.com/opencv/opencv) [`PCL`](https://github.com/PointCloudLibrary/pcl) [`realsense2`](https://github.com/IntelRealSense/librealsense) |
| [PerceptionFeatures](https://github.com/ami-iit/bipedal-locomotion-framework/tree/v0.14.0/src/Perception) | Library containing perception algorithms useful for locomotion | [`OpenCV`](https://github.com/opencv/opencv) |
| [`Planners`](https://github.com/ami-iit/bipedal-locomotion-framework/tree/v0.14.0/src/Planners) | Library containing planner useful for locomotion | [`manif`](https://github.com/artivis/manif) [`CasADi`](https://web.casadi.org/) [`qhull`](http://www.qhull.org/) |
| [`ReducedModelControllers`](https://github.com/ami-iit/bipedal-locomotion-framework/tree/v0.14.0/src/ReducedModelsController) | Controller based on reduced models, e.g., `CentroidalMPC` | [`CasADi`](https://github.com/casadi/casadi)|
| [`RobotInterface`](https://github.com/ami-iit/bipedal-locomotion-framework/tree/v0.14.0/src/RobotInterface) | Library for communicating with the robot | [`YARP`](https://www.yarp.it/git-master/) (only if you want the `YARP` implementation) |
| [SimplifiedModelControllers](https://github.com/ami-iit/bipedal-locomotion-framework/tree/v0.14.0/src/SimplifiedModelControllers) | Controllers based on simplified models, i.e, LIPM. | - |
| [System](https://github.com/ami-iit/bipedal-locomotion-framework/tree/v0.14.0/src/System) | Description of discrete and continuous dynamical systems | - |
| [TSID](https://github.com/ami-iit/bipedal-locomotion-framework/tree/v0.14.0/src/TSID) | Task space inverse dynamics | [`manif`](https://github.com/artivis/manif) [`lie-group-controllers`](https://github.com/ami-iit/lie-group-controllers) |
| [TextLogging](https://github.com/ami-iit/bipedal-locomotion-framework/tree/v0.14.0/src/TextLogging) | Helper library to display messages into the console | [`YARP`](https://www.yarp.it/git-master/) (only if you want the `YARP` implementation) [`ros-humble`](https://docs.ros.org/en/humble/) (if you want the `ros2` implementation) |
| [YarpUtilities](https://github.com/ami-iit/bipedal-locomotion-framework/tree/v0.14.0/src/YarpUtilities) | Utilities library for retrieving data and from YARP structures | [`YARP`](https://www.yarp.it/git-master/) |

\warning ⚠️ Including `BipedalLocomotion/Framework.h` may result in higher compilation time because of the inclusion of headers which may not be used in your project. It is always suggested to follow the [IWYU](https://github.com/include-what-you-use/include-what-you-use/blob/cc0fad4be0db26e40713b6076263f204a311b573/docs/WhyIWYU.md) paradigm. This applies also for the CMake targets. It is suggested to link only the targets used in your project.

Expand Down Expand Up @@ -114,4 +120,9 @@ target_link_libraries(example PRIVATE BipedalLocomotion::Math)

The **bipedal-locomotion-framework** is an open-source project, and is thus built with your contributions. We strongly encourage you to open an issue with your feature request. Once the issue has been opened, you can also proceed with a pull-request 🚀

\section maintainers 🧑‍💻 Maintainers

- Giulio Romualdi ([@GiulioRomualdi](https://github.com/GiulioRomualdi))
- Stefano Dafarra ([@S-Dafarra](https://github.com/S-Dafarra))

**/

0 comments on commit 2736a04

Please sign in to comment.