You are using an outdated browser. For a faster, safer browsing experience, upgrade for free today.

Erster Schultag

Cobys Tagebuch
14
vonGünther Martin

Heute ist mein erster Schultag. Ich bin Coby ein kollaborativer Roboter und will lernen, was ich künftig an meinem Arbeitsplatz tun soll. Tatsächlich spricht man vom „Teachen“ eines Cobots, nicht vom Programmieren. Das soll ausdrücken, dass man keinen komplizierten Programm-Code schreiben muss, um mir etwas beizubringen. Das wäre auch kontraproduktiv, denn ich soll ja schnell und flexibel für verschiedene Aufgaben eingesetzt werden können, ohne dass jedes Mal ein ausgewiesener Fachmann mit Programmiererfahrung gerufen werden muss. Denn das ist nicht nur teuer, sondern auch langwierig. Trotzdem muss man mir schon genau sagen, was ich tun soll. Wie das geht, erzähle ich gleich.

Die Schule hat auch einen Erziehungsauftrag. Sie soll das Sozialverhalten entwickeln. Bei euch Menschen wird das im Zeugnis in den Kopfnoten bewertet. Bei uns Cobots gibt es dafür umfassende Standards, wie wir uns in der Zusammenarbeit mit Menschen zu verhalten haben. Ich bin mit meinen Armen und Händen ganz schön schnell unterwegs. Dabei darf es auf keinen Fall passieren, dass ich meinem menschlichen Kollegen versehentlich eine reinhaue und Schmerzen zufüge. Bei meinen großen Brüdern, den Robotern, die zum Beispiel ganze Karosserien herumwirbeln, ist das Sozialverhalten ausgesprochen schlecht ausgeprägt. Deswegen müssen sie auch hinter Gittern, damit niemand in die Nähe kommt. Ich dagegen muss hervorragende Kopfnoten nachweisen. Auch darum geht es hier im Blog.


Klassische Lehrmethode

In der ersten Stunde lerne ich klassisch eine typische Pick and Place Aufgabe. Ich soll ein Teil von Punkt A anheben und bei Punkt C ablegen. Der Weg von A nach C soll mich in der Höhe über Punkt B führen. Woher weiß ich, wo A, B und C sind? Dafür nimmt mich der Teacher einfach bei der Hand und führt meine Hand, auch Greifer genannt, auf die drei Punkte. Damit kenne ich deren Koordinaten und kann sie exakt nachfahren. Mein Teacher will das auch gleich optimieren. Ich würde von A aus B genau gerade anfahren, dort bremsen, wieder anfahren und dann abwärts zu C weiterfahren. Das kostet unnötig Zeit und Energie. Eleganter und schneller ist es, den Punkt B zu „überschleifen“, so der Fachbegriff, d.h. den Weg in einer Kurve so zu fahren, dass ich ohne Bremsen und erneutem Anfahren von A in der Nähe von B vorbei nach C komme. Das ist selbst bei konventioneller Programmierung lediglich eine Anweisung, ohne dass sich der Teacher über die Kinematik meiner Achsen Gedanken machen muss. Ich habe, wie die meisten Cobots, übrigens sechs Achsen, also sechs Freiheitsgrade. Bei meinen Urahnen mussten die noch einzeln programmiert werden.

Jetzt muss ich noch lernen, was ich bei A und C tun soll. Hier kommen die IOs, die Input/Output-Signale, ins Spiel, mit denen ich mit der Umwelt kommuniziere. Über eine externe Lichtschranke zum Beispiel bekomme ich das Input-Signal, dass das Teil an Position A liegt. Dann gebe ich meinem Greifer das Output-Signal „Greifer schließen“ und fahre los. Am Ziel gebe ich das Signal „Greifer öffnen“. Programmtechnisch gesehen sind diese Signale einfach nur Variablen, deren Werte ich abfragen oder setzen kann.

Ich habe schnell verstanden, es geht immer nur um drei Dinge: Das Anfahren von Punkten, das Warten auf ein oder mehrere Input-Signale und das Erzeugen von Output-Signalen, um das an meinem Arm montierte Werkzeug zu steuern. Wenn ich etwa schweißen oder kleben soll, dann habe ich als Werkzeug eine passende Schweiß- oder Klebe-Ausrüstung und fahre exakt einer Linie nach, um dann wieder zum Anfangspunkt zu überschleifen. Soll ich palettieren, dann ändert sich mein Zielpunkt: Je nachdem, wie voll die Palette bereits ist, muss ich mein Teil an verschiedenen Punkten ablegen. Zum Hereindrehen von Schrauben habe ich als Werkzeug einen Schraubendreher und fahre mehrere Punkte an, überall dort, wo eine Schraube reingedreht waren muss.

Mein Teacher kennt sich gut aus und bringt mir das alles mit einfachen Programmier-Anweisungen bei. Dabei optimiert er die Taktzeiten. Er legt Wert darauf, dass sich sein Programm leicht verstehen und ändern lassen soll. Er programmiert nicht einfach drauf los, sondern macht sich vorher über die Struktur Gedanken. Variablen werden sinnvoll benannt und auch meine Mechanik wird nicht außer Acht gelassen. Führe ich zum Beispiel ein Werkzeug, für das ein externes Schlauchpaket notwendig ist (also Zuleitungen wie Strom und Luft für pneumatische Greifer oder Vakuumsauger, aber auch BUS Kabel für die Kommunikation), dann darf sich das nicht verheddern, und damit eine unnötige Störkontur ergeben.


Neue Lehrmethoden

Ich bin ganz gespannt. Heute bekomme ich einen neuen Teacher und dem eilt der Ruf voraus, didaktisch neue Wege zu beschreiten. Zunächst beginnt das mit einer peinlichen Panne. Ich habe den Teacher für den Hausmeister gehalten und wollte ihn erst nicht an mich ranlassen. Der Mann hat einen blauen Overall an und ist bestimmt kein Programmierer, sondern eher jemand, der am Band steht. Er hat sicher jede Menge Praxis-Erfahrung, die er mir vermitteln kann. Mal sehen, wie er das macht.

Er klappt seinen etwas abgeschrammten Werkzeugkasten auf und holt eine Art überdimensionierten Kugelschreiber heraus. Das ist ein Tracepen. Den nimmt er in die Hand führt mir den Bewegungspfad vor, den ich dann anschliessend übernehmen soll. Über seine eigene Bewegung zeigt er mir, wie ich mich bewegen soll. Pädagogisch ist das Klasse, denn es motiviert mich, weil ich die Bewegung schon nach kurzer Zeit besser und eleganter kann als mein Teacher: immerhin habe ich im Gegensatz zu ihm sechs Achsen, mit denen ich mein Bewegungspotenzial voll ausschöpfen kann. Allerdings wird die Lehrmethode nicht eingesetzt, um meine Motivation und mein Glücksgefühl zu steigern. Das ist euch Menschen (derzeit noch) egal und, zugegeben, mir selbst auch. Diese und andere Methoden dringen derzeit auf dem Markt, damit das Teachen von Robotern immer einfacher wird und damit auch der Werker vor Ort in die Lage versetzt wird, einen Roboter schnell anzulernen.

Für viele Anwendungen geht das bereits tatsächlich recht gut. Der Hersteller von Tracepen, die Firma Wandelbots in Dresden, nennt ein breites Portfolio: vom bereits erwähnten Pick and Place über das Kleben, Entgraten, Polieren und Lackieren bis zum Inspizieren. Ähnlich ist das Portfolio bei einer anderen innovativen Lehrmethode, der Software drag&bot von der gleichnamigen Firma aus Stuttgart. Wie beim „drag & drop“ unter Windows werden fertige Programmbausteine, Skills genannt, einfach durch Verschieben modular zusammengesetzt. Es gibt zum Beispiel Skills für das Lokalisieren eines Werkstücks, einer Roboterbewegung oder das Schließen des Greifers. Hinzu kommen Wizards mit Bedien- und Eingabehilfen, um die Skills an den Produktionsprozess anzupassen.

Jetzt soll ich eine schwierigere Arbeit lernen, die euch Menschen intuitiv leicht fällt, aber für uns Roboter richtig komplex ist. Bisher sind meine Bewegungen, egal wie ich sie gelernt habe, bei allen Wiederholungen genau gleich. Dafür müssen meine Objekte, mit denen ich arbeite, immer genau an der gleichen Position sein. Sonst ziele ich dumm daneben. Um das zu vermeiden, bekomme ich eine ganz simple RGB-Kamera und kann meine Objekte sehen. Ich muss aber verstehen, was das Kamerabild bedeutet und daraus passende Bewegungen für meine Achsen berechnen. Das klingt nach einer sehr komplexen Programmierung.

Tatsächlich lässt sich das auch vom versierten Laien erledigen. Die Firma Micropsi aus Berlin hat dafür eine Teaching Methode entwickelt, die ganz anders funktioniert als traditionelles Teaching. Statt fixer Positionen werden mir Beispiele der Aufgabe gezeigt, jeweils zusammen mit der für diesen Fall richtigen Bewegung. Das System generalisiert über die gezeigten Varianzen und Lösungen und lernt, mit der gesamten Bandbreite an Varianz umzugehen. Mit diesem auf Künstliche Intelligenz (KI) basierenden System verstehe ich das grundlegende Ziel der Bewegung, auch wenn sich die Umgebung ändert. Allerdings ist das nichts für schnelles Lernen. Es braucht einige Stunden, mir immer wieder Beispiele vorzuführen, damit ich ausreichend Daten habe. Für eine KI ist das übrigens ein sehr schnelles Lernen. In der Ausführung ist jede KI flott, aber zum Anlernen braucht es sonst noch eine viel größere Menge an Beispielen.


Hypnopädie-Methode

Hypnopädie bedeutet Lernen im Schlaf. Das ist ein alter Menschheitstraum, den ich jedoch bereits beherrsche. Ich muss mich nicht bewegen, sondern döse ganz entspannt in einer Art Sleep-Modus, bei dem ich von einem Cobot-Kollegen das lerne, was er gelernt hat. Danach kann ich seine Arbeit genauso gut machen, wie er, ohne dass mich ein Teacher angelernt hat. Technisch gesehen ist das nur ein Software-Download. Der Cobot-Kollege muss nicht einmal real sein. Die Software kann aus einer Simulation stammen und in einer Cloud abgelegt sein.

Das Verfahren ist nicht neu, aber bekommt durch die neuen Lehrmethoden eine neue Dimension. Bisher konnte die Software nur zwischen Robotern eines Herstellers ausgetauscht werden. Die neuen Lehrmethoden sind dagegen meist herstellerunabhängig. Das ermöglicht nicht nur den Austausch zwischen Robotern verschiedener Hersteller, sondern erleichtert auch den Marktzugang für neue Anbieter, die keine proprietäre und komplexe Entwicklungsumgebung mehr aufbauen müssen.


Betragen: sehr gut

Je enger ich mit Menschen zusammenarbeite, um so besser muss ich mich betragen. Es gibt drei Formen der Zusammenarbeit: Koexistenz, Kooperation und als engste Form die Kollaboration (siehe Abbildung unten). Die Koexistenz und Kooperation habe ich schnell gelernt. Da reichen mir einfache Detektionslösungen, wie Lichtschranken oder Trittmatten. Kommt mir der Mensch zu nahe, höre ich mit meiner Arbeit einfach auf, bis er wieder weg ist. Ergänzend dazu kommen Sicherheitsfunktionen, die verhindern, dass ich in verbotene Zonen vorstoße.


Mensch und schutzzaunloser Roboter arbeiten in benachbarten Bereichen, haben aber keinen gemeinsamen Arbeitsraum. Ein Beispiel ist eine Einlegestation mit Drehtisch an einer Roboterzelle.

Bei einer Kooperation findet eine gelegentliche Interaktion statt: Beispielsweise betritt der Mensch den Arbeitsraum des Roboters, um ein Werkstück abzulegen, dass der Roboter danach abholt. Der Roboter hält an, wenn der Mensch ihm dabei zu nahe kommen sollte.

Die Kollaboration ist eine enge-re Zusammenarbeit: Mensch und Roboter arbeiten gleichzeitig in einem Raum am selben Bauteil. Für diesen Einsatz sind die kleineren und leichteren Cobots prädestiniert.


Richtig pauken musste ich dagegen für das Fach Kollaboration. Es gibt hier mit der ISO TS 15066 eine eigene Norm, die ich einhalten muss. Wenn ich eng mit dem Menschen am selben Bauteil arbeite, sollen Berührungen mit ihm vermieden werden. Dafür gibt es Scanner auf Laser-, Ultraschall- oder Radarbasis. Bei mir ist meine Haut mit kapazitiven Sensoren bestückt, mit mit der ich bereits die nahe Annäherung des Menschen bemerke. Wenn sich Berührungen nicht ganz vermeiden lassen, dann muss meine Kraft beim Kontakt auf ein ungefährliches Maß begrenzt werden. Die Norm legt hier strikte Schmerzschwellen für verschiedene Körperregionen fest. Für jedes Körperteil (z.B. Kopf, Hand, Arm oder Bein) ist ein maximaler Werte für Kraft und Druck festgelegt. Die Körperregion mit den niedrigsten zulässigen Kollisionswerten ist das Gesicht.

Ich habe dabei gelernt, dass ich nicht nur schnell und effizient sein soll, sondern gleichzeitig auch noch zartfühlend, auch wenn das mein Arbeitstempo verlangsamt. Mit dem Wissen habe ich morgen meinen ersten Arbeitstag. Ich berichte darüber.