Nach unserer Ankunft waren wir zunächst während der Aufbautage damit beschäftigt, unsere Hardware und Software für den Wettbewerb vorzubereiten, weshalb wir noch nicht die Zeit hatten, hier einen Artikel zu veröffentlichen. Heute haben wir dann die harte Arbeit der letzten Tage in den ersten Spielen der diesjährigen Weltmeisterschaft erprobt.
Während der Vorbereitungstage haben wir uns spontan entschlossen, Teile unserer Bilderkennungspipeline durch ein neuronales Netz basierend auf der YOLO-Architektur zu ersetzen, und das mit überraschend erfolgreichem Ergebnis: Wir konnten den Ball quer über das ganze Spielfeld erkennen. Auch die Torpfostenerkennung wurde durch diese Änderungen stark verbessert.
Auch dynamischer sind wir geworden. Wir haben DynUp entwickelt und eine neue Version eines dynamischen Schusses eingebaut, die im Laufe des letzten Semesters von einer Studentengruppe in einem Bachelormodul entwickelt wurde. Dank dieser Module können wir schneller und stabiler aufstehen und den Ball in verschiedene Richtungen schießen, ohne dabei umzufallen.
Schließlich haben wir auch einige Änderungen an unserer Taktik vorgenommen und einige Visualisierungstools verbessert, damit wir während der Spiele einen besseren Überblick darüber bekommen, was unsere Roboter tun.
Heute hatten wir viele Möglichkeiten, unsere Änderungen zu testen: Mit sechs Drop-Ins (Spiele, in denen Roboter aus verschiedenen Teams gemeinsam spielen) und vier regulären Spielen waren wir den ganzen Tag beschäftigt. Zum Glück konnten wir dank unserer Kooperation mit den WF Wolves in allen Spielen Roboter stellen und zusätzlich auch noch unseren Pflichten als Schiedsrichter nachkommen.
Trotzdem lief heute nicht alles perfekt und zwischendurch sah es sogar sehr schlecht für uns aus: Als wir vor ein paar Monaten unsere Kameras ersetzt haben, dachten wir nicht an das zusätzliche Gewicht. Als unsere Roboter während des Spiels fielen, brach daher das Teil, das den Kopf mit dem Torso des Roboters verbindet, da es nicht auf die stärkeren Kräfte beim Fall ausgelegt war. Nach unserem Spiel gegen die ZJLabers waren daher drei unserer vier Roboter kopflos. Es sah düster für uns aus, bis uns eine gute Idee den Wettbewerb rettete. Wir konnten eines der Metallteile aus unserer Schulter, für das wir Ersatzteile dabei hatten, mit kleineren Modifikationen in unseren Nacken einsetzen. Dadurch konnten wir weiterhin mit der neuen Kamera spielen und haben in den weiteren Spielen einige Fortschritte gemacht. Leider konnten wir bisher noch keinen Gewinn verzeichnen, versuchen aber unser Bestes und sind gespannt auf die nächsten Tage.
Noch ist es herbstlich ruhig in Sydney, doch damit is es in zwei Tagen vorbei: Es ist wieder RoboCup und zum zweiten Mal in der Geschichte des RoboCups findet dieser in Australien statt. Genauer gesagt im Sydney Convention and Exhibition Centre. Nicht einmal 10 Minuten Fußweg entfernt davon haben wir unser Basislager aufgeschlagen. Doch zurück zum Anfang, denn vor der Ankunft in Australien lagen drei Flüge und insgesamt 34 bzw 40 Stunden Reisezeit. Aus organisatorischen Gründen mussten nämlich zwei Team-Mitglieder, Jan und Finn, bereits am 28.06 um 10 Uhr in Hamburg losfliegen. Der Rest des Teams, Florian, Jonas, Niklas, Timon, Jasper, Judith, Marc, Tanja und Sebastian, ist erst um 16:45 Richtung London aufgebrochen. Wiedervereint in Hong Kong sollte die Landung eigentlich am 29.06 um 06:45 AEST (Australian Eastern Standard Time) in Sydney stattfinden. Dichter Nebel über dem Flughafen machte dem jedoch einen Strich durch die Rechnung und so gab es noch eine kleine Zwischenlandung in Brisbane, bevor alle um 11:05 AEST Australischen Boden betreten konnten.
Dafür war zumindest Zeit den wunderschönen Sonnenaufgang aus dem Flugzeug zu betrachten.
Am Flughafen stieß dann auch Maike zur Gruppe dazu, die aus Los Angeles mit 15 Stunden eine etwas kürzere Anreise hatte.
Dank der Verspätung konnten wir uns dann auch direkt auf den Weg zur ersten Unterkunft machen. Nachdem wir dieses Jahr mit 11 Team-Mitgliedern und Maike als Mitglied des Executive Committees und Jessica als Mitglied des Organization Committees dabei sind, reicht eine Wohnung nicht mehr aus. Deswegen haben wir eine Wohnung und ein kleines Häuschen (welches nun als Basislager fungiert) gemietet. Bevor wir das Haus beziehen konnten, sind wir aber erst einmal alle gemeinsam Mittag essen gegangen.
Natürlich muss man es auch ausnutzen, wenn man schon einmal in Australien ist. Während die meisten den Abend eher ruhig haben ausklingen lassen und früh schlafen gegangen sind, haben Jan, Jonas und Sebastian noch eine kleine Wanderung bis zur Oper unternommen und ein Feuerwerk angeschaut
Heute haben wir uns bereits zum Frühstück alle im Basislager versammelt und nutzen nun den Tag, um die Roboter wieder zusammen zu bauen und die Software fertig für den Wettbewerb zu machen. Offiziell in die Halle können wir dann ab übermorgen.
In der ersten Maiwoche war es für uns wieder Zeit für die German Open, die deutsche Meisterschaft im RoboCup. Am Montag räumten wir unser Labor noch einmal richtig auf damit wir auch nichts vergessen. Am Dienstag packten wir die letzten Sachen ein und traten die Reise nach Magdeburg an. Nach letzten Einkäufen vor dem Feiertag, machten wir es uns im Hotel neben unseren Robotern gemütlich und verbrachten den restlichen Tag und Teile der Nacht damit zu programmieren.
Am Mittwoch durften wir die Messehalle betreten und verinnahmten direkt das Feld für uns indem wir Davros, unseren Vision Roboter (siehe Bild) auf das Feld stellten mit einer Konstruktion von Wäscheleinen um aus möglichst vielen Winkeln Bilder vom Feld machen zu können. Die Wäscheleinen wurden dabei benutzt um die genaue Position von Davros bestimmen zu können ohne immer mühselig ein Maßband verwenden zu müssen
Die aufgenommenen Bilder werden bald verwendet verschiedene Ansätze für einen visuellen Kompasses zu evaluieren. Dabei werden markante Punkte im Hintergrund des Spielfeldes verwendet um die eigene Orientierung zu bestimmen um sicher auf das richtige Tor zu schießen.
Als Davros das Feld wieder verließ haben wir uns mit unseren regulären Robotern auf das Feld gestellt und das Aufstehen mit den Robotern geübt.
Gleichzeitig waren wir aber auch nicht untätig in der Softwareentwicklung. Unsere Taktik war nicht ausreichend getestet und es gab einige Schwierigkeiten zwischen der Interaktion von unseren verschiedenen Software Modulen. Die Probleme konnten wir leider nicht abschließend lösen bis zu unserem ersten Spiel am Freitag gegen die WF Wolves. Da diese aber mit ähnlichen Schwierigkeiten zu kämpfen hatten, konnten wir dieses Spiel mit einem 0:0 Unentschieden beenden. In den folgenden Spielen hatten wir leider weniger Glück und wir verloren ein paar Spiele, machten aber ständig Fortschritte in allen Bereichen.
So kam es zum letzten Spiel der Gruppenphase. Die WF Wolves hatten ihr letztes Spiel verloren und waren damit auf der selben Punktzahl wie wir für die Gruppenphase. Gegen Rhoban FC, den amtierenden Weltmeister aus Frankreich, der super gespielt hatte auf dieser Meisterschaft, konnten wir uns leider nicht all zu große Hoffnungen machen. Wir mussten also darauf hoffen über das Torverhältnis doch noch gegen die WF Wolves zu gewinnen und damit den Einzug in das Halbfinale zu schaffen. Nach der ersehen Spielhälfte machte sich leichte Resignation breit. Doch das Glück war auf unserer Seite. In der zweiten Hälfte hatte Rhoban FC mit Netzwerk Problemen zu kämpfen und schaffte es nicht noch genügend Tore zu schießen um uns den Einzug in das Halbfinale zu verwehren. Das Halbfinale fand gegen das chinesische Team ZJUDancer statt und die kleineren Roboter spielten flott um uns herum und wir waren leider nicht in der Lage zu gewinnen. Nach dem Halbfinale blieben uns noch ein paar Stunden Zeit in der Messehalle und wir trafen letzte Vorbereitungen um uns einerseits auf ein mögliches Elfmeterschießen im Spiel um den dritten Platz vorzubereiten und andererseits Motoren zu reparieren und unsere Taktik zu optimieren. Im Spiel um den dritten Platz spielten wir gegen Starkit. Starkit ist ein russisches Team aus Moskau, dass Roboter und Software von Rhoban FC gekauft hat. In diesem Spiel konnten wir noch einmal reflektieren wie weit wir gekommen sind auf dieser Meisterschaft. Von einem Spiel in dem unsere Taktik so unausgereift war, dass wir kaum in der Lage waren auf das Feld zu laufen bis hin zu einem Torwart der den Ball aus dem Gefahren Bereich vor seinem Tor gedribbelt hat und Stürmern die den Ball nach vorne spielten ungehindert von den Zweikampfversuchen der gegnerischen Verteidiger. Auch wenn unser Stürmer dann hingefallen ist und leider kein Tor machen konnte, sind wir trotzdem stolz auf unsere Leistung im letzten Jahr und sind glücklich über unseren vierten Platz, mit dem wir nur knapp keine Medaille bekommen haben. Wir freuen uns darauf die jetzt anstehenden Wochen zu nutzen und letzte Vorkehrungen für die Weltmeisterschaft treffen zu können um dort hoffentlich gut abschneiden zu können.
In ein Youtube Video haben wir eine kleine Zusammenfassung vorbereitet.
Nach einer spannenden Gruppenphase ist es uns gelungen, uns für das Halbfinale zu qualifizieren! Wir haben die Tage vor der Gruppenphase erfolgreich genutzt um unsere Roboter für den Wettkampf vorzubereiten. In der Gruppenphase haben wir dann die Ergebnisse der Arbeit an unserer Hard- und Software im letzten Jahr gründlich getestet. Dabei sind ein paar Probleme bei der Kommunikation zwischen einzelnen Softwareteilen aufgetreten, aber am Ende haben die Komponenten erfolgreich miteinander kommuniziert. Unsere Hardware hat uns sehr erfreut, denn nach unserer Arbeit am Kabelmanagement, konnten wir nur ein kaputtes Kabel finden und mussten insgesamt auch verhältnismäßig wenig Zeit auf Hardware Probleme aufwenden. Zugegebenermaßen war unsere Qualifikation für das Halbfinale nur knapp erreicht, aber schlußendlich haben wir nach einem spannenden letzten Spiel gegen den amtierenden Weltmeister es geschafft das Halbfinale zu erreichen. Fertig sind wir aber noch nicht, das Halbfinale steht unmittelbar bevor und die letzten Vorkehrungen laufen bereits auf Hochtouren um unsere Chancen auf das Finale zu maximieren.
Am Dienstag geht es los für uns. Wir fahren zur German Open 2019!
Die German Open ist die deutsche Meisterschaft im RoboCup. Dort gibt es Wettbewerbe in 6 der Major Leagues, also von Robotern, die in Krisensituationen Menschenleben retten können bis zu unseren fußballspielenden Robotern. Zu der Meisterschaft kommen über 40 Teams aus 16 Ländern um um den Titel zu konkurrieren.
Wir bekommen dabei die Gelegenheit auf der German Open unsere Software- und Hardwareveränderungen seit der Weltmeisterschaft in offiziellen Spielen zu präsentieren und unsere Änderungen ins Detail zu testen. Mit diesen Erkenntnissen können wir unseren Robotern noch den letzten notwendigen Feinschliff verpassen, bevor wir auf die Weltmeisterschaft fahren.
Die anderen Teams aus unserer Liga, gegen die wir spielen, sind: WF Wolves (Ostfalia Hochschule für angewandte Wissenschaften, Deutschland) Rhoban FC (Université de Bordeaux, Frankreich) Starkit (Moscow institute of physics and technology, Russland) ZJUDancer (Zhejiang University, China)
Zuschauer sind auf die German Open eingeladen vom Freitag den 3.5 bis Sonntag den 5.5. Der Eintritt für unsere Fans (und andere) ist kostenlos. Weitere Informationen hier: https://robocupgermanopen.de/de/besucher Wir werden selbstverständlich weiter von der German Open berichten auf diesem Blog und unseren Social Media Kanälen.
Am letzten Donnerstag, den 28.03.19, fand der Girls Day statt. Wie jedes Jahr bot der Fachbereich Informatik der Universität Hamburg einige Projekte an für die Schülerinnen der 5. bis 10. Klasse. Auch wir waren wieder dabei und haben ein Projekt angeboten, um den Schülerinnen die Robotik näher zu bringen.
Wie bereits im letzten Jahr war auch Cozmo, ein kleiner Roboter von Anki, wieder dabei. Die Schülerinnen bekamen jeweils in Zweiergruppen einen Cozmo. Nach kurzem Kennenlernen machten sie sich mit Eifer daran die ihnen gestellte Aufgabe zu lösen. Diese bestand darin ein kleines Programm zu entwickeln, was den Cozmo durch ein vorgegebenes Labyrinth steuert.
Am Ende des Tages wurde ein kleiner Wettbewerb ausgetragen, wer es am schnellsten durch das Labyrinth schafft. Alle waren stolz, es ins Ziel geschafft zu haben. Die schnellste Gruppe erreichte dies in 40 Sekunden. Somit war es für alle ein spaßiger und erfolgreicher Tag.
Die qualifizierten Teams für die Meisterschaft im RoboCup für 2019 wurden veröffentlicht. Wir freuen uns als eins von 20 Teams in der Humanoid Kid Size League antreten zu dürfen.
Wir gehören dabei zu den 19 Teams, die voll qualifiziert sind, dürfen also an den regulären Spielen und den Drop-in Spielen teilnehmen. Ein Team hat sich nur für die Drop-in Spiele qualifiziert. Drop-in Spiele sind dabei ein spezieller Spielmodus. Hierbei stellen Roboter aus verschiedenen Teams eine Mannschaft für das Spiel. Die Mannschaften werden ausgelost und jedes Team darf für seine Mannschaft einen Roboter stellen. Kooperation zwischen den Teams ist der Hauptfokus dieser Wettbewerbsform. Dabei wird aber jeder Roboter einzeln bewertet anhand seiner Performance.
Die Drop-in Spiele könnten dabei eine besondere Relevanz gewinnen in diesem Jahr, denn es wird momentan darüber abgestimmt ob die Ergebnisse aus den Drop-in Spielen die Grundlage sein sollen für die Bildung der Gruppen für die Gruppenphase des Turniers.
In der Humanoid Teen Size League haben sich 10 Teams qualifiziert. Dort nehmen wir mit unserem Kooperationspartner den WF Wolves teil. Hier haben sich 8 Teams voll qualifiziert und 2 Teams nur für die Drop-in Spiele.
Alle Teams, ihre Qualifikationsvideos, Team Description Paper sowie die Roboter Spezifikationen kann man sich hier ansehen:
Wir haben uns beworben für die Weltmeisterschaft im RoboCup, die dieses Jahr in Sydney stattfinden wird. Dafür haben wir ein Team Description Paper geschrieben, indem unsere Forschung des letztes Jahres vorgestellt wird. Außerdem haben wir für unsere Bewerbung ein Video produziert . Wir freuen uns sehr, dass wir angenommen worden sind und im Juli nach Sydney fliegen und dort viele spannende Spiele haben werden.
Natürlich laufen unsere Vorbereitungen bereits auf Hochtouren. Wir haben in den letzten Monaten bereits mehrere Integration Tests gemacht, in denen wir einmal die komplette Soft- und Hardware getestet haben. Zusätzlich sind wir bereits am Planen des nächsten Integration Tests.
Durch die Umstellung der Roboterplattform von unseren Minibots zu der Wolfgang Plattform haben sich natürlich einige Schwierigkeiten im letzten Jahr ergeben. Gleichzeitig ist aber auch die Motivation gewachsen und deshalb konnten wir große Fortschritte machen, sowohl in der Software, als auch in derWeiterentwicklung der Wolfgang Hardware Plattform.
Im Rahmen unserer Arbeit an der Software haben wir unsere Vision überarbeitet. Diese ist nun besser in der Lage parallel die Ergebnisse von CPU und Grafikkarte zu berechnen und zu verarbeiten. Im Moment sind mehrere Bachelorarbeiten in Arbeit die mit Fully Convolutional Neural Networks weitere Objekte auf dem Feld erkennen sollen. Dabei geht es um die Erkennung von Robotern und Torpfosten. Die Lokalisierung der Roboter wird momentan komplett umgestellt und verbessert. Wir setzen dafür AMCL, einen Partikelfilter, ein und transformieren Linienpunkte, die von unserer Vision gefunden wurden. Eine Live Demo unserer Lokalisierung kann man hier sehen: https://www.instagram.com/p/BtVlmNuFCGd/ Neben der Lokalisierung arbeiten wir auch an einem World Model. Damit sind wir in der Lage die Sensordaten von den verschiedenen Robotern zu verarbeiten und damit den Robotern zu ermöglichen auch über Zeit zum Beispiel den Ball zu beobachten und deshalb falsche Sensordaten herauszufiltern und zu ignorieren. Wir haben unser Behavior komplett neu geschrieben. Dabei haben wir eine neue Beschreibungssprache entworfen die die Weiterentwicklung unseres Behaviors deutlich erleichtert. Dafür haben wir den Dynamic Stack Decider entwickelt und arbeiten momentan daran ein Paper darüber zu veröffentlichen. Unser Path Planning, um zu berechnen wohin der Roboter laufen soll, wird auf move_base umgestellt. Wir benutzen für unsere Animationen und das Laufen nun Splines. Dadurch sind wir in der Lage die Zwischenschritte zwischen Start und Zielzustand der Bewegung zu berechnen und deshalb gelingen uns weniger ruckartige Bewegungen. Es ist uns gelungen unsere Motoren deutlich häufiger pro Sekunde neue Signale zu senden. Dadurch können wir deutlich häufiger bestimmen wie der Motor sich bewegen sollen und deshalb ein präziseres Bewegungsmuster erreichen. Wir haben neue Fußsensoren in unsere Roboter eingebaut. Durch die zusätzlichen Informationen, kann unser Laufen und unsere Animationen stabilisiert werden. Im Rahmen einer Bachelorarbeit arbeiten wir momentan an einem System um unsere Motoren zu kalibrieren. Denn bereits durch kleine Abweichungen zwischen Messung und Realität entstehen schon große Unterschiede in der Ausrichtung des Roboters. In diesem Rahmen sind bereits große Fehler aufgefallen und behoben worden.
Für das Symposium der RoboCup WM sind momentan noch einige wissenschaftliche Veröffentlichungen geplant. Darüber werden wir später mehr berichten und diese auf unserer Website bei den wissenschaftlichen Arbeiten hochladen.
Den Code, den wir geschrieben haben, ist open source und auf Github zu finden: https://github.com/bit-bots
Vor unserer Reise nach Sydney werden wir an der German Open teilnehmen und dabei unsere Hard- und Software noch einmal im Detail testen und wir freuen uns auf die spannenden Spiele, die uns in Magdeburg erwarten.
Zusätzlich zu diesem Blog, Facebook und Twitter werden wir auch über Instagram Bilder veröffentlichen. Unsere ganz neue Instagram Seite könnt ihr hier finden: https://www.instagram.com/hhbitbots/
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 waraber 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.
Teams aus ganz Europa Zehn Teams haben an dem RoHOW teilgenommen. Teams aus ganzDeutschland, 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, wieviele 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-Source–Software, 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.
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!
Unsere Roboter haben neue Fußsensoren bekommen. Dabei haben wir und von Team Rhoban aus Bordeaux inspirieren lassen. (https://github.com/Rhoban/ForceFoot)
Wir haben die originale Implementation dabei noch verbessert. Die mögliche Update Rate haben wir von den originalen 80 Hz auf theoretisch mögliche 9.5 kHz gebracht. Dabei ist die Übertragungsrate über unseren Bus leider limitiert und wir filtern den Output der load cells und übertragen nur mit einer Geschwindigkeit von 1 kHz.
Die Sensoren sind dabei auf der Oberseite vom Fuß angebracht.
Sie sollen uns dabei helfen, mehr Daten zu bekommen, mit denen wir dann besser in der Lage sind, unser Laufen und unsere Animationen zu stabilisieren.
Angebracht haben wir die Sensoren auf dem RoHOW. Die Sensoren schaffen es pro Sensor bis zu 40 KG zu messen ohne kaputt zu gehen. Natürlich haben wir das dabei als Herausforderung gesehen und versucht mit zwei Daumen möglichst viel Druck auszuüben.
In der Zukunft planen wir, wissenschaftlich zu vergleichen, wie sich das Center of Pressure mit unseren Sensoren im Vergleich zur industriellen Lösung, dem Six Axis Force Torque Sensor, messen lässt und wollen unsere Ergebnisse dazu veröffentlichen. In der näheren Zukunft werden wir unsere verbesserte Version des Force Foots als OpenSource-Hardware veröffentlichen.