Die KICKERS sind umgezogen auf Github:

GitHub – AK-Smart-Machines-HS-KL/R2K-SPL: Working code repository for the RoboCup-SPL team R-ZWEI Kickers from Hochschule Kaiserslautern

Wer sind wir, die RZWEI-KICKERS ?

Wir sind ein gemischtes Team von Berufsschülern, Studierenden, Professoren, Industriepartnern – gegründet 2020 – und wir freuen uns jederzeit über Neuzugänge!

Mitglieder des R2K-Kickers Teams:

  • Adrian Müller (Prof. Informatik): Hybride KI, Projektleitung
  • Andreas Hobelsberger (AI, 5. Sem): Simulator Developer, Card Development
  • Connor Lismore (AI, 5. Sem.): Bilderkennung
  • Thomas Jäger (MI, 6. Sem): “the Trainer”, Code, Kicks, Taktik!
  • und als unser Berater: Philipp (abat+): für den Transfer der Inhalte auf Industrie 4.0 und KI Projekte

Ehemalige Mitglieder des R2K-Kickers Teams:

  • David Kostka (AI, 6. Sem.): Bilderkennung
  • Jannis Schottler (AI., 2. Sem): RobCup Junior League Weltmeister
  • Jonas Lambing(BBS KL): Cards, Deployment
  • Markus Dauth (Master Informatik 1.Sem): Agiles Testen, Optimierung
  • Mike Hindi (AI, 6. Sem): Bilderkennung
  • Felix Mayer(AI, 6.Sem.): Teach-In, Optimierung Steuerung

Über den Link unten könnt ihr unserem Chat auf Discord besuchen. Wenn ihr daran interessiert seid, mehr über uns und unsere Arbeit zu erfahren, dann besucht uns bei einem unserer wöchentlichen Treffen.

Warum wir uns “R-ZWEI KICKERS” nennen?

Darum 🙌

Was findet ihr auf dieser Webseite? So ziemlich alles: worum es geht, wie wir arbeiten, welche Arbeitsmaterialien wir für neue Team Mitglieder vorbereitet haben – und ganz unten auf der Seite eine Liste der aktuellen Projekte und offenen Arbeiten. Viel Spaß beim Lesen😉

Worum geht es? Der RoboCup soll die Robotik und KI Forschung fördern und das vor einem öffentlichen Publikum. Ein Fußball spielender Roboter mag  wie eine eher wissenschaftliche Herausforderung aussehen, aber man muss dabei eine Fülle von Standard Problemen – wie man sie aus der heutigen Industrie kennt – lösen, und ist damit ein guter Einstieg in die Welt der KI.

Unser Kooperationspartner abat+ unterstützt uns deshalb bei Projekt- und Bachelor-Arbeiten in den Feldern robuste Bildverarbeitung, innovative Roboter Programmierung und Prozessoptimierung in der diskreten Fertigung, um neue Geschäftsfelder für die Industrie 4.0 zu erschließen.

Unsere Naos 😃

Macht sie nicht kaputt!

“kick their asses!”

Achtung, die neuen Corona Regeln beachten.

Unsere drei Roboter Regeln😎

Was ist die RoboCup Standard Platform League?

RoboCup 2014, Joao Pessoa, Brasilien. Quelle: Uni Bonn

Der Robot Soccer World Cup ist die Fußball WM für Roboter. Der erste Wettkampf wurde 1997 bestritten und heute werden neben Fußball auch viele andere Wettkampf Arten ausgefochten, wie z. Bsp. auch die RoboCup Rescue League, bei dem die Roboter auf eine Rettungsmission entsandt werden.

Beim RoboCup lassen verschiedene Teams aus aller Welt ihr 5 Roboter in 2 Mannschaften gegeneinander wetteifern und dabei um den Fußball kämpfen, den Gegner austricksen und Tore schießen.  Die “Standard Platform League” (SPL) verwendet ausschließlich den gleichen Roboter, den NAO v6.

Die kleinen Roboter müssen sich vollständig autonom über das Spielfeld bewegen und dürfen nur wenig miteinander kommunizieren, um dennoch eine Team Strategie zu entwickeln, die zum Sieg führt. Dabei sollen sie trotz allem unabhängig voneinander agieren können.

GORE 2022

Wegen den letzten uns wohl bekannten, weltweiten Corona Restriktionen wurde der RoboCup 2019 remote abgehalten, wodurch auch einige Turniere wie der SPL nicht in der selben Form stattfinden konnten. Aber innerhalb der deutschen Community wurde schon damals ein “German Open Replacement Event” geplant, um zumindest trotz reiner remote Teams das Event unter Turnier Bedingungen stattfinden lassen zu können. 2022 war es dann soweit, dass vor dem offiziellen Start des RoboCup 2022 das GORE sich widerholt hat und im vollen Umfang vor Ort statt fand in der Handelskammer Hamburg. Remote Teams nahmen dennoch teil weil diese sogar von außerhalb von Deutschland kamen!

Arbeiten mit dem NAO



Arbeitsumgebung

Der kleine humanoide Roboter NAO ist unser Spieler auf dem Spielfeld und wir sind sein Trainer.
Bei uns wird er sowohl mit C++ als auch mit Python programmiert. Dabei wird Python bei der Bilderkennung, wie zur Erkennung des Balls und des Tors, verwendet und C++ für den ganzen Rest. Darunter fällt zum Beispiel seine Bewegung über den Fußball Rasen.

Voraussetzung hierfür ist die im Projekt bereits mitgelieferte IDE CodeLite oder vorzugsweise Visual Studio code. Als Betriebssysteme benutzten wir derzeit Ubuntu 18.04 LTS (empfohlen) und Windows 10 zum Einsatz.

Außerdem gibt es auch einen Simulator. Dann muss man nicht immer vor Ort sein um seinen Code zu testen. Der Simulator ‘SimRobot’ ist sogar vom amtierenden Weltmeister des RoboCup (B-Human – Uni Bremen und DFKI) entworfen. 


Beispiel Code

Wie gut müsst ihr programmieren können? Beantwortet es euch selbst.

Unten seht ihr ein Code Beispiel. Wenn ihr in der Lage seid, nachzuvollziehen was dort passiert, dann seid ihr bestens vorbereitet.

Sollte der NAO umfallen muss er laut Regelwerk selbst in der Lage sein wieder auf zu stehen. Der folgende Code erreicht das.

void FallEngine::safeFall(FallEngineOutput& output) const
{
  // set stiffness of each joint
  for(int i = 0; i < Joints::numOfJoints; i++)
    output.stiffnessData.stiffnesses[i] = 10;

  // falling backwards ? sit up.
  if(output.fallingBackwards)
  {
    MotionUtilities::sit(output);
  }

  // falling forward ? stand up.
  else if(output.fallingForward)
  {
    MotionUtilities::stand(output);
  }
}

Zuerst wird die Festigkeit alle Gelenke des Roboters festgelegt und anschließend das Bewegungsmuster zum Aufstehen zu starten. Dabei wird unterschieden, ob er nach vorne oder hinten umgefallen war. Als humanoider Roboter muss der NAO ebenso wie wir Menschen unterschiedliche Bewegungen ausführen um aufzustehen, je nachdem in welche Richtung er gefallen ist.

Der Nao wird im Simulator und “in Echt” mit dem gleichen Code gesteuert. Für die Programmierung verwenden wir C++, Python, TensorFlow (Keras), und “wenn->dann” Karten für die Steuerung des Verhaltens. Diese Karten sind sehr übersichtlich zu programmieren und steuern das Umschalten von bspw. Verteidigung auf Angriff, Passspiel und Torschuss.

Dieses Bild hat ein leeres Alt-Attribut. Der Dateiname ist map_of_cards.jpg

Wir nennen es unsere “Map of Cards“.

Teilnahme des AK Smart Machines

Der Arbeitskreis Smart Machines der HS-KL hat in der Vergangenheit bereits am remote RoboCup 2019 und am GORE 2022 partizipiert. 

Durch die Teilnahme wollen wir allen Studenten für die KI begeistern und sie im selben Moment fördern. Das bietet ihnen die einzigartige Möglichkeit den kleinen NAO als Freund und Helfer kennen zu lernen und mit ihm zu arbeiten. Vielleicht ergibt sich sogar Kontakt zu einer KI orientierten Firma wie unserem Sponsor abat+. Zudem ist der RoboCup auch außerhalb Deutschlands sehr populär.

Also was brauchten wir für ein erfolgreiches Roboter Team?

5x NAO V6
Ein Fußballfeld als Testumgebung
Eine Arbeitsumgebung
Einen Simulator
Einen Monster PC mit 3 GPUs und 64 GB RAM
Insider Wissen von ehemaligen Weltmeistern
Einen Gitlab Server

Ein Team (je mehr Mitglieder, desto besser)

Trickos für NAO-Roboter

Ein Link zum Gitlab Server findet ihr hier. Der Zugang ist nur für das Team – wenn Du neugierig bist, laden wir dich gerne als Gast ein.

Wenn Du ganz neugierig bist, findest Du hier unser Wiki, indem unser derzeitiger Fortschritt und unsere Arbeitsweise beschrieben wird.

Wenn Du unser NAO in Aktion sehen möchtest, dann gehe auf diesem Link, um auf unsere Youtube Page zu kommen, wo wir unsere Aufnahmen aus der Schwankhalle sowie alle Veranstaltungen, an denen wir teilgenommen haben, hochladen.

Da wir selbst über die nötigen NAOs verfügen, ist man keineswegs auf den Simulator angewiesen. Es kann ebenso mit den realen NAOs gearbeitet werden. Diese sind im Labor des AK Smart Machines im O-Gebäude, und können jederzeit ausgeliehen werden.

Die Vorarbeit ist also bereits getan; das einzige was fehlt bist du!

Hast du Interesse? Dann melde dich einfach und mach mit. Es gibt keinen Zwang, keine Verpflichtungen, keine Bürokratie. Also wenn du mitmachen möchtest, dann meld’ dich einfach bei uns. Im nächsten Abschnitt findest du die aktuelle Liste aller Projekte; Deine Vorschläge für weitere Themen sind willkommen.

Projekte, Bachelorarbeiten

Hier findest Du eine Übersicht über aktive und offene Arbeiten (Stand: 11/2021)

StatusFormTitelBeschreibung
abgeschlossene und aktive Arbeiten zur BilderkennungPraxisphase + Bachelor (Kooperation mit abat+)Robuste Bildererkennung in Echtzeit, Deep Learning (TensorFlow) in Simulation und Realität am Beispiel Roboter-Fußball, Data AugmentationSysteme zur Bilderkennung wie TensorFlow und Torch büßen drastisch an Performanz ein unter wechselnden Bedingungen wie geänderten Lichtverhältnisse, verwackelten und verschmutzten Kamerasystemen, unbekannten Objekten.
abgeschlossenPraxisphase + Bachelor (Kooperation mit abat+)Vereinfachtes Teach-In von Robotern durch Muster-Analyse des Einlernens mittels Data Mining ModellenModellierung einer Robotersteuerung auf drei Ebenen (Maschinenbewegungen, Muster von Bewegungen, Arbeitsabläufe) Erfassung von Rohdaten im Simulator von B-Human, Teach-In von Bewegungsmustern Erfassung und automatische Analyse von komplexen Abläufen
aktivStudienprojekt Simulator für RoboCup, auf Basis VulcanLäuft in Docker Container, unterstützt automatisiertes Testen
aktivStudienprojekt, Bachelorarbeit Praxisprojekt (Kooperation mit abat+)Sequenzanalyse – Visuelle Objektverfolgung im RaumDie Kameras der Roboter erfassen z.Z. Objekte individuell und erstellen ein geschätztes Weltmodell; basierend auf dem Stand einer Bachelorarbeit zur Sequenzanalyse bewegter Objekte soll dieses Modell bessere Werte enthalten.
abgeschlossenBachelorarbeitEine integrative Teststrategie für eine komplexe Roboter-programmierung am Beispiel RoboCup SPL – ein systematischer Übergang vom Simulator zur RealitätGlobale Optimierung der Systemleistung, bei Beachtung der Nutzen (Verschleiß, Energie)
Stärke: 2 Personen
    

Historie: Erste Schritte, aus dem Juli 2020

Auf den folgenden Videos sieht man unsere Naos im Keller des O028 auf einem 1/4 Wettbewerbsfeld:

Und hier haben wir Bilder von unserer brandneuen Schwankhalle. Hier lassen wir unsere NAO-Roboter gegeneinander spielen, um sie für zukünftige Veranstaltungen vorzubereiten.

Schwankhalle

Und hier sind noch 2 der besten Momente von der GORE.


Teile diese Seite