Simulator

Our wheeled-drone simulator is publicly available. The demo below is not a recording: it solves the simulator’s physics in your browser as you watch.

Load the physics engine?

Running the demo transfers the WebAssembly build of MuJoCo (about 3.5–12 MB, depending on the server's compression). Your browser caches it, so this happens once.

wall ↑ height toward wall →
Target height
1.30 m
Toward wall
1.93 m (+0.13)
Vehicle height
0.60 m
Scenario
Time
0.0 s
Height
0.60 m
Wall
not touching
Real-time factor

Move the target by dragging the green sphere in the 3D view or by dragging on the pad in the lower left (arrow keys when the pad has focus, Shift for bigger steps). Elsewhere in the 3D view, drag to orbit and scroll to zoom.

What you are looking at

A vehicle with four rotors and two wheels. Its shape comes from measurements of the lab’s own airframe.

To climb the wall it does nothing special: the target position is simply placed behind the wall face. The vehicle tries to reach it, the wall stops it, and the wall’s reaction becomes the force pressing the wheels into the surface. The wheels roll, so vertical motion stays free. There is no dedicated pressing controller.

Attitude is controlled without decomposing rotation into three angles; the rotation matrix is used directly. That formulation does not break down at any attitude, and it is the idea at the center of our work on rotational control. See the Research page for more.

The simulator itself

It handles single and multiple vehicles, walls and curved terrain, and runs with a real flight controller in the loop. The source, its license and its citation information are on GitHub.