Modell

Der Simulationstakt

Ein Zyklus alle 50 ms — lesen, rechnen, zurückschreiben, überwachen

Zuletzt aktualisiert: 13. August 2026

Die Simulation läuft nicht ereignisgesteuert, sondern im festen Zyklus. Jeder Takt macht dasselbe.

  1. 1

    Eingänge lesen

    Der Orchestrator holt das Prozessabbild vom Gateway (GET /api/state).

  2. 2

    Physik rechnen

    compute_step führt den Zustand um Δt = 0,05 s fort.

  3. 3

    Zustand melden

    Der Zustand geht per WebSocket an den Browser und per UDP an den Debug-Kanal.

  4. 4

    Ausgänge vergleichen

    Nur geänderte Melder werden geschrieben — das hält die serielle Strecke frei.

Ein Takt der Simulationsschleife
Ein Takt der Simulationsschleife

Warum nur Änderungen geschrieben werden

Zehn Melder bei 20 Hz wären 200 Schreibbefehle pro Sekunde über eine serielle Leitung, von denen fast alle nichts ändern. Der Vergleich mit dem letzten Zustand reduziert das auf die tatsächlichen Flanken.

Wenn die Verbindung abreißt

Die Kopplung überwacht sich selbst: ein Heartbeat alle 0,5 s, dazu ein dreistufiger Watchdog mit 2 s Grenze. Bleibt das Lebenszeichen aus, stellt die Firmware der Signalbrücke selbständig einen definierten Zustand her, statt den letzten Stand einzufrieren.

Anwendungsschicht: FastAPI-Server, Simulationsschleife und Modell-Lader
Anwendungsschicht: FastAPI-Server, Simulationsschleife und Modell-Lader