Dank Cobots muss man heute kein ausgebildeter Experte mehr sein, um einen Roboter programmieren zu können. Dennoch ist die Programmierung für viele noch immer eine Blackbox: Wie läuft diese typischerweise ab? Worauf gilt es dabei zu achten? Erfahren Sie in fünf Schritten, wie Programmieren geht!

Dank kollaborierender Roboter (Cobots) muss man heute kein ausgebildeter Experte mehr sein, um einen Roboter zu programmieren. Und das senkt die Hemmschwelle, Prozesse in der Produktion zu automatisieren, um künftig wettbewerbsfähig zu bleiben.
Trotzdem ist die Programmierung eines Roboters für viele noch immer eine Blackbox: Wie läuft sie typischerweise ab? Und worauf muss ich dabei achten? Diese Fragen beantworten wir hier und veranschaulichen die Programmierung in unserer Nutzeroberfläche PolyScope.
Die Programmierung einer einfachen Anwendung mit Cobots lässt sich in 5 Schritte unterteilen:
Kollaborierende Roboter lassen sich je nach Bedarf mit einer Vielzahl unterschiedlicher Werkzeuge, auch Endeffektoren genannt, ausrüsten – von Greifern verschiedener Typen über Klebepistolen bis hin zu Schweißgeräten. Bei der Programmierung ist es wichtig, dass der Roboter zunächst einmal weiß, mit welchem Endeffektor er arbeitet. Dafür sind 3 Variablen ausschlaggebend:
1. Der Tool Center Point (TCP)
Der TCP ist der zentrale Ankerpunkt für die gesamte Programmierung einer Anwendung. Er definiert sich als die Mitte zwischen den Kontaktpunkten des Endeffektors mit dem Werkstück. Bei einem Zwei-Finger-Greifer liegt der TCP zum Beispiel in der Mitte zwischen den beiden Fingerbacken. Bei Endeffektoren mit nur einem Kontaktpunkt, wie etwa einer Klebepistole, ist der einzige Kontaktpunkt mit dem Werkstück gleichzeitig auch der TCP. Befindet sich der TCP, wie bei den meisten Greifern, direkt senkrecht vom Werkzeugflansch, kann er per Lineal abgemessen werden. In komplexeren Fällen können Sie ihn über einen TCP-Einrichtungsassistent in PolyScope konfigurieren.
2. Der Werkzeugschwerpunkt
Würde man einen Querschnitt durch den Endeffektor vornehmen, würde dieser an einem bestimmten Punkt den Endeffektor in zwei genau gleich schwere Hälften teilen – das ist der Werkzeugschwerpunkt. Doch wie messe ich diesen? Keine Sorge, auch dafür gibt es in der Bedienoberfläche eines jeden Cobots einen integrierten Assistenten.
3. Die Nutzlast
Die Nutzlast ist das Gesamtgewicht des angeschlossenen Endeffektors sowie ggf. weiterer an den Werkzeugflansch angebrachter Geräte, wie z.B. Kameras. Diese Nutzlast wird einfach in die Programmieroberfläche eingegeben.

Ist das Werkzeug eingerichtet, geht es an die Definition der Wegpunkte. Die Wegpunkte sind die einzelnen Stationen, die der Roboter in jedem Zyklus der Anwendung nacheinander abfährt. Definiert werden sie jeweils durch die Position, die der TCP an der entsprechenden Stelle einnimmt.
Ein Roboterprogramm in seiner einfachsten Form besteht aus: verschiedenen Wegpunkten, den Bewegungen zwischen den Wegpunkten und den Aktionsbefehlen an den bestimmten Wegpunkten.
Die einzelnen Wegpunkte können Sie je nach Bedarf auf verschiedene Art und Weise festlegen: über die Handführung des Cobots, über die Bedienoberfläche PolyScope oder über die Eingabe von Koordinaten. Um die Bewegungen zwischen den Wegpunkten zu definieren, gibt es ebenfalls verschiedene Optionen:
1. Die Gelenkbewegung
Gelenkbewegungen sind die natürlichste und schnellste Form der Bewegung des Roboterarms zwischen zwei Wegpunkten, da der Roboter alle Achsen gleichzeitig startet. Und mit allen zeitgleich an den jeweiligen Zielwinkeln ankommt. Wann wird sie genutzt? Vor allem dann, wenn nicht wichtig ist, welcher genaue Weg genommen wird, und wenn freier Raum zwischen den beiden Wegpunkten besteht. Bei der Gelenkbewegung fährt der Roboter den TCP nichtlinear in einer Parabel von Wegpunkt zu Wegpunkt.
2. Die Linearbewegung
Bei der Linearbewegung nimmt der TCP die direkteste Strecke zwischen zwei Wegpunkten – er bewegt sich linear. Eine sehr gängige Verwendungsform ist etwa das senkrechte Aufheben oder Niederlegen eines Werkstücks.
3. Die konstante Bewegung
Hier bewegt sich der TCP in konstanter Geschwindigkeit auf einer vorgegebenen Linie. Um die konstante Geschwindigkeit zu wahren, sind lineare Bewegungen, weiche Kurven oder Kreisbewegungen möglich, jedoch keine scharfen Richtungsänderungen. Dieser Bewegungstyp wird üblicherweise bei Schweiß- oder Klebe-Anwendungen genutzt.
Erleben Sie, wie unsere Expertin Martina Steger drei Anwendungsszenarien programmiert.
Um einen Roboter zu programmieren, werden die verschiedenen Bewegungstypen miteinander kombiniert – etwa eine Linearbewegung, um das Werkstück senkrecht aufzunehmen und eine anschließende Gelenkbewegung, um es möglichst direkt zum Ablageort zu befördern. Die Kombination der beiden Bewegungstypen gewährleistet, dass das Programm den Anforderungen der Anwendung an den jeweiligen Stellen – Schnelligkeit (Gelenkbewegung) sowie korrektes Erfassen des Werkstücks (Linearbewegung) – gerecht wird.
Eine Applikation besteht nicht nur aus den richtigen Bewegungen des Roboters. An bestimmten Wegpunkten soll natürlich auch der Endeffektor in Aktion treten. Die Programmierung des Endeffektors ist meist integriert in die Nutzeroberfläche des Cobots und kann an den Wegpunkten daher einfach als Aktionsbefehl programmiert werden. Wichtig dabei: Sobald ein Greifer ein Werksstück aufnimmt bzw. wieder ablegt, ändert sich seine Nutzlast – dies müssen Sie in der Programmierung berücksichtigen.
Die Applikation ist nun bereits funktionsfähig. Jedoch sollten Sie bei jeder Anwendung mit Cobots immer ein genaues Auge auf die Sicherheitsaspekte werfen. Um eine Anlage sicher zu gestalten und dennoch möglichst kurze Zykluszeiten zu garantieren, gibt es unterschiedliche Optionen, die sich kombinieren lassen. Unsere Cobotmodelle verfügen dafür über insgesamt 17 TÜV-zertifizierte Sicherheitsfunktionen. Dies sind 3 der wichtigsten:
Jede Sicherheitsfunktion kann auf verschiedene Weisen ausgelöst werden. Gängige Auslöser sind Scanner oder virtuelle Ebenen. Ein Scanner etwa versetzt den Roboter in den reduzierten Modus oder bringt ihn komplett zum Stehen, sobald ein Mensch einen bestimmten Bereich betritt. Virtuelle Ebenen im freien Raum hingegen sorgen dafür, dass der Roboter genau diese nicht oder nur im reduzierten Modus übertritt. Sie können einfach über die Nutzeroberfläche definiert werden, indem ein Punkt auf der entsprechenden Ebene mit dem TCP angefahren wird und der Werkzeugflansch dabei rechtwinklig zur gewünschten Ebene positioniert wird.

Dies sind nur ausgewählte Aspekte bei der Gewährleistung der Sicherheit kollaborativer Applikationen. Grundsätzlich gilt es, jede Anwendung individuell zu betrachten. Als sicher kann sie erst gelten, sobald die obligatorische Risikobeurteilung, üblicherweise durchgeführt vom Systemintegrator oder einer offiziellen Prüfstelle, erfolgreich abgeschlossen ist.
Im letzten Schritt gilt es, die Fahrzeit des Roboters zwischen den Wegpunkten zu verkürzen, um die Zykluszeiten der Applikation zu optimieren. Dabei spielen sogenannte Verschleifradien eine wesentliche Rolle. Ohne diese stoppt der Roboter seine Fahrt an jedem Wegpunkt für einen kurzen Moment, um seine Bewegungsrichtung auf den nächsten Wegpunkt auszurichten. Durch das Einstellen von Verschleifradien fährt er Wegpunkte nicht komplett an, sondern fährt in einer Kurvenbewegung an diesen vorbei. Und kann so seine Geschwindigkeit konstant halten.
Achtung: Verschleifradien sind nicht an jedem Wegpunkt sinnvoll bzw. möglich. Wo ein Roboter ein Werkstück etwa senkrecht aufnehmen soll, würde ein Verschleifradius die Applikation unbrauchbar machen.
Eine weitere Möglichkeit die Zykluszeiten zu verkürzen besteht darin, Geschwindigkeit und Beschleunigung zu erhöhen. Mit diesem Instrument sollte man sorgsam umgehen, denn eine zu hohe Geschwindigkeit kann die Sicherheit der Applikation beeinträchtigen, und eine zu hohe Beschleunigung die Lebensdauer der Robotergelenke mindern. Deshalb sind Verschleifradien immer als erste Option in Betracht zu ziehen. Die Geschwindigkeit sollte außerdem nur an ausgewählten Stellen und nicht für die gesamte Anwendung erhöht werden: Beim Aufnehmen des Werkstücks ist etwa eine hohe Geschwindigkeit meist nicht zielführend.
Letztendlich ist der genaue Ablauf einer Programmierung immer abhängig von Bedarf und Zielsetzung der Cobotanlage. In den meisten Fällen, etwa bei einer gängigen Pick & Place-Anwendung, läuft sie nach dem hier beschriebenen Muster ab. Im Einzelfall kann sich eine Programmierung aber auch ganz anders gestalten.
Weil es kein Pauschalrezept gibt, bieten wir jedem Interessenten die Möglichkeit, unseren Roboter bei einem Demotermin vorab zu testen. Und gemeinsam den Anwendungsfall zu evaluieren. Dabei lässt sich der Programmieraufwand meist gut abschätzen.
