This is a real-time 2D counterpart of the 3D MEMS gyroscope simulator: instead of evaluating a closed-form frequency response, this engine numerically integrates the coupled equations of motion every animation frame with a 4th-order Runge–Kutta stepper, so the proof mass you see tracing the drive/sense diagram is the literal output of the ODE solver, not a pre-solved formula.
Drive: m x'' + c_x x' + k_x x = F0 cos(ω t)
Sense: m y'' + c_y y' + k_y y = −2 m Ω x'
The Coriolis pseudo-force −2mΩẋ only exists while the drive mass is moving (ẋ ≠ 0) and while the chip is rotating (Ω ≠ 0) — it is the product of those two things, which is exactly why a stationary sensor shows zero sense-axis motion no matter how hard the drive rings, and why the sense signal switches on the instant rotation begins. To keep the coupled ring-up directly watchable in real time (a literal 20 kHz MEMS resonance would need a strobe to see at all), the drive/sense natural frequencies here are scaled to a human-visible ~2 Hz — the governing equations, the Coriolis coupling term and the mode-matching trade-off are physically identical to the full-scale device.
The calibration curve below the diagram is built the same way: for a sweep of rotation rates, this engine runs a second, fast (non-rendered) integration of the same ODEs out to steady state and records the settled sense-axis amplitude — a genuine measurement from the integrated trajectory, not a formula. Because the underlying system is a linear pair of coupled oscillators, that measured amplitude comes out exactly proportional to Ω (R² ≈ 1.000 for any mismatch/Q you dial in); the fitted slope is the sensor's scale factor.
- Drive frequency offset — detunes the drive forcing away from the mass's own resonance fx, shrinking the drive amplitude X.
- Rotation rate Ω — the quantity being measured; the settled sense amplitude scales linearly with it.
- Mode mismatch Δf — the gap between the two mechanical resonances; "Mode-match" drives it to zero for resonant amplification of the Coriolis signal.
- Sense-mode Qy — set by damping; higher Q sharpens and raises the sense resonance but takes longer (more ring-up time) to settle, both here and on a real chip.
The amber trail is the actual x–y path being integrated: at Ω = 0 it collapses to a line along the drive axis; any rotation opens it into a Lissajous-like ellipse whose vertical extent is the live sense signal.