Systemarchitektur
Vier Ebenen von der Steuerung bis zur Anzeige im Browser
Zuletzt aktualisiert: 13. August 2026
Der Aufbau lässt sich in vier Ebenen lesen: Steuerung auf 24 V, Wandlerstufen, Signalbrücke und schließlich die Simulation auf einem Raspberry Pi.

Der Weg eines Signals
- 1
Steuerung schaltet
Ein Ausgang der LOGO! legt 24 V auf einen Kanal.
- 2
Pegel wandeln
Ein Optokoppler macht daraus 5 V, galvanisch getrennt.
- 3
Brücke lesen
Der Arduino Mega überträgt den Zustand seriell mit 115200 Baud.
- 4
Modell rechnen
Das Gateway reicht die Eingänge an den Orchestrator, der das Modell im Takt rechnet.
- 5
Zurückmelden
Geänderte Melder gehen denselben Weg zurück, über Relaiskontakte wieder auf 24 V.

Software in drei Schichten
Die Darstellungsschicht ist der Browser: Canvas-2D-Animation, Bedienpanel, Fehlerlog,
versorgt über WebSocket. Die Anwendungsschicht ist orchestrator.py auf Port 8050 — sie
taktet die Simulation, lädt Modelle zur Laufzeit nach und verteilt die Ergebnisse. Die
Kommunikationsschicht ist gateway.py auf Port 8100, die Brücke zwischen serieller
Hardware und HTTP, mit eigenem Lese- und Schreib-Thread und automatischer
Wiederverbindung.

Ein Modell ist ein Plugin
Jedes Anlagenmodell hat denselben Aufbau und dieselbe Schnittstelle. Der Orchestrator kennt nur einen Aufruf:
compute_step(inputs, dt) → { plant, sensors, outputs_logical }
inputs sind die zwölf Kanäle der Steuerung, dt die Schrittweite. Zurück kommen der
physikalische Zustand, die Sensorbits und die logischen Ausgänge. Weil das für alle
Modelle gilt, laufen inzwischen 13 Anlagen auf derselben Plattform, ohne dass am
Orchestrator etwas geändert werden musste.
