Git Product home page Git Product logo

dynasors's Introduction

DynaSoRS

CI_DYNASORS

Dynamic SimulatOr of Rigid Systems

A small collection of MATLAB classes and functions that can be used to simulate rigid body systems kinematics, dynamics, and control.

Operating system

The code has been tested on Ubuntu 20.04.3 LTS.

Dependencies

  • MATLAB, tested up to R2022a.

  • DynaSoRS is based on the iDyntree library. To install iDyntree and its dependencies, refer to the iDyntree README. When compiling iDyntree, it is required to set the option IDYNTREE_USES_MATLAB to ON. In order to use the iDyntree bindings, and the iDyntree wrappers for MATLAB, add to the MATLAB path the path/where/the/iDyntree/generated/mex/file/is.

  • Some classes depend on casadi library. Download and install the MATLAB bindings from the website.

  • Optional: some examples depend on wbc, a MATLAB library for multi-body systems dynamics, kinematics and control available inside whole-body-controllers. To download the library, follow the instructions in the whole-body-controllers README.

  • Optional: the example on iRonCub-Mk1_1 depends on wbc library and on ironcub-mk1-software.

Installation and usage

On Ubuntu

Provided that the dependencies are met, git clone or download this repository. Then, run the following commands:

mkdir build & cd build
cmake .. -DCMAKE_INSTALL_PREFIX="/path/to/desired/install/dir"
make install

In order to use the library, add to the MATLAB path the path/where/the/installed/dynasors/package/is. A script called startupDynasors.m is generated automatically inside the build folder. Run the script once to permanently add the (installed) +dynasors package to the MATLAB path.

Tests

The main classes of the library are tested in the tests folder. This is also a good way to verify if the code has been installed correctly.

Examples

Examples of usage of the library are given in the examples folder:

  • simpleRobot: dynamics simulation and control of a simple fixed-base serial robot.
  • iRonCub-Mk1_1 dynamics simulation and QP control of a floating-base jet-powered humanoid robot.

Maintainer

Gabriele Nava (@gabrielenava).

dynasors's People

Contributors

gabrielenava avatar

Stargazers

 avatar  avatar

Watchers

 avatar  avatar  avatar

dynasors's Issues

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.