### A voir également

- Profil
- Publications -----------------------------
**Arboris-python**- Daenim
- LQPctrl
- Thèse
- Examples for Arboris
- XDE-ISIR

### Arboris-python

**Titre**: Chercheur Contractuel

**Ne fait plus partie de l'unité**

# Requirements

Arboris-python works on Python2.7 (Seems to work with Python3.2, but cannot provide guarantees due to lack of tests).

It requires (they me be contained in the installation files) :

- numpy to compute and simulate models,
- h5py to save simulation data as pickle,
- matplotlib to plot results as Matlab,
- and pycollada to write collada files.
- The visualization is done with pydaenim (in a web browser based on webgl) or with daenim (based on OpenSceneGraph).

# Download Arboris-python

### For Windows

Choose the corresponding installer; They contain all the required modules and you can choose what you want to install.

- for python 2.7 32bits: arboris_setup_win32.exe
- for python 2.7 64bits: arboris_setup_win64.exe

### For Ubuntu

For Ubuntu distributions, required packages are available in apt: apt:arboris-python-dep.

Then you have to install pycollada, pydaenim & arboris.

This script does it for you.

### For Macintosh (Still in development)

Quite similar to Ubuntu. You have to install the required packages, download arboris-python from github and install with the following command:

For Macintosh, many modules are available in macports. I recommand Macport to install the required package. Here is a script to perform this installation.

To execute this script, run:

bash install_arboris_python_mac.sh

Then you have to install pycollada, pydaenim & arboris manually (I hope it works...)

# Python Integrated Development Environment (IDE)

Getting a good python IDE may not be easy, that is why I give you my recommendations:

- A well-known cross-platform IDE is Spyder.
- On Windows, I strongly recommand PyScripter
- On Ubuntu, if gedit with the programmation plugin is not sufficient, I propose Eric4 (available on repository).
- On mac, IEP seems to do the work.

**That's all. Enjoy!**

### Problems

For any other problem, contact me at email address above.

# About Arboris

Arboris is a rigid body dynamics and contacts simulator written in python.

Arboris includes a generic and easily extensible set of joints (singularity-free multi-dof joints, non-honolomic joints, etc.) which are used to model open rigid mechanisms with a minimal set of state variables.

The dynamics of these systems are computed in a form similar to the Boltzmann-Hamel equations. Using time-stepping and a semi-implicit Euler integration scheme, a first-order approximation of the model is also computed. This allows for additional constraints such as contacts and kinematic loops to be solved using a Gauss-Seidel algorithm.

Arboris is mostly useful for robotic applications and human motion studies. The python language makes it particularly suited for fast-paced development (prototyping) and education.

### Background

In 2005, Alain Micaelli, a researcher from CEA LIST, wrote a first version of the simulator in the matlab language. It was an implementation (and often an extension) of the algorithms described in [Park2005], [Murray1994] and [Liu2003].

He was later joined by Sébastien Barthélemy, from ISIR/UPMC, who reorganized the code to take advantage of the early object-oriented features of matlab. It eventually became clear that the language was ill-designed, and that a full rewrite was necessary. With the help of Joseph Salini, also from ISIR/UPMC, Arboris-python was born. The resulting framework is now quite similar to what

is presented in [Duindam2006]. The matlab version of the simulator is now deprecated.

.. [Murray1994]

Richard M. Murray, Zexiang Li and S. Shankar Sastry, "A Mathematical Introduction to Robotic Manipulation", CRC Press, 1994.

.. [Park2005]

Jonghoon Park, "Principle of Dynamical Balance for Multibody Systems", Multibody System Dynamics, vol. 14, number 3-4, pp. 269-299, 2005.

.. [Liu2003]

T. Liu and M. Y. Wang, "Computation of three dimensional rigid body dynamics of multiple contacts using time-stepping and Gauss-Seidel method", IEEE Transaction on Automation Science and Engineering, submitted, November 2003.

.. [Duindam2006]

V. Duindam, "Port-Based Modelling and Control for Efficent Bipedal Walking Robots", University of Twente, 2006.