TL;DR
A ballbot must lean to accelerate. Our jerk-model MPC-CBF never asks for more lean than the tracker allows, and conformal prediction handles unpredictable obstacles.
Jerk-model MPC-CBF
A simple planning model with control barrier functions for collision avoidance.
Tilt-consistent bound
Acceleration is limited by the steepest lean the tracker can safely reach.
HSMC-ESO-ECBF tracker
Tilt-safe tracking that keeps the lean angle below its limit.
Conformal prediction
Predicted obstacles are inflated to cover unpredictable motion.
MuJoCo simulation
All experiments run on a high-fidelity, contact-rich MuJoCo model of the ballbot rather than on the simplified models used for design. The controllers and the planner never see this model; they only act on it.
The robot model is adapted from the open-source asRoBallet MuJoCo model.
- Free-floating body balancing on a ball, driven by three omni wheels spaced 120° apart with axles tilted 45°.
- Every passive roller of the omni wheels is simulated, with its own contacts against the ball.
- Ball–floor contact with sliding, torsional and rolling friction on an elliptic friction cone.
- Coulomb friction and damping in the wheel and roller joints, absent from the design models.
- Wheel torques saturated at ±4 N·m; controllers run at the simulation rate.
36
passive rollers in contact with the ball
2 ms
time step (500 Hz), implicit integrator
6-D
ball–floor friction: sliding, torsional, rolling
±4 N·m
wheel torque limit
Balance and tilt-safe tracking
Balance control
Tilt-safe tracking
Obstacle avoidance
Predefined obstacles
Suddenly turning obstacle
Path following
Random moving obstacles
BibTeX
@article{safeballbot2026,
title = {Safe-Ballbot: Tilt-Consistent {MPC} with Control Barrier Functions for Ballbot Navigation},
author = {Anonymous},
year = {2026},
note = {Under review}
}