Echtzeit-Kern

Visueller Node-Editor & Echtzeit-Engine

Die Node-Engine ist das Herz von Melanite: ein visueller Graph typisierter Nodes, der als harte Echtzeit-Regelschleife direkt auf dem Gerät läuft. Du verdrahtest im Browser; ausgeführt wird, sobald du den Draht verbindest. Und sie misst ihren eigenen Determinismus, laufend – du musst uns also nichts einfach glauben.

Status Hardware-verifiziert

Der Melanite-Node-Editor auf einem laufenden Gerät mit einem Photovoltaik-Logging-Graphen: drei String-Eingänge sowie Netz-, Batterie- und Einspeisewerte, verdrahtet in zwei Datenlogger-Nodes.
Der Editor auf einem laufenden Gerät. Links die Palette, an jedem Port ein Live-Wert, unten links RUN — zwischen dieser Ansicht und der Maschine liegt kein Kompilierschritt.

In einem Satz

Die Node-Engine führt ein visuelles Regelungsprogramm als deterministische Echtzeitschleife direkt auf dem Gerät aus. Hardware-verifiziert unter einem vollen Produktions-Motion-Stresstest bei 1 ms Zyklus: Liefer-Jitter max. 0,994 µs (p99.9 0,256 µs), Worst-Case-Aufwecklatenz unter 20 µs, Ausführungszeit max. 37,8 µs, keine GC-Pausen und keine unvollständigen Feldbus-Frames – die 1-ms-Deadline mit rund 10× Reserve eingehalten. Der Zyklus ist bis hinunter auf 250 µs konfigurierbar. Eine zweite, parallele Schleife mit ~60 Hz treibt LED- und visuelle Ausgaben, damit Beleuchtung der Regelung nie Zeit stiehlt. 2-DOF-PID, Kaskadenregelung, Mathematik, Logik und wiederverwendbare Funktionsbausteine sind vollwertige Nodes, auf dem Gerät im Browser verdrahtet und live übernommen – keine IDE, kein Kompilierschritt, kein Deployment.

Fähigkeiten

Geschlossene Regelkreise

2-DOF-PID mit Anti-Windup und stoßfreier Hand/Automatik-Umschaltung, Kaskadenregelkreise, Hysterese, Sollwertprogramme mit Rampen und Haltezeiten, PWM-/Zeitproportional-Ausgang, PT1-Filter, Differenzierer und ein Einheitsverzögerungs-Node (z⁻¹), um Rückkopplungen im Graphen zu schließen.

Jede Kategorie, eine Palette

Keine Zusatzpakete: Mathematik, Logik, Regelung, Zeit, I/O, Variablen, Views, Vision, Canvas, Spatial, Motion, Geräte, Smart Home, Audio, Text, Diagnose, Logging, HMI, Plotting, Eingaben und wiederverwendbare Sub-Netzwerke — alles im Lieferumfang.

Echtzeit-Determinismus

Eigener Echtzeitprozess auf einem PREEMPT_RT-Kernel, CPU-Partitionierung fest im Image und ein nativer Treiber, der die Feldbus-NIC komplett aus dem Linux-Netzwerkstack herausnimmt. Verifiziert bei 1 ms: Liefer-Jitter unter 1 µs, Worst-Case-Aufwecklatenz < 20 µs.

Sie misst sich selbst

Allokationsfreie Latenz-Histogramme (p50/p90/p99/p99.9/max), Zwei-Punkt-Jitter, ein Journal zur Zuordnung von Stalls und Allokations-Stolperdrähte sind Teil des Produkts – live auf jedem Gerät, kein einmaliges Laborergebnis.

Zwei-Schleifen-Architektur

Eine harte Echtzeitschleife fährt die Regelung im eingestellten Zyklus; eine separate Schleife mit ~60 Hz treibt LED- und visuelle Ausgaben – beide unabhängig konfigurierbar, sodass Rendering das Regelungs-Timing nie stört.

Live-Bearbeitung

Bearbeite den laufenden Graphen im Browser – Slider- und Parameteränderungen wirken sofort auf den laufenden Prozess, ohne Neukompilieren oder Download. Kompilier-Isolation pro Netzwerk heißt: Ein defektes Netzwerk reißt die anderen nicht mit.

Funktionsbausteine & typisierte Ports

Kapsle einen Teilgraphen als wiederverwendbares, verschachtelbares Sub-Netzwerk. Ein Port-Typsystem mit zwei Familien (skalare Werte vs. Referenzwerte wie Views und Bilder) lehnt unsinnige Drähte schon beim Verbinden ab – ohne Kosten für die Echtzeit.

Undo, überall

Editorweite Historie mit Strg+Z / Strg+Umschalt+Z – und ein kompletter Durchgang des KI-Assistenten fällt zu einem einzigen Undo-Schritt zusammen.

Durchgespielte Beispiele

Temperaturregelung eines Laborreaktors (HiClave)

Einen Reaktor über drei Betriebsarten auf Sollwert halten und dabei den Heizmantel vor Überschwingen schützen.

So geht's

Eine ΔT-begrenzte Kaskade – ein äußerer PID auf die Produkttemperatur gibt den Sollwert eines inneren Mantel-PID vor – läuft als Graph mit 146 Nodes, liest analoge EtherCAT-Eingänge und steuert per PWM über eine Beckhoff EL2008 ein SSR an, dazu ein Sollwertprogramm mit 8 Segmenten und eine Statusleuchte. Auf dem Gerät gebaut, hardware-verifiziert.

Servo-Motion bei 1 kHz, gemessen

Koordinierte Servobewegung fahren und belegen, dass die Schleife keinen Takt verpasst hat.

So geht's

Ein ruckbegrenzter Profilgenerator steuert CiA-402-Servos über EtherCAT im Echtzeitzyklus, während die eingebauten Metriken Aufwecklatenz, Ausführungszeit, Deadline-Jitter und Feldbus-Frame-Fehler aufzeichnen. Ein rund 15-minütiger Stresstest unter voller Bewegung ergab einen Liefer-Jitter unter 1 µs und null unvollständige Frames – aus der eigenen Scorecard des Geräts, nicht von einem separaten Prüfstand.

Warum Melanite

CODESYS liefert dir eine Echtzeit-Engine, sperrt das Programmieren aber hinter eine Desktop-IDE und einen Download-Zyklus. Node-RED ist browsernativ, läuft aber auf einer Event-Loop, nicht in einem deterministischen Echtzeitzyklus. Melanite ist beides: hardware-verifizierte Echtzeitregelung, live im Browser erstellt – und es veröffentlicht seine gemessenen Jitter-Perzentile samt Messbedingungen, damit du die Aussage auf deiner eigenen Hardware prüfen kannst.

FAQ

Wie schnell und wie deterministisch ist die Echtzeitschleife?

Der veröffentlichte, hardware-verifizierte Wert ist ein 1-ms-Zyklus auf dem Raspberry Pi CM5 unter voller Produktions-Motion-Last: Liefer-Jitter max. 0,994 µs (p99.9 0,256 µs), Worst-Case-Aufwecklatenz unter 20 µs, Ausführungszeit max. 37,8 µs, keine GC-Pausen und keine unvollständigen EtherCAT-Frames. Damit ist die 1-ms-Deadline mit etwa 10× Reserve eingehalten. Die Zykluszeit ist bis hinunter auf 250 µs konfigurierbar, wir veröffentlichen aber nur Zahlen, die wir bei dieser Rate gemessen haben.

Bremst Beleuchtung oder Visualisierung die Regelung aus?

Nein. Die Regelung läuft in der harten Echtzeitschleife mit deinem eingestellten Zyklus; LED- und visuelle Ausgaben laufen in einer separaten Schleife mit ~60 Hz. Beide laufen parallel und sind unabhängig konfigurierbar, sodass Rendering der Regelung nie Zeit stiehlt.

Muss ich meine Logik kompilieren oder deployen?

Nein. Du verdrahtest den Graphen im Browser, und Änderungen wirken sofort auf den laufenden Prozess. Es gibt keinen Kompilierschritt, kein Build-Artefakt und kein Deployment.

Kann ich die Timing-Angaben selbst prüfen?

Ja – genau darum geht es. Jedes Gerät bringt die Latenz-Histogramme, die Zwei-Punkt-Jitter-Messung, das Ausführungs-Histogramm und die Feldbus-Fehlerzähler mit, aus denen unsere veröffentlichten Zahlen stammen, auf einer Live-Scorecard-Seite. Auch das Standard-Linux-Tool `cyclictest` ist im Image, damit du gegen eine unabhängige Referenz gegenprüfen kannst.

Welche Regelungsbausteine sind enthalten?

2-DOF-PID mit Anti-Windup, Kaskadenregelung, Hysterese, Sollwertprogramme mit Rampen und Haltezeiten, PWM-/Zeitproportional-Ausgang, ein PT1-Filter, ein Differenzierer, IEC-Timer (TON/TOF/TP), vollständige Mathematik-Nodes, boolesche Logik, eine Einheitsverzögerung für Rückkopplungen und Drehgeber-Eingang – alles Standard, keine Zusatzpakete nötig.

Kostenlos, voller Funktionsumfang

Alle Funktionen, kostenlos für die private Nutzung.

Ein Binary läuft in jeder Stufe — die Lizenz schaltet nur Berechtigungen, nie den Funktionsumfang.