Artikel

Ab und zu gehen Blogeinträge über den schnellen Einwurf hinaus und werden zu bescheidenen Artikel. Diese Artikel tauchen auch immer im Blog auf, können aber hier auch separat abonniert werden.

Alles Fake - Ein trauriger Monat für die Robotik

Arne am 17.03.2014 um 20:06 Uhr - zum Artikel

In der vergangenen Woche fand das European Robotics Forum statt. Dabei handelt es sich um eine Networking-Veranstaltung, bei denen aktuelle und zukünftige Trends in der europäischen Forschungslandschaft diskutiert werden. Einem Blick ins Programm der Veranstaltung verrät bereits einen guten Überblick, was die deutsche Robotik Gemeinde umtreibt. Ein wesentlicher Aspekt ist es, die Verknüpfung zwischen Wahrnehmung und Handlung in Robotern zu verbessern. Es geht darum, einen Roboter in die Lage zu versetzen, komplexe Bewegungen und Manipulationsaufgaben, die einen hohen Grad an Geschick erfordern, selbstständig oder durch Demonstration zu erlernen und zu adaptieren.

In meinen Augen ist das ein hochspannendes Thema, in dessen Kontext ich vor etwas längerer Zeit bereits auf nachfolgende beeindruckende Videos aufmerksam geworden bin:

Towards Learning Robot Table Tennis

Das Video zeigt, wie ein Mensch einem Roboter das Tischtennis Spielen demonstriert. Anschließend erprobt und verbessert der Roboter selbstständig seine Fähigkeiten. Schließlich, spielt der Roboter Tischtennis mit einem Menschen.

Der Tischtennis Demonstrator ist meiner Ansicht nach sehr gut geeignet um Forschungsergebnisse dieser Art darzustellen. Es gibt viele Freiheitsgrade. Die Dynamik der Aufgabe ist hoch und fordernd. Eine Tischtennisplatte hat vertretbare Abmessungen, sodass sich der Demonstrator in einem Labor gut realisieren lässt. Das Spiel mit einem echten Menschen ist nicht planbar. Es kommt zu unvorhersehbaren Ballwechseln. Daher demonstriert das Experiment prinzipell sehr gut die Generalisierungsfähigkeit aber auch die Grenzen entwickelter Algorithmen.

Im Februar kündigte der Roboterhersteller KUKA mit nachfolgendem Video ein Tischtennis Duell zwischen einem KUKA Roboter und dem Tischtennisprofi Timo Boll an.

Timo Boll vs. KUKA robot - Teaser

Vor dem Hintergrund der zuvor dargestellten Forschungsarbeiten war ich natürlich freudig gespannt auf das Event. Und damit war ich nicht allein. Aus den Kommentaren:

  • "Hmm...ein Fake wird es nicht sein, glaube aber nicht das der Bot den Hauch einer Chance gegen Boll hat, sobald der mit Topspin angreift. [...]"

  • "Fantastic. Cant wait to see this in action..."

  • "Well...never thought I'd be so hyped for a ping pong match!"

Auf IEEE Spectrum News schreibt Evan Ackermann:

"Wow, Kuka wouldn't have set this whole thing up unless it was actually going to be a good match! Maybe we'll see some amazing feats of high speed robot arms, vision systems, and motion tracking!"

Die geschürte Erwartung bestand in einem tatsächlichen "Duell" im Sinne eines echten Spiels zwischen Mensch und Roboter. In meinem durchaus robotisch geprägten Umfeld wurden rege Diskussionen geführt, wie das hypothetische Match ausgehen würde. Ebenso wurden Vermutungen über technische Realisierungen diskutiert. Die oben angesprochenen Forschungsergebnisse haben die prinzipielle Machbarkeit ja bereits vor einiger Zeit demonstriert. Bis hier her: schöne Arbeit seitens des Marketings. Das mit Spannung erwartete Duell war in aller Munde. Am 10.03. erschien das dann das ernüchternde Video:

The Duel: Timo Boll vs. KUKA Robot

Für sich genommen ein nettes Werbe-Video. Aber nicht das angekündigte Spiel zwischen Mensch und Maschine. Nur ein mit Spezialeffekten voll gepumpter Trickfilm. Die Story: erst dominiert der Roboter, dann reißt Timo das Ergebnis noch einmal mit spektakulären Spielzügen rum. Die wohl beabsichtigte Botschaft des Roboterherstellers wird am Ende noch einmal explizit formuliert:

"Not the best in table tennis. But probably the best in robotics."

Die in meinem Umfeld gespiegelte Botschaft fiel eher anders aus. Sie war mehr von Enttäuschung geprägt. Herauszuhören war zusammenfassend:

"KUKA hat ein Duell versprochen, aber nur einen Trickfilm geliefert."

Auch das spiegelt sich in den sozialen Netzwerken wieder:

  • "Agreed, great idea for marketing, but poorly developed"

  • "I was so excited to see a duel between a robot and a world champion in table tennis. Expectations were like Kasparov vs Deep Blue, right? Turns out it's just a very well shot but fake commercial."

Evan Ackermann trifft es auf IEEE Spectrum News ganz gut:

"But the encounter wasn't the "robot vs. human duel" we were promised. What Kuka gave us instead is an overproduced, highly edited commercial that, in our view, will puzzle (rather than amaze) those of us who follow robotics technology closely."

In meinen Augen eine verpasste Chance, Menschen zu begeistern und durch technologische Leistung zu überzeugen.

Zu allem Überfluss erschien diese Woche dann ein weiteres Fake-Video (dieses Mal nicht von KUKA) von einem Tischtennis Roboter, der angeblich in einer heimischen Garage realisiert wurde:

Ulf Hoffmann Tischtennis Roboter

In der Beschreibung zum Video steht:

"Nach ca. 2 Jahren Entwicklungsarbeit habe ich mit meinem Freund Michael nun unseren selbst gebauten Tischtennis Roboter soweit fertig gestellt, dass man mit ihm schon ordentliche Ballwechsel spielen kann."

Leider ist das Video offensichtlich montiert, wie einige aufmerksame Kommentatoren anmerken:

  • "It is fake, look at 1:09! You can see that the camera in the upper right of the garage door is in front of the table tennis racket because it was added to the footage later."

  • "Had me fooled until the close up at 2:20. Those movements don't seem real, and it seems weird that every movement has the same sound even tough the speeds are different and so are the moves."

Vieles davon finden wir auf Mikrokontroller.net wieder:

camera in the upper right of the garage door is in front of the table tennis racketcamera in the upper right of the garage door is in front of the table tennis racket

Als Trickfilm-Projekt ist das Video sicherlich überzeugend gut gemacht. Das belegen auch die zum Teil auch emotional aufgeladenen Diskussionen zur Echtheit des dargestellten Experiments...

Zwei Aspekte haben mich schließlich zur Wahl des Titels für diesen Blogeintrag bewegt:

Beide Videos, das von KUKA und das Garagen-Video, haben eine unglaublich rasante Verbreitung in den sozialen Netzwerken erfahren. Für den geneigten Robotik-Laien, so befürchte ich, mag allerdings durch beide Videos ein falscher Eindruck von dem entstehen, was Roboter heute leisten können. Die damit verbundenen komplexen Problemstellungen hat Arne in einem früheren Blogeintrag bereits ausführlich thematisiert.

Darüber hinaus erscheint Tischtennis als Demonstrator für die eingangs beschriebenen Forschungsprojekte erst einmal verbraucht. Bei jeder zukünftigen Demonstration des Experiments und jedem neuen Video dazu schwingt zunächst einmal unterschwellig mit: "Schau mal, da hat wieder einer so getan, als könnte er mit einem Roboter Tischtennis spielen". Vielleicht fällt ja jemandem ein alternativer, hinsichtlich Komplexität, Anzahl der Freiheitsgrade und Realisierbarkeit im Labormaßstab vergleichbarer alternativer Demonstrator ein?

Aus robotischer Sicht finde ich die Ereignisse in Summe also sehr schade und komme zu dem Schluss: dies war ein trauriger Monat für die Robotik.

Veranstaltungshinweis

Jörn am 11.09.2013 um 13:45 Uhr - zum Artikel

Im November richtet die TU Dresden eine Autumn School zum Thema "Human Robot Interaction" aus.

Mehr Infos gibt's hier.

Autumn School 2013 "Human Robot Interaction"Autumn School 2013 "Human Robot Interaction"

Elastische Roboterarmkörper: Fluch oder Segen? (Teil 2)

Jörn am 29.08.2013 um 14:38 Uhr - zum Artikel

Oscillation Damping, Collision Detection and Reaction with a multi elastic link robot arm

Grundsätzlich wird die strukturelle Elastizität in Roboter-Armkörpern bislang nachteilig gesehen. Sie verlängert Ausregelzeiten und verschlechtert die Positioniergenauigkeit. Allerdings wurde die Realisierbarkeit einer schnellen und genauen Positionierung eines gliedelastichen Roboterarms anhand von Ballfang-Experimenten exemplarisch gezeigt [1] . Darüber hinaus kann die intrinsische Nachgiebigkeit jedoch auch vorteilhaft dazu ausgenutzt werden, die tatsächlich effektive Nachgiebigkeit des gesamten Arms aktiv zu beeinflussen. Wie im ersten Teil zu diesem Thema bereits dargestellt, setzt dies eine Kompensation der unerwünschten Effekte durch eine geeignete unterlagerte Regelung voraus. Dabei wurde die Wahrscheinlichkeit, auch zerbrechliche Objekte im Falle einer unvorhergesehenen Kollision zu beschädigen, deutlich gemindert.

Das obenstehende Video geht einen Schritt weiter. Beabsichtigte oder auch unbeabsichtigte Kontakte werden explizit auf Basis eines Modells der gedämpften Armdynamik detektiert und ermöglichen eine entsprechende Reaktion. Das Video stellt das gliedelastische Experimentalsystem TUDOR vor und zeigt insgesamt sieben Experimente zur Schwingungsdämpfung, zur Detektion genau wiederholbarer stumpfer wie auch scharfer Einschläge auf Luftballons sowie zerbrechlicher Christbaumkugeln, weniger exakt wiederholbarer Einschläge auf einen menschlichen Arm und schließlich zur physischen Interaktion mit dem Roboter.

Die Paare von Dehnungs-Messstreifen, die in der Nähe der Gelenke auf jedem nachgiebigen Arm appliziert sind, fungieren als lastseitige Drehmomentsensoren. Unter der Voraussetzung einer hinreichenden Schwingungsdämpfung kann die verbliebene Dynamik des Arms in Analogie zu konventionellen starren Roboterarmen modelliert werden. Diese Vorgehensweise ermöglicht die unmittelbare Anwendung von Verfahren zur Kollisionsdetektion und -reaktion, wie sie zuvor bei gelenkelastischen sowie starren Roboterarmen vorgestellt worden sind [2] .

Die dargestellen Ergebnisse verdeutlichen, dass die strukturelle Elastizität in Roboter-Armkörpern nicht zwingend als nachteilig gesehen werden muss. Vielmehr können sich mit Hilfe entsprechender Regelungsansätze aus der Ausnutzung dieser Eigenschaften neue Möglichkeiten ergeben.

1
Malzahn, Jörn, Anh Son Phung, and Torsten Bertram. "A Multi-Link-Flexible Robot Arm Catching Thrown Balls." 7th German Conference on Robotics; Proceedings of ROBOTIK. VDE, 2012.
2
De Luca, Alessandro, et al. "Collision detection and safe reaction with the DLR-III lightweight manipulator arm." IEEE/RSJ International Conference on Intelligent Robots and Systems. IEEE, 2006.

Mensch und Roboter Hand in Hand

Arne am 06.08.2013 um 15:06 Uhr - zum Artikel

Wer hat sich nicht schon einmal einen Roboter gewünscht, der im Haus­halt hilft? Der zum Beispiel schon einmal den Kuchen­teig anrührt, knetet und ausrollt, während man selbst die Glasur vorbereitet, bzw. einem das lästige Gemüse­schnib­beln beim Kochen abnimmt. Oder einen kleinen Roboter­assisten­ten, der einem bei heimischen Bastel­arbei­ten die richtigen Werk­zeuge anreicht, wie man es aus OP-Sälen in Kranken­häusern kennt: „Roboter, Schrauben­zieher!“„Schraubenzieher, und weiter?“„Schraubenzieher, bitte!“

Die Vision: Roboter und Mensch arbeiten zusammen [johanneswienke.de]Die Vision: Roboter und Mensch arbeiten zusammen [johanneswienke.de]

Zumindest in Industrie­szenarien ist das keine allzu weit entfernte Zukunfts­vision mehr. Flexibel anpassbare Roboter, die autonom oder Hand in Hand mit dem Menschen in einer Werkstatt oder Produktions­strasse arbeiten und diesen bei Fertigungs­auf­gaben unterstützen, sind schon seit geraumer Zeit ein strate­gisches Anliegen europäischer Wissenschaftler und der Robotik­industrie. So führt bereits die im Jahr 2009 ausgerufene europäische Strategic Research Agenda diese beiden Szenarien, den „Robotic Worker“ und den „Robotic Co-Worker“, als Kern­an­wen­dungs­sze­na­rien zukünf­tiger Industrie­robotik mit auf. Dabei geht es nicht um Groß­serien-Voll­auto­matisie­rung wie man sie z. B. aus der Auto­mobil­industrie kennt, in der Roboter an Roboter aufgereiht in Käfigen und – aus Sicher­heits­gründen – abge­schot­tet vom Menschen monatelang exakt die gleiche Aufgabe ausführen:

Vollautmatisierte Montage von Automobilen bei KIA

Es geht vielmehr um die Unter­stützung von Mitarbei­tern in kleinen und mittel­stän­dischen Unter­nehmen, deren Auftrags­lage sich relativ schnell ändern kann. Denkbar ist die Fertigung von Proto­typen, von denen häufig nur geringe, einstel­lige Stück­zahlen gefertigt werden. In diesem Kontext sind zur Zeit Hand­arbeits­plätze immer noch die Regel, d. h. Fachkräfte montieren und bearbeiten Bauteile bzw. bestücken und entladen Maschinen manuell. Häufig sind diese Arbeiten verbunden mit anstren­gender körper­licher Arbeit.

Eine Voll­automatisie­rung im klas­si­schen Sinne, also mit Robotern, die genau auf diesen einen Zweck ausgelegt sind und in aller Regel nicht oder nur sehr aufwendig an neue Fer­ti­gungs­auf­ga­ben angepasst werden können, macht hier allein schon aus ökonomischen Gründen keinen Sinn. Der durch die Einsparung einer Fachkraft gewonnene finan­zielle Vorteil wird sofort wieder zu­nichte gemacht durch den not­wen­digen, häufigen und kosten­inten­siven Einsatz von Experten, die den Roboter bei jeder Änderung im Pro­duk­tions­ablauf wieder an seine neue Aufgabe anpassen und um­program­mieren müssen. Zusätzlich sind viele Teil­aufgaben in solchen Fertigungs­prozessen sehr komplex und wenn überhaupt nur mit enorm hohem technischen Aufwand automatisch zu bewerk­stel­ligen, wie z. B. der berühmte Griff in die Kiste.

Die Idee ist vielmehr, den Menschen zu unterstützen, indem man ihm diejenigen Arbeiten überlässt, die er z. B. auf Grund besserer visueller Wahrnehmung und guten Finger­fertig­keiten kompetenter und schneller durchführen kann als jede Maschine, ihn aber durch den Roboter­assisten­ten von körperlich belas­ten­den Arbeiten zu befreien … der Roboter als dritte Hand. Damit jedoch beide, Roboter und Mensch, an einem Arbeits­platz gemeinsam sinnvoll zusam­men­arbeiten können, sind einige Heraus­forderun­gen zu bewältigen. Ein bisschen Buzzword-Bingo:

  • Flexibilität: Um sich den ständig wechselnden Aufgaben anpassen zu können und in beliebigen (engen, eingeschränkten) Arbeits­räumen mit dem Menschen zusammen zu arbeiten, ist im Vergleich zu her­kömmlichen Industrie­robotern zusätzliche Flexi­bi­li­tät nötig. Diese erhält man z. B. durch zusätzliche Bewegungs­achsen: übliche Industrie­roboter verfügen über bis zu sechs Achsen, ab sieben Achsen erhält man durch Redundanz zusätzliche Flexi­bi­lität.

  • Interaktion: Um teures und zeit­auf­wen­diges Um­program­mieren der Roboter durch Experten zu umgehen, muss der Mit­arbeiter vor Ort in der Lage sein, durch einfache, direkte Interaktion den Roboter an seine neuen Aufgaben und Arbeits­bedin­gun­gen anzupassen und ihn den eigenen Bedürf­nissen entsprechend zu programmieren.

  • Sicherheit: Die direkte physische Ko­operation zwischen Mensch und Maschine erfordert andere Sicher­heits­mecha­nis­men als Zäune und strikte Arbeits­raum­tren­nung, um die Sicherheit für den Menschen dennoch zu gewähr­leisten.

Technisch gesehen scheinen obige Herausforderungen so gut wie gelöst. Der vom Deutschen Luft- und Raumfahrtszentrum und KUKA gemeinsam entwickelten Leicht­bau­roboter IV (LBR IV), dessen serien­reifer Nachfolger KUKA LBR iiwa auf der diesjährigen Hannover Messe erstmals vorgestellt wurde, ist ein Beispiel. Das geringe Gewicht, Kraft­sensoren zur Kollisions­erkennung und eine sehr schnelle Regelung sind gute Voraus­setzun­gen für eine sichere Interaktion mit dem Menschen. Außerdem ist der LBR mit seinen sieben Bewegungs­achsen redundant, bietet also genügend Flexi­bi­li­tät, um um Hinder­nisse herum­zu­greifen oder Aufgaben auf mehr als nur eine Art zu erledigen.

Dass trotzdem nun nicht jeder sofort einem solchen Roboter Aufgaben bei­bringen kann, sieht man im folgenden Video, welches im Verlaufe einer umfang­reichen Feld­studie [1] mit Mit­arbei­tern der Firma Harting entstand:

Auch moderne Roboter sind nicht leicht zu bedienen.

Die Aufgabe für die Probanden bestand im Prinzip aus einer Art Heißer-Draht-Spiel: Der vorn am Roboter montierte Greifer sollte möglichst genau an dem Styropor-Parcours entlang geführt werden, während­dessen natürlich jede Kollision sowohl vorne am Greifer als auch am Rest des Roboter­körpers mit den Umgebungs­objekten vermieden werden sollte. Der Hintergrund: Genau durch diese Art des Führens (englisch: Kinesthetic Teaching) können dem Roboter Aufgaben beigebracht werden. Die in der Inter­aktion ent­stan­denen Bewe­gun­gen werden auf­gezeich­net und können auf Befehl schneller, langsamer oder leicht verändert wieder abgespielt werden. Der Fachbegriff hierfür lautet Teach-In und bezeichnet das aktuell übliche Verfahren, um Roboter „anzulernen“.

Wie man in dem Video sieht, geht das zum Teil gehörig schief! Die Versuchs­personen scheinen (trotz einer vorherigen Eingewöhungs­phase mit dem Roboter) überfordert von der Aufgabe, dem LBR den Parcours kollisions­frei bei­zu­bringen. Das liegt nicht an der Komplexität der Aufgabe: Eine einfache vorgegebene drei­dimensionale Bewegung wie die des Parcours aus der Studie nachzufahren, ist für uns Menschen typischer­weise zu bewältigen und wie wir später sehen werden auch in Verbindung mit einem Roboter leicht möglich. Der Grund ist die durch jahrelange Ingenieurs­kunst geschaffene, komplizierte Technik des LBR, die technische Vorteile, aber auch erhöhte Komplexität mit sich bringt. Denn hinter dem einen „I“ des Wortes „Interaktion“ verstecken sich noch zwei weitere: intuitiv und intelligent. Einem Roboterarm mit sieben Gelenken eine bestimmte drei­dimensio­nale Bewegung beizubringen und dabei gleichzeitig darauf achten zu müssen, dass er mit seinen sieben Achsen nicht mit Hinder­nissen im Arbeits­raum kollidiert, ist nicht intuitiv. Und eine vorgemachte Bewegung abspeichern und wieder abspielen zu können, ist nicht sonderlich intelligent.

Dieses Beispiel zeigt, dass in der Praxis mehr notwendig ist als nur die tech­nischen Möglichkeiten zu schaffen. Der Schlüssel, davon sind wir überzeugt, liegt in einer syste­ma­tischen Inte­gration von Hoch­techno­logie, maschi­nel­lem Lernen und einfacher Inter­aktion. Um ein solches Robotik­system für den Arbeiter vor Ort bedienbar zu machen, muss die eigent­liche techno­lo­gische Komplexi­tät im besten Fall hinter intuitiven Benutzer­schnitt­stellen und schritt­weiser Inter­aktion versteckt werden. Am Forschungsinstitut für Kognition und Robotik (CoR-Lab) der Univer­sität Biele­feld beschäftigen wir uns seit Jahren genau damit. Das Roboter­system, das oben im Video zu sehen war und auf einem KUKA LBR IV aufbaut, ist unsere Forschungs­plattform FlexIRob: ein Beispiel­szenario, bei dem wir diese Art von Integration untersuchen. Um die obige Aufgabe zu erleichtern, haben wir einen Ansatz entwickelt, mit dem jeder einen solchen Roboter an neue Umgebungen und Aufgaben anpassen kann. Die Idee ist im Prinzip einfach und beruht darauf, die komplexe Aufgabe in zwei Teil­schritte zu unter­teilen. Dass das funktioniert, ist im folgenden Video zu sehen:

Erleichterung der Interaktion durch Aufteilung in explizite Konfigurations- und assistierte Programmierphase (ab ca 1:15)

Der erste Teil­schritt der Aufgabe heißt Konfigurations­phase und ist unabhängig von der Aufgabe, die der Roboter­arm später ausführen soll. In dieser Phase bringt der Nutzer bzw. der Mit­arbeiter dem Roboter seine neue Umgebung bei, d. h. eventuelle dauerhafte Hindernisse, welche in seinem Arbeits­bereich platziert sind, wie z. B. herum­liegende Objekte, Säulen oder Regale. Als Mensch hat er dabei ein intuitives Verständnis der Szenerie: Er sieht die Hinder­nisse, er weiß, dass und wie man um sie herumgreifen muss und ist deswegen instinktiv in der Lage, den LBR dabei in aus­gesuchte Regionen zu führen und dort mit ihm zusammen einige Beispiel­bewegungen durch­zu­führen, ohne mit den Hinder­nissen zu kollidieren. Von diesen Beispiel­bewegungen kann nun der Roboterarm lernen, wie er sich in seinem Arbeits­bereich zu bewegen und wie er die Hinder­nisse im Zweifel zu umgreifen hat. Die Methoden zum Lernen, die dabei verwendet werden, gehen über simples Aufnehmen und Re­pro­du­zieren hinaus. Mit Hilfe von künst­lichen neuro­nalen Netzen ist das System nämlich nicht nur in der Lage sich innerhalb der trainier­ten Bereiche zu bewegen, sondern auch zwischen diesen hin- und her zu manö­vrieren und kollisions­freie Bewegungen für den Arm zu wählen. Diese Eigenschaft von Lern­verfahren nennt man Genera­lisierungs­fähigkeit und beschreibt die Fähigkeit, von wenigen Beispiel­daten ein generel­les Verhalten zu erlernen und dieses auf unbekannte Daten zu übertragen. In unserem Fall sind die Beispiel­daten die Trainings­daten, welche vom Nutzer zur Verfügung gestellt werden und im Video als grüne Punkte dargestell sind. Von diesen lernt der Roboter innerhalb weniger Minuten, beliebige Ziel­positionen anzufahren, ohne dabei mit den Hinder­nissen zu kollidieren. Und das nicht nur in den Trainings­berei­chen, sondern auch darüber hinaus [2] .

Im nächsten Schritt, geht es nun darum, ihm die eigentliche Aufgabe beizubringen. Das kann z. B. eine Schweiß- oder Klebenaht sein und auf verschie­denen Wegen passieren, z. B. erneut mit Hilfe von Kinesthetic Teaching, also dem direkten Führen des Roboters. Da dieser sich aber in seiner Umgebung nun schon zu bewegen weiß, braucht der Nutzer nicht mehr alle Gelenke gleichzeitig zu kontrollieren. Es reicht, dass er ihn vorn am Greifer entlang der spezifischen Aufgabe führt und der Roboter assistiert ihm dabei sozusagen bei der Hindernis­vermei­dung, wie in dem Video ab Minute 2:10 zu sehen ist. Diese Phase nennen wir deshalb Assisted Program­ming.

Der Knackpunkt zur Verein­fachung dieser Inter­aktion liegt also in der Auf­teilung der Gesamt­aufgabe in zwei oder mehr aufeinander aufbauende Teil­schritte, um den Nutzer bzw. Mitarbeiter des Roboters nicht zu überfordern. Im letzten Jahr haben wir mit Unter­stützung der Firma Harting oben genannte Pilot­studie zum Thema Kinesthetic Teaching durchgeführt und die beschriebene Idee evaluiert. Dabei haben 48 Mitarbeiter, unterteilt in zwei Versuchs­grup­pen, mit dem System inter­agiert und versucht, dem Roboter obigen Parcours beizubringen. Die Ergeb­nisse der einen Gruppe waren bereits im ersten Video zu sehen. Von 24 Versuchs­teil­nehmern, haben es gerade einmal zwei Probanden geschafft, den Parcours kollisions­frei abzufahren; eine Probandin brach ihren Versuch nach einiger Zeit frustriert ab. Die zweite Versuchs­gruppe hingegen benutzte den assistier­ten Modus und zeigte signi­fi­kant bessere Ergebnisse. Diese Teilnehmer benötigten im Schnitt weniger als die Hälfte der Zeit, um den Roboter anzulernen, die bei­gebrach­ten Bewegungen waren signifikant näher an der Vorgabe und wesent­lich ruckel­freier.

Unsere Experimente und Studien legen nahe, dass moderne Robotik­systeme durchaus über die Flexi­bi­li­tät verfügen, regelmäßig und vor Ort an wechselnde Aufgaben angepasst zu werden, wie es zum Beispiel für Klein­serien­ferti­gung oder Pro­to­typen­bau notwendig ist. Dazu reicht die rein technische Flexi­bi­li­tät allerdings nicht aus, denn sie erfordert immer noch lange Einarbei­tung und Robotik­exper­ten. Erst in der Kombi­nation mit lernenden Systemen und einfachen Inter­aktions­schnitt­stel­len spielen solche Systeme ihr volles Potential aus.

Christian Emmerich und Arne Nordmann sind Doktoranden am Forschungs­institut für Kognition und Robotik der Universität Bielefeld und beschäftigen sich mit lernenden, interaktiven Robotik­systemen.

1
Wrede, S., Emmerich, C., Grünberg, R., Nordmann, A., Swadzba A., Steil, J.J.: A User Study on Kinesthetic Teaching of Redundant Robots in Task and Configuration Space, Journal of Human-Robot Interaction (Special Issue: HRI System Studies), 2013
2
Näheres zu den verwendeten Lernverfahren hier: Nordmann A., Emmerich C., Rüther S., Lemme A., Wrede S., Steil J.J.: Teaching Nullspace Constraints in Physical Human-Robot Interaction using Reservoir Computing, International Conference on Robotics and Automation, 2012

Ein Roboter-Rüssel lernt wie ein Baby

Arne am 26.05.2013 um 20:41 Uhr - zum Artikel

Festos Bionic Handling Assistent (BHA), inspiriert von einem ElefantenrüsselFestos Bionic Handling Assistent (BHA), inspiriert von einem Elefantenrüssel

Schon vor gut einem Jahr habe ich über Festos Bionic Handling Assistent (BHA) geschrieben, der damals frisch mit dem Deutschen Zukunftspreis gekrönt war. Wir haben einen von diesen Robotern bekommen und im April letzten Jahres haben wir bereits hier über unsere ersten Gehversuche und die Simulation des Roboters geschrieben. In diesem Artikel wird es nun darum gehen, wie wir von Babys gelernt haben, den Roboter zu kontrollieren.

Vor einigen Wochen wurde der BHA in der Sendung mit der Maus gezeigt. Wer das Video bis zu Minute 5:00 verfolgt, bekommt jedoch den Haken mit: so faszinierend der Roboter, insbesondere der BHA, auch ist … es ist ebenso kompliziert, ihn zu bewegen.

Die Sendung mit der Maus - Festos BHA und Robotino

In der Sendung und bei den meisten Vorführungen des Roboters steht daher jemand an einer Fernbedienung, oder öffnet und schließt händisch die Ventile, wie zu Beginn des Videos zu sehen. Von einem praktischen Einsatz, bei dem der Roboter eigenständig Aufgaben erledigt, ist das noch meilenweit entfernt.

Das liegt unter anderem daran, dass der Rüssel anders ist, als andere Roboter. Seine elastischen Bewegungen sind sehr schwierig und nur annähernd in mathematische Gleichungen zu fassen. Genau diese Bewegungsgleichungen benötigen aber die klassische Verfahren zur Robotersteuerung. Selbst unser Modell reicht dazu kaum aus, denn es kann keine Auskunft über die Reichweite der vielen Aktuatoren liefern. Diese müsste man sehr genau kennen um den Roboter (klassisch) ansteuern zu können: es ergeben sich schnell sehr große Fehler, wenn der Regler einem Aktuator einen Befehl gibt, der außerhalb seiner Reichweite liegt.

Was das Ganze noch schwieriger macht sind die Verzögerungen im Bewegungsverhalten: der Roboter bewegt sich mittels Luftkammern, die mit Druckluft aufgeblasen werden, die aber erst mit Verzögerung in den Kammern ankommt. Danach dauert es einige Zeit, mitunter bis zu 20 Sekunden, bis der Roboter seine neue Postur erreicht und sich stabilisiert hat. Diese Verzögerungen machen viele der sonst auf Robotern verwendeten Regler praktisch nutzlos, da sie schnelles und exaktes Roboterverhalten benötigen.

Schwierig … aber dafür gibt es maschinelle Lernverfahren, von denen es unzählige Methoden gibt, um Roboter Bewegungen lernen zu lassen. Zunächst muss man den Roboter seinen Bewegungsraum explorieren lassen, also ausprobieren welche resultierenden Bewegungen durch verschiedene Motorkommandos hervorgerufen werden. Da liegt allerdings schon die nächste Krux mit dem BHA, denn: es gibt sehr, sehr viele verschiedene Motorkommandos. Die Standard-Ansätze zum Lernen erfordern, sie alle auszuprobieren. Auf dem BHA benutzen wir aktuell neun Aktuatoren (die Luftkammern). Möchte man pro Aktuator nur 10 verschiedene Kommandos ausprobieren, ergeben sich bereits eine Milliarde (10^9) Kombinationen. Es würde Jahrzehnte dauern, würde man ernsthaft versuchen die alle auf dem Roboter zu explorieren. In der Praxis würde man daher eher zufällige Kommandos auswählen, und einfach irgendwann aufhören. Natürlich ändert das aber auch nichts daran, dass man eigentlich alle Kommandos ausprobieren müsste, damit das Bewegungslernen funktionieren kann.

Was tun?

Um diesem Problem zu begegnen, haben wir uns Inspiration aus der Biologie geholt. Die Aufgabe, den BHA-Rüssel kontrollieren zu lernen, ist nämlich in vielerlei Hinsicht der Aufgabe von Babys sehr ähnlich, in den ersten Lebensmonaten zu lernen, ihre eigenen Gliedmaßen zielgerichtet zu bewegen. Sie müssen dafür lernen, 600 Muskeln zu koordinieren, und sind dabei unglaublich effizient. Was ist also der Trick, den wir lernen müssen, wenn wir unsere Experimente mit dem BHA ähnlich effizient durchführen wollen?

Einen Hinweis liefert eine wegweisende Studie von Claes von Hosten aus dem Jahr 1982. Diese Studie konnte zeigen, dass selbst Neugeborene sich nicht ‐ wie es zuerst scheint ‐ zufällig bewegen, sondern von Beginn an zielgerichtet in Richtung bewegter Objekte greifen. Das folgende Bild zeigt dies unglaublicherweise bereits bei einem wenige Tage alten Baby:

Ein wenige Tage altes Neugeborenes zeigt bereits zielgerichtete Bewegung Richtung bewegter ObjekteEin wenige Tage altes Neugeborenes zeigt bereits zielgerichtete Bewegung Richtung bewegter Objekte

Diese Erkenntnis wurde lange von der Machine Learning Community ignoriert, und sollte uns den entscheidenden Hinweis geben. Der von Matthias Rolf entwickelte Ansatz Goal Babbling, versucht nicht mehr durch zufällige Bewegungen den Bewegungsraum zu explorieren (Motor Babbling), sondern tut es von Anfang an zielgerichtet [Rolf et al., 2011]. Die Ergebnisse in Simulation waren vielversprechend, und haben gezeigt, dass dieser Ansatz auch mit 50 Freiheitsgraden zurecht kommt und nicht einmal mehr Zeit benötigt als für einen Roboter mit nur zwei Gelenken. Das ist ein entscheidender Vorteil gegenüber dem zufälligen Explorieren des Raumes, dessen Zeit zum Explorieren exponentiell mit der Anzahl der Dimensionen steigt. Mit Goal Babbling erhalten wir erste brauchbare Resultate bereits nach wenigen hundert Bewegungen, was sogar mit der Geschwindigkeit menschlichen Lernens vergleichbar ist [Sailer and Flanagan, 2005]. Wir können also offenbar wirklich mit der biologischen Vorlage das Lernen massiv beschleunigen! Zeit also, das biologisch-inspirierte Lernen auf dem biologisch inspirierten Roboter anzuwenden.

In unseren ersten Experimenten lernte der Roboter lediglich einfache Bewegungen des Greifers nach links und rechts. Nicht besonders nützlich, aber trotzdem beeindruckend als Live-Demonstration, denn der Roboter konnte innerhalb von zwei Minuten eigenständig lernen, seine neun Kammern zu koordinieren und diese Bewegung auszuführen. Schnell zeigte sich außerdem, wie gut das Verfahren mit Hardware-Defekten umgehen konnte, obwohl wir wahrlich nicht vor hatten, das herauszufinden. Eines Tages während der Experimente stellten wir jedoch ein kleines Loch in einer der Luftkammern fest, durch das Luft entwich: die Kammer konnte sich nicht mehr aufblasen. Schlimmer noch: die Kammer bewegte sich passiv wie eine mechanische Feder mit, was die Bewegung des gesamten BHA-Rüssels beeinflusste. Das Lernverfahren scherte das kaum. Es lernte einfach die anderen Aktuatoren entsprechend einzusetzen ‐ zusammen mit der passiven Bewegung des defekten Aktuators. Wohlgemerkt: wir mussten dem Verfahren dafür nicht mitteilen, dass etwas defekt war. So einfach kann es manchmal sein!

Eine ähnlich gute Entdeckung machten wir, als jemand den Roboter hin und her schob, während er grade explorierte und lernte. Durch das Anschubsen des Roboters konnte man ihm tatsächlich unter die Arme greifen und ihm zeigen, wie sinnvolle Bewegungen aussehen. Schiebt man ihn in die Richtung, in die er sich gerade bewegen will (also die richtige Richtung), spürt man bemerkenswerterweise kaum Widerstand vom Regler. Das Lernen geschieht in diesen Momenten so schnell, das der Roboter die Bewegung schon während des Führens in den gelernten Regler einarbeitet. Folglich reicht es aus, ihm die Bewegung ein einziges mal zu zeigen. Das Ganze ist überhaupt nur möglich, weil das ziel-gerichtete Explorieren und sehr schnelles kontinuierliches Lernen des Goal Babblings mit dem leichten, nachgiebigen BHA-Rüssel aufeinander treffen. Preis-gekrönte [1] , biologisch inspirierte Hardware und preis-gekröntes [2] , biologisch inspiriertes Lernen.

Bei dem gesamten Vorhaben leistete uns die vorher entwickelte Simulation des Bewegungsverhaltens gute Dienste. Auch wenn das Lernen und Explorieren auf dem echten Roboter stattfand, war die Simulation für allerhand Visualisierungen und zusätzliche Vorhersagen nützlich. So ließ sich nun die Bewegung des Roboters bezüglich selbst-generierter (und ausschließlich virtuell existierender) Ziele während des Lernens darstellen, und das Lernen auf dreidimensionale Ziele (anstatt nur links/rechts) erweitern. Wir konnten nun Einblick in das Lernen nehmen und live während des Lernens vorhersagen, wie gut der gerade lernende Regler verschiedene Positionen im Raum anfahren kann. Wir lernten dadurch, dass sich das Lernen auf dem echten Roboter ganz ähnlich entfaltet wie es unsere ersten Simulations-Experimenten 2010 bis Anfang 2011 (noch komplett ohne den BHA) gezeigt haben.

Biologisch inspiriertes Lernen auf einem biologisch inspirierten Roboter

Auf dem Rüssel liefert Goal Babbling schnell nützliche Ergebnisse. Nach dem Lernen lässt sich der Greifer mit ca. 2 cm Genauigkeit im Raum positionieren. Das ist nicht direkt perfekt, aber reicht in vielen Fällen schon aus, da der flexible Fin-Gripper Gegenstände großräumig mit seinen elastischen Fingern umschließt. Um den Rüssel so schnell und gezielt wie im Video bewegen zu können, darf man nicht auf Feedback (also Bewegungsantworten) vom Roboter warten, da das bei der Pneumatik zu lange dauert. Solch einen Regler, der ohne Feedback auskommt, liefert uns das Lernen. Dadurch weiß der Roboter sofort, wo er hin muss, anstatt sich langsam und Schritt für Schritt ans Ziel heranzutasten. Feedback ist dann lediglich eine zusätzliche Hilfe, die wie in der letzten Sequenz im Video zu sehen, die Genauigkeiten auf 6-8 mm erhöht. In Anbetracht der Tatsache, dass der Rüssel selbst permanent ca. 5 mm hin- und herschwankt, ist das beachtlich.

Erwähnenswert ist außerdem: das Ganze funktioniert nicht nur einmalig und im Video. Wir haben sehr ausgiebige Experimente dazu gemacht, und es funktionierte in jedem Durchgang. Das Lernen von links-/rechts-Bewegungen haben wir regelmäßig in Live-Demos gezeigt, in denen der Roboter binnen 1-3 Minuten seine Bewegungen lernt. Unter Anderem haben wir dies live auf der Automatica 2012 in München gezeigt, auf der das Live-Lernen mit dem Roboter und dem Objekt-Tracking aus dem Video vier Tage lang jeweils acht Stunden lief.

Die gute Nachricht lautet also: es funktioniert! Und es funktioniert robust!

Festos Bionic Handling Assistant ist ein großartiger, spannender Roboter. Er ist nicht nur ein Hingucker durch seine Ähnlichkeit mit dem Elefantenrüssel, sondern seine Struktur macht auch den Umgang und die Interaktion mit ihm natürlich und sicher. Um ihn allerdings auf ähnliche Art und Weise kontrollieren zu können, wie wir es mit anderen Robotern tun, mussten wir einige Hürden überwinden: Ausgangspunkt war ein Roboter ganz ohne Modell und nur mit einfacher Druckregelung. Stück für Stück haben wir ein Vorwärtsmodell der Kinematik, Simulation und Längenregelung hinzugefügt. Der entscheidende Punkt war allerdings, maschinelles Lernen, vor Allem das durch Beobachtung von Babys inspirierte Goal Babbling einzusetzen, das erstaunlich schnell lernt, den Roboter zu kontrollieren.

Jetzt, da wir den Rüssel kontrollieren können, um Objekte zu greifen und zu bewegen: Für welche Aufgaben sollten wir ihn jetzt unbedingt einsetzen?

Kontakt:

1
Zukunftspreis für Festos Bionischen Handling-Assistenten
2
ICDL 2011 Best Student Paper Award

Ursprung der Technik: Roboter

Arne am 29.03.2013 um 16:43 Uhr - zum Artikel

Hier ein Hinweis auf einen Beitrag, den ich heute auf ZDF Info sah. Habe ihn gerade auch auf Youtube gefunden:

Ursprung der Technik: Roboter

Für mich bleibt der verwendete Roboter-Begriff immernoch etwas befremdlich und weit gegriffen. Wenngleich mich einige ungenaue und irreführende Formulierungen sowie der übermäßige Gebrauch von Superlativen etwas stört, finde ich in dem Beitrag dennoch eine nette Zusammenstellung über die historischen Anfänge der Automatisierungstechnik. Der Beitrag hat bei mir letzlich ein wenig Appetit geweckt, mich in Zukunft mit der Materie zu befassen.

Elastische Roboterarmkörper – Fluch oder Segen?

Jörn am 10.02.2013 um 16:57 Uhr - zum Artikel

Die Vermeidung unerwünschter elastischer Effekte stellt eine große Herausforderung bei der Konstruktion von Robotern dar. Sie erschweren die präzise Positionierung des Roboterarms aufgrund statischer lastabhängiger Verbiegungen und schwingen nach jeder Bewegung nach. Vergleichbare Beispiele, bei denen Elastizitäten meist unerwünscht sind, finden wir fernab der Robotik bei Baumaschinen, wie Auto-Betonpumpen, Hubwagen aber auch Feuerwehrdrehleitern.

Wie wäre es, wenn auf die Steifigkeit bei der Auslegung einer Maschine weniger Wert gelegt werden müsste, da den damit einhergehenden unerwünschten Effekten mit regelungstechnischem Mitteln begegnet werden kann? Mechanische Strukturen könnten mit schlicht weniger Material leichter gebaut werden. Infolge dessen ließen sich Antriebe kleiner dimensionieren und hätten einen geringeren Energiebedarf.

Dieser Gedanke ist genau die Idee hinter dem Forschungsthema, dass ich bearbeite. Im Rahmen des Forschungsthemas haben wir den nachfolgend dargestellten gliedelastischen Roboterarm TUDOR als Experimentalsystem entwickelt.

Das gliedelastische Experimentalsystem TUDORDas gliedelastische Experimentalsystem TUDOR

Er wird von drei bürstenlosen Gleichstrommotoren angetrieben und besitzt zwei Federstahlbalken als elastische Armkörper. Bei einer typischen Punkt-zu-Punkt-Bewegung der Antriebe treten Schwingungsamplituden von bis zu 10 cm auf.

Auf den Roboter-Konferenzen dieser Welt werden aktuell viele Beiträge zu Robotern mit elastischen Komponenten vorgestellt. Die elastischen Komponenten werden meist in die Robotergelenke integriert. Ein sehr heißes Thema sind vor allem Gelenke, bei denen sich die elastischen Eigenschaften der Komponenten aktiv variieren lassen. Die Elastizitäten bewirken, dass die aufgrund der hohen Getriebeübersetzung üblicher Roboterarme sehr großen Trägheitsmomente der Antriebe von den Trägheitsmomenten des übrigen Arms entkoppelt werden. Das bedeutet, dass im Falle eines physischen Kontakts mit dem Roboter der Interaktionspartner eine geringere Trägheit des Armes "sieht". Damit kann beispielsweise eine Verringerung des Gefährdungspotenzials des Roboters erzielt werden. Auf der anderen Seite speichern die Elastizitäten zusätzliche Energie, die im Falle eine Kollision freigesetzt und wiederum ein erhöhtes Gefahrenpotential (Peitscheneffekt) zur Folge haben kann. Häufig werden Elastizitäten eingesetzt, um dem Roboter zu natürlicheren und auch dynamischen Bewegungen zu verhelfen. Es ist festzuhalten, dass durch eine geeignete Regelung gezielt eingesetzte elastische Komponenten zahlreiche Möglichkeiten eröffnen.

Aus regelungstechnischer Sicht sind die elastischen Eigenschaften in den Robotergelenken am einfachsten zu beherrschen. Hier ist die Elastizität entlang der Wirkachse der Antriebe konzentriert. Überwiegt die Elastizität in den Roboter Armkörpern, so sind die elastischen Eigenschaften entlang der Armkörper und senkrecht zur Wirkachse der Antriebe verteilt. Die dadurch entstehenden Laufzeiteffekte erschweren eine Regelung des Roboterarms. Dies mag der Grund sein, aus dem derzeit vorwiegend Arbeiten zu gelenkelastischen Roboterarmen publiziert werden.

Mit TUDOR hat uns zunächst die Frage interessiert, ob wir mit einem gliedelastischen Roboterarm trotz der Schwingungen und last- und konfigurationsabhängigen variablen Verbiegungen eine zielgerichtete Aufgabe präzise in geforderter Zeit erledigen können. Als Demonstration hierzu haben wir uns, wie im nachfolgenden Bild dargestellt, das Fangen eines Balles ausgedacht.

Ballfangen-SzenarioBallfangen-Szenario

Ein menschlicher Werfer wirft den Ball in Richtung des Roboters. Die Flugbahn wird mittels einer Kinect-Kamera ermittelt und der Durchstoßpunkt der Flugbahn mit der Bewegungsebene des Roboters berechnet. Bevor der Ball am Roboter vorbei fliegt, bewegt der Roboter ein am Armende montiertes Netz dorthin und fängt den Ball damit auf. Das Resultat haben wir im nachfolgenden Video zusammengefasst:

A multi-link-flexible robot arm catching thrown softballs.

Sofern die Schwingungen regelungstechnisch unterdrückt und Abweichungen aufgrund statischer Verbiegungen kompensiert werden können, ließen sich in manchen Anwendungen diese elastischen Eigenschaften vielleicht nicht mehr nur als Problem verstehen. Vielmehr könnten elastische Eigenschaften vielleicht auch ausgenutzt werden, um beispielsweise Kontaktsituationen zu erkennen und darauf zu reagieren. Mit aktiv geregelten moderat gelenkelastischen Roboterarmen wurde dies ja bereits eindrucksvoll gezeigt.

Bezüglich gliedelastischer Roboter ist die Dämpfung auftretender Schwingungen bislang noch das dominierende Thema in Publikationen.

In den vergangenen Tagen konnten wir hier womöglich einen ersten Schritt über die reine Schwingungsdämpfung hinaus machen. Basierend auf einer Kraftregelung ist es uns gelungen ein Regelungskonzept zu entwickeln, bei dem wir die Schwingungen der mechanischen Struktur eines Roboterarms unterdrücken und zugleich die Nachgiebigkeit aktiv beeinflussen können. Einige Experimente dazu haben wir in nachfolgendem Video festgehalten:

Video zur Kraftregelung eines gliedelastischen Roboterarms

In dem Regelungskonzept wird die Information über die auf die Robterarme einwirkenden Kräfte mittels Dehnungsmessstreifen erfasst und individuell auf die Antriebsregler zurückgeführt. Auf diese Weise werden Schwingungen in der Armstruktur unterdrückt obgleich sie von der Gelenkbewegung oder der Interaktion mit der Umgebung herrühren. Zusätzlich lässt sich die Nachgiebigkeit des Roboterarms derart beeinflussen, dass wir mit sehr wenig Kraft den Roboterarm aus seiner aktuellen Position schieben können und die Wahrscheinlichkeit fragile Objekte bei einer unvorhergesehnen Kollision zu zerbrechen deutlich reduziert wird.

Also: elastische Roboterarmkörper - Fluch oder Segen? Trotz dieser Experimente sind noch zahlreiche Herausforderungen zu meistern und fragen zu beantworten. Dennoch scheint es mir, als schlummertem in den Elastizitäten der Armkörper nicht nur Probleme, sondern auch Potenziale.

Ich freue mich darauf zu sehen, wo die Reise noch hinführen wird.

Simulation des Bionischen Handling-Assistenten

Arne am 17.04.2012 um 11:27 Uhr - zum Artikel

Im April 2010 wurde der Bionische Handling-Assistent (BHA) von Festo auf der Hannover Messe der Öffent­lich­keit vorgestellt. In den fol­gen­den Mona­ten sah dieser bio­lo­gisch inspirierte Roboter­arm zu recht eine große Medien­präsenz und wurde mit zahl­reichen Prei­sen, unter anderem dem Deutschen Forschungspreis 2010, aus­ge­zeich­net. Im Februar 2011 bekamen wir dann unseren eigenen BHA, voller Vor­freude, denn wir wussten, dass niemand bislang mit dem BHA tun konnte, was wir mit ihm vor­hat­ten: ihn zu kon­trol­lieren. [1]

Die Struktur und Funk­tions­weise des BHA ist inspi­riert von einem Elefan­ten­rüs­sel, wie in fol­gen­der Ab­bildung un­schwer zu erken­nen ist. Der Arm wird im Sinne des Rapid Proto­typings im 3D-Drucker gedruckt. Als Material wird Polyamid ver­wen­det, wodurch der gesamte Arm leicht-gewich­tig und durch­gängig ver­form­bar wird: Im Wesent­lichen besteht der BHA also aus Plastik und einer Menge Luft. Bewegt wird der Arm von drei­zehn pneu­ma­ti­schen Ven­tilen, die die drei­zehn Kammern des Robo­ters mit Luft füllen oder ent­leeren. Dies wiederum verbiegt, beugt und streckt die kom­plet­te Struktur.

Von einem Elefantenrüssel inspiriertVon einem Elefantenrüssel inspiriert

Festo hat mit dem BHA die Vision eines leichten, frei­beweg­lichen Dritte-Hand-Systems, das den Men­schen bei seiner Arbeit unter­stützen kann. Dank seiner struk­tu­rel­len Nach­giebig­keit (Compliance) ist der Arm im Kontakt mit Menschen und seiner Umgebung natur­gemäß sicher, was die Mög­lich­keiten von direkter Zu­sam­men­arbeit von Mensch und Roboter eröffnet. In in­dustriel­lem Kontext kann der BHA in Fertigungs­pro­zes­sen ein­ge­setzt werden, z.B. um mit empfind­lichen Gütern wie z.B. Lebens­mit­teln zu arbeiten.

Als wir uns ent­schlos­sen haben, Festos Bio­nischen Handling-Assisten­ten zu erwer­ben, wussten wir, dass wenige der klas­si­schen und bekannten Ver­fahren mit diesem Roboter funktio­nie­ren würden. Trotz­dem war über­raschend, dass der Roboter ohne jeg­liche Software aus­ge­lie­fert wurde.

Keine Software.

Nichts.

Noch bis vor einem Jahr konnten wir mit dem BHA nicht viel mehr tun, als von Hand die pneu­ma­ti­schen Ven­tile zu öffnen und zu schließen, um damit entweder vol­len Druck oder gar keinen Druck in die Kam­mern zu geben. Auch damit waren die Be­we­gun­gen des Robo­ters absolut fas­zi­nie­rend und wir hatten großen Spaß, aber ernst­hafte An­wen­dungen waren damit natür­lich noch nicht möglich. Wie von Festo zugesagt, bekamen wir dann vor fast genau einem Jahr elektro­nische Ventile, mit denen wir (mehr oder weniger präzise) den Druck in den Kammern auto­ma­tisch vor­geben konnten. Nicht mehr und nicht weniger: den Druck kon­trol­lie­ren.

Um es einmal vorsichtig zu sagen: Der Schritt von dieser Druck­re­ge­lung zu einer ernst­haften An­wendung mit dem BHA ist groß!

Das tat­säch­liche Werkzeug, dass man mit dem BHA kon­trol­lieren will, ist der so­ge­nan­nte Fin Gripper am Ende des Arms. Diesen Greifer zu al­ler­dings genau zu po­si­tio­nie­ren setzt zu­al­ler­erst voraus, die Postur des Arms prä­zise bestimmen zu können. Den Druck in den ein­zel­nen Kam­mern zu kennen, reicht dafür bei weitem nicht aus; dass dies zum Scheitern ver­ur­teilt sein würde, diese Er­fah­rung hatten wir bereits mir anderen Robo­tik­platt­for­men gemacht: Zehn Mal den gleichen Druck auf einen pneu­ma­ti­schen Roboter zu geben, ergibt im Regel­fall zehn ver­schie­dene Posturen des Robo­ters. Reibung, Reibung, Hyste­rese-Effekte und Nicht-Stationaritäten ver­ändern das Ergeb­nis von Mal zu Mal.

Die kinematische Struktur des BHADie kinematische Struktur des BHA

Um diesen Problemen zu begegnen, besitzt der BHA Längen­sen­soren (Kabel-Poten­tio­meter), um an der Außen­seite des Arms die Streckung der einzel­nen Kam­mern zu messen (siehe obige Abbildung). Natür­lich wollten wir diese Länge nicht nur kennen, sondern auch kontrol­lieren können. Das ist theore­tisch mit klas­si­scher (PID-)Regel­technik möglich, aber funktio­niert auf diese Weise nur sehr schlecht. Um dieses Ver­hal­ten zu verbes­sern, könnte man nun ver­suchen, all das Wissen über den BHA in eine aus­ge­feil­tere Regelungs­technik zu stecken. Wenn man dieses Wissen bloß hätte …

Eine kurze Liste von Dingen, die man über den BHA nicht weiß:

  1. Das präzise Verhältnis zwischen Druck in den Kammern und der geo­me­trischen Postur im Ruhe­punkt (im Equi­li­brium)

  2. Jegliche Art von Dynamik (nicht nur der Pneu­ma­tik selbst, sondern auch des sehr viel lang­sa­me­ren Zusam­men­spiels zwischen der Pneu­matik und Geo­me­trie)

  3. Welche Länge des Arms bzw. der einzelnen Kam­mern ist über­haupt mög­lich? Wo liegen die Gren­zen?

  4. Und nicht zuletzt: Wie genau ist das Zusam­men­spiel der obigen Aspekte zwi­schen den einzel­nen Kam­mern. Denn: Es be­steht ein starker Zusam­men­hang!

Alles zusammen eine große Heraus­for­de­rung … aber nicht un­mög­lich. An­ge­nom­men also, die Länge des Aktu­a­tors lässt sich mes­sen und kontrol­lieren. Um nun die End­ef­fektor-Posi­tion (die Posi­tion des Greifers) zu kon­trol­lieren … muss man die aktu­el­le End­ef­fek­tor-Posi­tion kennen!

Die Endeffektor-Position anhand der Geo­metrie des Robo­ters und der Stel­lung der Aktua­toren zu er­rech­nen, nennt sich Vor­wärts-Kine­ma­tik und ist für handels­übliche Robo­ter kein großes Pro­blem, son­dern ein­fache Tri­go­no­metrie. Der BHA gehört allerdings zu einer anderen Klasse von Morpho­lo­gien, genannt Conti­nuum Kine­ma­tics (also in etwa: konti­nu­ier­liche Kine­ma­tik). Dank seiner mecha­ni­schen Flexi­bi­li­tät besitzt dieser Robo­ter­arm unend­lich viele Frei­heits­grade, da jeder Bereich des Robo­ters unter­schied­lich gebo­gen und ge­streckt sein kann. Unend­lich viele Frei­heits­grade kön­nen weder mit Sen­so­ren ge­mes­sen noch berech­net werden.

Als wir unsere Arbeit mit dem BHA be­gon­nen haben, planten wir nicht, die kom­pli­zier­te Kine­ma­tik des BHA zu simu­lie­ren. Da wir uns im Kontext des BHA haupt­säch­lich mit Maschi­nel­lem Ler­nen be­schäfti­gen, wollten wir die End­ef­fek­tor-Posi­tion schlicht messen, um sie be­nut­zen zu können (tun wir auch). Dass wir trotzdem eine Simu­la­tion benö­ti­gen würden, stellte sich heraus, als wir Schwierig­kei­ten in der Vi­suali­sie­rung bekamen. Wir wollten nämlich dar­stel­len, wie die räum­lichen Koor­di­na­ten mit den Be­we­gun­gen des BHA zu­sam­men­hän­gen.

Da Visualisierung Kenntnis der Kinematik voraus­setzt, began­nen wir, sie an­zu­nähern. Selbst wenn sich die Beugung und Streckung von unend­lich vielen Frei­heits­graden nicht berech­nen lässt, so lassen sich doch durch die Längen­senso­ren einige An­nah­men zur Beugung des Arms tref­fen. Die einfach­ste Art der Beugung ist eine kreis­förmige; im drei-dimen­sio­nalen Fall ent­spricht dies einem Torus:

Torus-Modell zur Annäherung der Beugung des BHATorus-Modell zur Annäherung der Beugung des BHA

Das Bild zeigt, wie sich ein Segment mit drei Aktua­toren (in der Ab­bil­dung als graue Röhren dar­ge­stellt) entlang eines Torus verbiegt. Diese Geometrie kann mit drei Parametern beschrieben werden: zwei Winkel (in der Abbildung blau dargestellt) und der Radius des Torus (in der Abbildung rot). Diese drei Parameter können anhand der gemessenen Längen an der Außenseite der BHA-Segmente rekonstruiert werden. Sobald diese Parameter bestimmt sind, ist das Berechnen der Vorwärtskinematik und damit die Bestimmung der Endeffektor-Position (also der Position des Greifers) einfach. Ein Problem tritt lediglich im Grenzfall auf, wenn alle Längen gleich sind, wenn also alle Kammern gleich gestreckt sind. Diese Verformung kann durch einen Torus nicht dargestellt werden, obwohl der BHA zu solch einer Bewegung in der Lage ist. Auch für dieses Problem ließ sich allerdings eine einfache, numerisch stabile Lösung finden. Der BHA lässt sich somit durch Aufeinandersetzen dreier solcher Segmente darstellen und simulieren.

Die gezeigten Torusdeformationen sind sehr einfache Annäherungen des Arms im Vergleich zu kom­plexen Physik des Ver­for­mungs-Pro­blems. Üblicherweise ist diese Art von Annäherung daher nicht hinreichend für diese Art von Robotern (siehe z.B. Trivedi 2008 [2] ). Nicht jedoch für den BHA: Hier funktioniert die beschriebene Lösung sehr gut, in unseren Tests sehen wir einen durchschnittlichen Fehler von 1cm auf einer Länge von 1m. Nicht perfekt, aber absolut ausreichend für unsere Zwecke und außerdem durchaus konkurrenzfähig zu Lösungen in der Literatur.

Das folgende Video zeigt das simulierte Modell und unseren BHA:

BHA-Simulation

Der große Vorteil des benutzten einfachen Torus-Modells ist seine Geschwindigkeit in der Berechnung. Unsere Software-Bibliothek ist auf Basis dieses Modells in der Lage, die Vorwärtskinematik des BHA auf einem einzelnen CPU-Kern mehrere zehntausend Mal in der Sekunde zu berechnen. Auch wenn wir diese Simulation ursprünglich nicht geplant hatten, ist sie damit mittlerweile eine essentielles Werkzeug bei unserer Arbeit mit dem BHA geworden. Die interessanten Dinge machen wir weiterhin auch auf der echten Hardware, aber parallel lassen sich nun viele Dinge bequem vorberechnen und darstellen.

Die Kinematik-Simulation ist in C++ implementiert und als Open-Source-Bibliothek verfügbar. Über die folgende Seite kann sie heruntergeladen werden und enthält sowohl die Vorwärtskinematik als auch die gezeigte OpenGL-basierte 3D-Visualisierung: http://www.cor-lab.de/software-continuum-kinematics-simulation Wir freuen uns über Benutzer und Erfahrungsberichte.

Der folgende einfache Code-Schnipsel berechnet zum Beispiel die Vorwärtskinematik des BHA:

// create robot morphology with segment radii 0.1, 0.09 and 0.08 meters ContinuumRobotKinematics kinematics(RealVector(0.1, 0.09, 0.08)); // specify an end effector offset kinematics.setEndEffectorOffset(RealVector(0.0, 0.0, 0.14)); // this is the forward kinematics function: Mapping<RealVector,RealVector> fwdKin = kinematics.getForwardPositionKinematics(); // try out some posture (a combination of actuator lengths) RealVector posture = {0.2,0.24,0.24,0.2,0.24,0.24,0.2,0.24,0.24}; // this is the resulting end-effector position RealVector position = fwdKin(posture); // [-0.3808, 0, 0.686287]

Neben der in diesem Artikel beschriebenen Kinematik-Berechnung und Simulation des BHA, haben wir in den letzten Monaten noch viele weitere spannende Dinge mit dem BHA gemacht, die wir auf der Automatica-Messe im Mai in München zeigen werden: Um zu sehen wie wir trotz der zahlreichen obigen Probleme mithilfe maschineller Lernmethoden den Greifer auf dem echten BHA im Arbeitsraum zu kontrollieren gelernt haben, lohnt sich also ein Besuch unseres Standes auf der Automatica in München: Stand 427 und 429 in Halle B3, vom 22. bis 25. Mai.

Kontakt:

1
„Kontrollieren“ im regelungstechnischen Sinne. Hier also gemeint: Regeln der Endeffektor-Position.
2
Geometrically Exact Models for Soft Robotic Manipulators

Matthias Rolf ist Wissenschaftler am Re­search In­sti­tute for Cog­nition and Ro­bo­tics an der Universität Bielefeld. Sein Hauptinteresse in der Forschung ist *Motor Learn­ing in Develop­men­tal Robotics.