Förderjahr 2019 / Project Call #14 / ProjektID: 4647 / Projekt: netRob
Die Bewegungen eines mehrachsigen Industrieroboters, wie dem oben abgebildeten Kuka-Roboter, können auf verschiedene Arten programmiert werden.
Der Fokus jeder Roboterbewegung liegt üblicherweise immer auf dem Werkzeug des Roboters, welches beispielsweise ein Greifer sein kann. Die Bewegungen des Werkzeuges können einerseits entlang von definierten Bahnen wie einer Linie, eines Kreises oder komplexeren Kurven wie Splines erfolgen um beispielsweise entlang einer Linie zu Schweißen, oder andererseits auch entlang einer sogenannten achsspezifischen Bahn erfolgen.
Das Ziel solch einer achsspezifischen Bahn ist es, den aktuellen Startpunkt schnellstmöglich mit dem Zielpunkt zu verbinden. Dabei ist zu bedenken, dass sich die Roboterachsen rotatorisch bewegen – also entlang von Kreisen -, und sich deswegen geschwungene Bahnen schneller ausführen lassen als gerade. Die schnellste Bahn ist somit nicht die kürzeste. Stattdessen ist die genaue Bahn dieser sogenannten Point-To-Point Bewegung nicht vorhersehbar, sondern ergibt sich durch die Einzelbewegungen aller sechs Roboterachsen. Jede Roboterachse hat eine andere Maximalgeschwindigkeit und muss sich je nach Endpunkt unterschiedlich weit drehen. Der Drehwinkel ist übrigens einfach die Differenz des aktuellen Startwinkels und des Endwinkels, welchen man vom Endpunkt via Inverser Kinematik berechnen kann (siehe vorheriger Blogpost).
Im Falle des Kuka Roboters ist die Point-To-Point-Bewegung synchron, also alle Achsen starten gleichzeitig und stoppen gleichzeitig. Jede Achse benötigt je nach Drehwinkel und maximaler Drehgeschwindigkeit unterschiedlich lange für die Bewegung. Deswegen wird über eine einfache Multiplikation dieser beiden Werte die langsamste Achse berechnet, welche als Führungsachse bezeichnet wird. Um die gewünschte Synchronisierung aller Achsen zu erreichen werden einfach die Geschwindigkeiten aller anderen schnelleren Achsen proportional zur Geschwindigkeit gedrosselt.