Bit-Bots auf dem RoHOW 2018

Was ist ein RoHOW? Kann man das essen?
Der RoHOW ist eine Veranstaltung, auf der sich Forscher und Studenten mit Interesse an humanoider Robotik treffen. Natürlich waren wir deshalb auch dabei! Dafür haben wir uns mit 13 Mitgliedern auf den Weg zur Technischen Universität Hamburg gemacht. Neben uns waren noch Forschungsgruppen aus ganz Deutschland, aus Italien und den Niederlanden dabei.

Es gab Vorträge und Workshops von den Teilnehmern und von Forschern aus der Industrie, die ihre Arbeit vorgestellt haben.
Für den RoHOW wurde in der Mensa der TUHH ein Spielfeld aufgebaut. Natürlich haben wir unsere Roboter direkt auf das Feld gestellt und von Hardware über die Visualisierung bis hin zur Software z.B. unser neu entwickeltes World Model alles getestet.
Den RoHOW selber kann man zwar nicht essen, trotzdem war für unser kulinarisches Wohl gesorgt. Am ersten Abend haben wir von subventionierter Pizza profitiert und jeden Morgen konnten wir kostenloses Frühstück genießen. Zusätzlich gab es kostenlos zu Trinken. Von allen möglichen Softdrinks bis hin zum grünen Bier, von der TUHH eigenen AG für die Hulks (den Veranstaltern des RoHOWs) in ihrer Teamfarbe gebraut wurde.
 

Standard Platform League
Die meisten Teilnehmer des RoHOWs spielen in der Standard Platform League (SPL). Die SPL Teams haben dabei, wie auch wir, das Ziel Fußball zu spielen. Die Roboter der SPL Teams sind aber hardwaretechnisch sehr stark begrenzt. Sie haben nur eine CPU mit einem Kern zur Verfügung. Ein großes Thema auf dem RoHOW war aber die angekündigte nächste Generation dieses Roboters, bei dem die Teams dann vier Kerne nutzen können.
Unsere Roboter haben keine so starken Vorschriften und deshalb konnten wir bereits einen Odroid, einen Intel Nuc und eine Nvidia Jetson gleichzeitig einbauen.

Bildquelle: https://github.com/bhuman/BHumanCodeRelease/blob/master/CodeRelease2018.pdf

Teams aus ganz Europa
Zehn Teams haben an dem RoHOW teilgenommen. Teams aus ganz Deutschland, das SPQR Robot Team aus Italien sowie das Dutch Nao Team aus den Niederlanden waren dabei. Die Chance haben wir genutzt, um uns mit den anderen Teams von technischen Details unserer Roboter bis hin zu den Erlebnissen der Reisen zu den letzten Robocup WMs auszutauschen.

Workshop zu ROS für SPL
Da die SPL Teams bisher nur einen Prozessorkern zur Verfügung hatten, war für sie der Einsatz von ROS nicht sinnvoll. ROS bedeutet Robot Operating System und ist zwar kein Betriebssystem, bietet aber viele Services die ein Betriebssystem zur Verfügung stellen würde. Mit ROS kann man gut von der Hardware abstrahieren und sich damit viel Debugging Arbeit ersparen, die durch Schwierigkeiten mit Hardware entstehen. Außerdem bietet ROS Möglichkeiten, Nachrichten zwischen Prozessen auszutauschen.
Mit der Einführung eines Prozessors mit vier Kernen fanden die Bit-Bots, es würde durchaus Sinn ergeben, dass auch die SPL sich mit dem Thema ROS beschäftigt. Deshalb haben wir einen Workshop angeboten, in dem wir gezeigt haben, wie wir auf unseren Robotern schon erfolgreich mit ROS arbeiten und welche Vorteile es für die SPL Teams haben würde. Nach unserer Vorstellung haben wir gemeinsam darüber diskutiert, ob es den Aufwand wert sei, das bisherige System auf ROS umzustellen. Diskussionspunkte waren, wie viele Ressourcen ROS benötigt und ob sich das Umschreiben der bestehenden Codebasis in die ROS-Strukturen lohnt. Schlussendlich waren die Anwesenden interessiert, aber hatten Zweifel, ROS kurzfristig einführen zu können, könnten sich allerdings langfristig einen Umstieg vorstellen.

ImageTagger Workshop
Der ImageTagger ist eine von den Bit-Bots entwickelte Open-SourceSoftware, um online auf Bildern markieren zu können, wo sich Objekte befinden. Diese Software wird von verschiedenen Teams innerhalb des Robocups eingesetzt, um damit neuronale Netze zu trainieren. Bei diesem Workshop haben wir uns mit mehreren dieser Teams getroffen und über die Nutzung des ImageTaggers und die auftretenden Probleme ausgetauscht. Dadurch sind viele neue Aufgaben entstanden, die wir, aber auch die anderen Teams, in naher Zukunft bearbeiten werden.

Bewerbung für die Weltmeisterschaft
Wir haben uns auf dem RoHOW mit den WF Wolves getroffen. Das Team ist von der Ostfalia Hochschule für angewandte Wissenschaften in Wolfenbüttel und zusammen haben wir uns auf die kommende Weltmeisterschaft in Sydney beworben. Mit den WF Wolves treten wir gemeinsam in zwei Ligen des Robocup Humanoid Soccer Wettkampfes an. Auf dem RoHOW haben wir uns mit den WF Wolves zusammengesetzt und dabei unser Team Description Paper geschrieben. Das Team Description Paper ist eine wissenschaftliche Veröffentlichung, die unsere Hardware und die von uns geschriebene Software beschreibt.

Lokalisierung
Das aufgestellte Feld haben wir direkt benutzt und unsere Roboter darauf platziert. Durch den RoHOW hatten wir Zugang zu einem größeren Feld, als wir es im Labor hätten und dies stellte natürlich einige Herausforderungen an unsere Lokalisierung. Die Ergebnisse waren teilweise schon relativ gut, aber gleichzeitig haben wir auch verschiedene Probleme gefunden, die uns in näherer Zeit beschäftigen werden.

Auf dem Bild sieht man die Position, an der der Roboter sich selbst lokalisiert. Weiß markiert sind Linienpunkte, die von der Vision gefunden werden. Indem die Punkte auf dem vorher bekannten Feld platziert werden, sind wir in der Lage, unsere Position zu bestimmen. Das Bild von dem Roboter ist die Position, die am wahrscheinlichsten ist. Weitere Möglichkeiten werden als rote Pfeile auf dem Feld eingezeichnet.

World Model
Momentan wird im Rahmen einer Bachelorarbeit unser World Model komplett neu entworfen. Anhand des World Models können wir feststellen, wo der Ball am wahrscheinlichsten vor dem Roboter liegt. Dies funktioniert mit einem Neuronalen Netz, genauer gesagt einem Fully Convolutional Neural Network, um den Ball auf dem Kamerabild zu finden und einem Partikelfilter, der ermittelt, wo im Raum der Ball vor ihm liegt. Ausgehend davon haben wir unser Kopfverhalten getestet, indem wir den Kopf des Roboters dazu gebracht haben, die Bewegung des Balles zu verfolgen.

Unten in braun ist die Position der Kamera dargestellt. Die weißen Punkte sind mögliche Positionen des Balles, wie sie von der Vision erkannt wurden. In gelb markiert sind die Partikel, die vom Partikelfilter generiert werden, um damit die Position des Balles zu bestimmen.

URDF
Auf dem RoHOW haben wir das URDF für unsere Roboter angepasst. URDF steht für Unified Robot Description Format. Anhand dieses Formats kann man den Roboter mit seiner Größe und Form genau beschreiben. Diese Daten können dann für die Simulation und die Visualisierung des Roboters verwendet werden. Die Ergebnisse der Visualisierung kann  man auch im Screenshot zur Lokalisierung bestaunen.
Das URDF ist allerdings nicht nur nützlich für die Simulation, sondern wird auch benötigt, um den realen Roboter anzusteuern. Wenn der Roboter eine bestimmte Stelle anschauen soll, weil dort die Position des Balles berechnet wurde, dann muss der Roboter die Höhe seines Kopfes und die Winkel der anderen Motoren kennen. Genau diese Informationen werden im URDF abgespeichert.

 

Fazit
Wir hatten viel Spaß auf dem RoHOW, haben viel mit anderen Teams kommunizieren können und viel Interessantes gelernt. Gleichzeitig haben wir einen großen Teil unserer Software getestet und optimiert. Zusätzlich hatten wir die Gelegenheit, uns über von uns entwickelte und von mehreren Teams verwendeter Software auszutauschen. In diesem Sinne: Vielen Dank an die HULKs für das Organisieren und Veranstalten des RoHOWs!

FacebooktwitterredditpinterestlinkedinmailFacebooktwitterredditpinterestlinkedinmail

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert