KPA Motion Bridge ist ein Add-on zur KPA Motion Control Library, das eine Echtzeit-Motion-Anwendung mit Programmen außerhalb des Echtzeitsystems verbindet. Mit KPA Motion Bridge können eine Bedienoberfläche, eine Liniensteuerung oder eine übergeordnete Anlagensteuerung Bewegungsabläufe auf einem Echtzeitcomputer definieren, starten und überwachen, ohne selbst innerhalb des Motion-Zyklus ausgeführt werden zu müssen.
Zwei Seiten. Eine Verbindung.
Serveranwendung
Echtzeitcomputer
Der Server, KPA Motion Bridge Server (im Folgenden Serveranwendung), läuft auf dem Echtzeitcomputer und führt die Motion-Anwendung mithilfe der KPA Motion Control Library aus.
Client
Nicht-Echtzeitcomputer
Der Client ist Ihr Programm auf dem Nicht-Echtzeitcomputer. Er sendet dem Server eine Folge von Aufrufen, mit denen Achsen und Funktionsbausteine erstellt, die Bausteine miteinander verknüpft und die Anwendung gestartet oder gestoppt werden. Während die Anwendung läuft, kann der Client deren Daten auslesen und die zulässigen Parameter anpassen.
Auf bewährten Technologien aufgebaut
Die beiden Seiten kommunizieren über BridgeService auf Basis von Eclipse eCAL. Die Anfragen und Antworten werden als Protobuf-Nachrichten übertragen.
Funktionsweise
Eine Motion-Bridge-Anwendung durchläuft vier Phasen
01
Client-Entwicklung
Motion Bridge stellt die Bridge-Protobuf-Definitionen bereit. Der Kunde kompiliert diese mit protoc zu Nachrichtencode für die jeweilige Client-Programmiersprache, bindet die Drittanbieterbibliothek Eclipse eCAL in den Client ein und implementiert die Anwendungslogik.
02
Serverstart
Die Serveranwendung wird auf dem Echtzeitcomputer gestartet und wartet auf eine Client-Verbindung über das Netzwerk oder über den gemeinsam genutzten Speicher.
03
Konfiguration
Der Client erstellt die Motion-Umgebung mit ihren Achsen und anschließend die Funktionsbausteine sowie die Verknüpfungen zwischen ihnen.
04
Zyklischer Betrieb
Der Client startet den zyklischen Betrieb. Die Serveranwendung führt die Funktionsbausteine aus und überträgt Daten entsprechend den konfigurierten Verknüpfungen zwischen den Bausteinen. Während die Anwendung läuft, kann der Client die Ein- und Ausgänge der Funktionsbausteine lesen und schreiben. Beim Beenden des zyklischen Betriebs wechselt der Server zurück in den Konfigurationsmodus; die Bausteine und Verknüpfungen bleiben dabei erhalten.

Beispiele für Client-Anwendungen
Beispiele für Client-Anwendungen sind für die unterstützten Programmiersprachen im Lieferumfang enthalten.
Unterstützte Plattformen
Linux x86 Linux x64 Linux ARM32 Linux ARM64 Xenomai 3.3.1 x64
Weitere Echtzeitbetriebssysteme können auf Anfrage unterstützt werden.
