Better Actuator Models (BAM)#
What is it?
BAM (for Better Actuator Models) is a library to identify and use servo-actuator models in simulation engines. In particular, it provides extended friction models, which are more accurate than the default friction models used in most simulators (e.g., MuJoCo).
The animation above is a face-to-face comparison of the default MuJoCo friction model (M1) and an extended friction model (M6) identified for Dynamixel MX-64 and MX-106 servo-actuators lifting a load.
Features#
Pre-identified friction models for common servo-actuators (e.g., XL320, XL330, MX64, MX106…)
API for direct integration of friction models into MuJoCo CPU and mjlab (MuJoCo Warp)
Extended friction models, including Stribeck effect, load-dependance
Identification process for servo-actuator with friction models
Getting started#
Pick the path that matches where you are:
Your motor is already in the library
(xl320, xl330, mx64, mx106, …).
Load its parameters and plug them into your MuJoCo or mjlab simulation right away.
Your motor is not in the library yet.
Build a simple pendulum test bench, record trajectories under varying load, and run the identification pipeline to fit a friction model.
You want to understand the modeling approach.
Dive into the pendulum dynamics, the friction-budget formulation, and the six model variants M1–M6.
Reference paper#
This library implements the modeling and identification approach introduced in the paper “Extended Friction Models for the Physics Simulation of Servo Actuators” by Marc Duclusaud, Gregoire Passault, Vincent Padois, and Olivier Ly .
If you use BAM or the friction models provided in this library for your scientific work, please cite the publication:
@inproceedings{duclusaud2025extended,
title={Extended Friction Models for the Physics Simulation of Servo Actuators},
author={Duclusaud, Marc and Passault, Gr{\'e}goire and Padois, Vincent and Ly, Olivier},
booktitle={2025 IEEE International Conference on Robotics and Automation (ICRA)},
pages={12091--12097},
year={2025},
organization={IEEE}
}
If you also wish to cite the software directly, you may use:
@software{BAM,
title = {{BAM: Better Actuator Models}},
author = {Duclusaud, Marc and Passault, Grégoire},
license = {Apache-2.0},
url = {https://github.com/Rhoban/bam},
version = {0.0.1},
year = {2024}
}
Contents