Skip to content

quadrotor/tumble

A scenario of the Quadrotor model, from tools/trace/scenarios/quadrotor/tumble.hpp.

✓ pass

  • The clang run (clang 18.1 optimized) matches the committed trace.
  • The gcc run (gcc 13.3 optimized) matches the committed trace.

Shown on

These players show the same trace, with panels chosen to explain it:

Every channel

quadrotor/tumble: every channel 1× real time
World: z up · Body: x forward, y left, z up
Rotors (PX4 Quad X): 0 FR, 1 RL spin CCW · 2 FL, 3 RR spin CW
Thrust arrows: 1 N = 4 cm · Grid: 0.5 m · Body axes: x red, y green, z blue
position [m] x y z
velocity [m/s] x y z
body_rates [rad/s] x y z
roll_pitch_yaw [rad] roll pitch yaw
kinetic_energy [J] kinetic_energy
angular_momentum [N·m·s] [0] [1] [2]
t = 0.000 s / 5.000 s

Keys (with the player focused): Space play/pause · ← → one sample (Shift: ten) · Home/End · [ ] speed

5 s of the model/quadrotor scenario tumble.hpp, 501 samples every 0.01 s. The panels plot every channel that changes: position, velocity, body_rates, roll_pitch_yaw, kinetic_energy, angular_momentum. Pass criteria: BB-V3 energy_and_momentum_relative_drift_max <= 0.000001.

  • ✓ passBB-V3 energy_and_momentum_relative_drift_max = 2.18e-11 (<= 1.00e-6), computed by the scenario harness

Constant over the run

  • rotor_speeds = [0, 0, 0, 0] rad/s
  • rotor_speeds_setpoint = [0, 0, 0, 0] rad/s
  • rotor_thrusts = [0, 0, 0, 0] N

All scenarios