Team Sweaty

"Sweaty" hat als Fußball spielender, humanoider Roboter begonnen, der seit 2014 in Brasilien bei der RoboCup-Weltmeisterschaft gegen andere humanoide Roboter internationaler Hochschulen und Universitäten antritt. Mittlerweile ist er zu einem fachübergreifenden Projekt geworden und zeigt sich auch mit der Interaktion und Imitierung der Bewegungsmuster zum Beispiel bei einer Schachpartie gegen einen menschlichen Gegner.

In seiner Kernkompetenz Fußball war "Sweaty" stets erfolgreich und konnte von 2016 in Leipzig, Deutschland bis 2019 in Sydney, Australien stets den Vize-Weltmeister-Titel beim RoboCup sichern. Bei der ersten virtuellen Ausgabe dieses Wettbewerbs 2021 holte das Team sogar den Weltmeister-Titel.

"Sweaty" ist ein spannendes Projekt für verschiedenste Fachbereiche in dem Studierende sowohl ihr technischen Know-How anwenden und erweitern, als auch ihre Teamfähigkeiten in Kooperation verschiedenster Fachrichtungen im Rahmen des Wettbewerbs unter Beweis stellen können.

Technik

Sweaty ist ein weitgehend autonomer Roboter. Ziel des Projekts ist es, einen Roboter zu entwickeln der bis 2050 gegen den dortigen Fußball-Weltmeister antritt und diesen auch besiegen kann. Dafür werden moderne Konstruktions- und Fertigungsmethoden vom Team umgesetzt und durch kreative Ideen ergänzt. Die Forschung behandelt dabei verschiedenste Technologien wie zum Beispiel Bewegungsanalysen, Steuerung und Künstliche Intelligenz und vieles mehr.

Sweaty 2017

Eckdaten

Robotername

 

Sweaty (2017)

Größe des Roboters

 

172 cm

Gewicht des Roboters

 

24 kg

Schrittgeschwindigkeit

 

0,2 m/s

Anzahl der Freiheitsgrade

 

32

Motortyp

 

Maxon BLDC, Dynamixel MX-106

Sensortypen

 

3x IMU XSense

2x 6-Achs-Kraftmomentsensoren (FT-Sensor, Eigenentwicklung)

32x Positionssensoren

32x Kraftsensoren

22x Geschwindigkeitssensoren

36x Spannungssensoren

70x Temperatursensoren

2x IDS UEye 3242LE-C, Brennweite 1,8 mm, Sichtfeld 160°

Rechner

 

1x i7 BRIX-CORE-4770R / 3.9 GHz

27x STM32F4

Schulterhöhe

 

150 cm

Schulterbreite

 

60 cm

Hüfthöhe

 

82 cm

BUS-Systeme

 

 

Ethernet

2x CAN

1x RS485

4x USB

Batterie

 

2 LiPo 7S1P 4Ah 80C

Sweaty 2016

Eckdaten

Roboter Name:

 

Sweaty 

Größe des Roboters:

 

165 cm

Gewicht des Roboters:

 

21 kg

Schrittgeschwindigkeit

 

0,2 m/s

Anzahl der Freiheitsgrade:

 

23

Motortyp:

 

Dynamixel MX-106, MX-64, Volz

Benutzer Sensortyp:

 

Logitech C905, modifizierte Linse: 1,5” / Brennweite 1,55 mm, Sichtfeld 185° (teilweise verdeckt, letztlich 180°)

Rechner:

 

2x i7 BRIX-CORE-4770R / 3.9 GHz

23x STM32F4

Schulterhöhe:

 

117 cm

Schulterbreite:

 

54 cm

Hüfthöhe:

 

75 cm

Rumpfgröße:

 

38 cm

Armlänge:

 

50 cm

BUS-Systeme:

 

Ethernet

2x CAN

1x USB, I2C und SPI

1x RS-485

Batterie:

 

2 LiPo 7S1P 4Ah 80C

Vision

Für die optische Erkennung von Objekten auf dem Spielfeld (Ball, Tore, Linien, Gegner) wurden zwei Konfigurationen entwickelt. Eine erste Variante wurde vom Nimbro-Team der Universität Bonn bereitgestellt. Sie besteht aus einer Logitech Kamera mit einem Fischaugenobjektiv (ca. 185° Blickfeld), welche auf einem kleinen Motor für die Kopfdrehung befestigt wurde. Unabhängig davon wurde ein komplexeres stereoskopisches Erkennungssystem  mit zwei USB-RGB-Kameras (1280x1024 Pixel), welche in einem Abstand von 12 cm auf einer festen Halterung platziert sind, gebaut. Die Halterung kann man schwenken, kippen und um die Mittelachse des Blickfelds drehen.

Als Ausgangspunkt wurde der Objekterkennungsteil der Software des Nimbro-Teams für das Ubuntu-Linux, welches auf dem Odroid-XU läuft, adaptiert. Mit dieser Konfiguration liefert es eine einfache Farbkalibrierung und erkennt danach verlässlich den Ball, das Spielfeld und die Tore. Ein anderer wichtiger Aspekt dieser Arbeit war es, mit dem ROS-Framework vertraut zu werden.

Auf diese Art und Weise konnte die Kommunikation mit der Java-Software, welche die Anpassung und den Entscheidungsprozess bereitstellt, eingerichtet werden. Die Weltkoordinaten des Balls konnten mit Zentimeter-Auflösung ermittelt werden. Ohne jede Optimierung konnte eine Bildfrequenz von 10 Hz erreicht werden.

Unabhängig von der Nimbro- und ROS-basierten Ermittlungen auf dem Odroid-XU wurde die weiterführenden Arbeiten mit OpenCV ausgeführt. Dies war zum Beispiel bei der geometrischen Kalibrierung des Fischaugenobjektivs mit dem klassischen Schachbrett Ansatz oder bei den Linienerkennungsmethoden, welche mehr auf Form als auf Farbmerkmalen beruhen, der Fall. Für grundlegende Fragen ist ein komplettes verkleinertes Spielfeld mit guten Möglichkeiten zur Kontrolle der Lichtverhältnisse verfügbar. In der vollen Größe wurde ein halbes Spielfeld aufgebaut, welches abhängiger von den Umgebungslichtverhältnissen ist.

Thermodynamik

Das Drehmoment von herkömmlichen Antrieben bei einer gegebenen Masse ist durch die Wärmeabgabe begrenzt. Eine Erhöhung der Wärmeübertragung hilft automatisch bei der Erhöhung des mittleren Drehmoments eines Antriebs, solange die magnetische Sättigung nicht erreicht ist. Dies ist der Fall bei den meisten konventionellen Antrieben. Einer der möglichen Antriebe ist zum Beispiel der Dynamixel MX-28R, welcher von einem RE-max-17-Motor angetrieben wird (Hersteller: Maxon) hergestellt wird. Der thermische Widerstand zwischen Gehäuse und Luft beträgt bei diesem Motor 35 K/W, außerdem ist ein zusätzlicher thermischer Widerstand durch das Gehäuse des Antriebs vorhanden. Der  thermische Widerstand zwischen der Wicklung und dem Gehäuse des Motors beträgt nur 12 K/W. Die Reduzierung des thermischen Widerstandes zwischen der Luft, um zwei Drittel, würde die erlaubte Wärmeabgabe verdoppeln. Diese Reduktion kann durch einen-verbesserte  Wärmetransport zur Luft realisiert werden.  Eine feuchte Oberfläche ermöglicht eine zusätzliche Wärmeabgabe durch Wasserverdunstung. Der erwähnte Antrieb hat einen Blockierstrom von 1,7 A und eine Wärmeentwicklung von rund 25 W bei maximalem Strom. Der Motor kann  nur kurzzeitig mit einem hohen Strom betrieben werden und auch nur bei längeren Pausen, anderenfalls überhitzt er und wird zerstört. Die Pausen können durch eine effiziente Kühlung des Motors [HD1] verkürzt werden. Die Menge des verdampften Wassers im Bezug auf die abgegebene Wärme kann durch den Massenstrom berechnet werden, wobei die abgegebene Wärme und die spezifische Verdampfungswärme ist. Wenn man dieses Verhältnisse für den genannten Antrieb auswertet, ergibt das ungefähr 1 g Wasserverdampfung auf 100 s bei Blockierstrom, welcher natürlich nicht ohne Pausen aufgebracht werden kann.

Komponentenarchitektur

Die Rechen- und die Kommunikationsarchitektur von Sweaty umfasst drei Stufen:

Als Hauptrechner wird ein leistungsstarker Mini-PC mit Intel i7 Prozessor eingesetzt. Das Betriebssystem ist Linux. Die Programme zur Entscheidungsfindung sind in Java und die Programme zur visuellen Erkennung der Umgebung in C++ und Python erstellt. 

Ein Haupt-Kommunikationscontroller sammelt und verteilt Daten zwischen dem Hauptrechner den verteilten Mikrocontrollern und wertet die Daten vorab aus. Der Haupt-Kommunikationscontroller basiert auf 32-Bit ARM Cortex-M4 und wurde selbst entwickelt und hergestellt.

Die verteilten Mikrocontroller (ECUs) basieren ebenfalls auf 32-Bit ARM Cortex-M4 Mikrocontrollern. Sie sind in den Servos eingebaut, weitere sind in den Füßen und in der Nähe des Kopfes vorgesehen.

Die Kommunikation zwischen dem Hauptrechner und dem Haupt-Kommunikationscontroller wird über USB 2.0 realisiert, die Kommunikation zwischen dem Haupt-Kommunikationscontroller und den verteilten ECUs erfolgt über EIA-485 bei einer Taktfrequenz von 2 MHz. Ein zugehöriges Kommunikationsprotokoll wird für einen vereinheitlichten Informationsaustausch genutzt um zu beschreiben unter anderem, wie jede ECU die Zentraleinheit über ihren aktuellen Zustand  informiert.

Zwei physische EIA-485 Kommunikationsnetzwerke sind notwendig für einen ausreichenden Datendurchsatz.

Insgesamt sind neben den ECUs der Servos 4 ECUs vorgesehen: eine pro Fuß, eine in der Nähe des Masseschwerpunkts und eine im Kopf. Das Verhalten der ECUs wird mit LTSpice simuliert und mit EAGLE entworfen. Alle ECUs basieren auf 32-bit ARM Cortex-M4 Mikro-Controllern.

Motoren

In unserem aktuellen Sweaty werden verschiedene Servos eingesetzt:

12x Maxon BLDC Motor mit Spindelgetriebe (Füße, Knie, Hüfte, Rücken)

 4x  Maxon BLDC Motor mit Planetengetriebe (Drehung Arm, Drehung Hüfte)

 8x Dynamixel Servos (Arme und Kopf)

 8x Linaer-Servos (Finger)

Bis auf die verwendeten Dynamixel-Servos, sind alle Servoantriebe (Elektronik und Software) Eigenentwicklungen des Sweaty-Teams. 

 

Bei unserem Vorgängermodell verwendeten wir ausschließlich kommerziell erhältliche Servos (Hersteller: Dynamixel, Volz).

Um ausreichende Bewegungsgeschwindigkeit bei einem hohen Drehmoment zu erreichen, wurden die Digital-Servos überlastet. Die Spulen des Motors sind freitragend, eine Überhitzung führt daher zum unmittelbaren Versagen des Motors.

Es wurde ein thermisches Modell der Motoren entwickelt, mit der die Temperatur der Spulen jedes einzelnen Motors fortlaufend berechnet werden. Sobald eine Grenztemperatur erreicht wird, werden die Bewegungen von Sweaty auf ein Minimum reduziert oder er steht so lange still, bis die Motoren wieder heruntergekühlt sind – das Verhalten von Sweaty ist daher vergleichbar mit dem Verhalten eines richtigen Fußballspielers.

Sensoren

Die Kraftsensoren sollen unter den Füßen montiert werden. Von den 3 Inertialsystemen befindet sich ein Sensor in Nähe des Schwerpunktzentrums und die beiden anderen in den Füßen, um die Erdoberfläche zu erkennen. Zur Vereinfachung entsprechen alle 3 Inertialsysteme dem gleichen Design. Jedes der 3 Inertialsysteme besteht aus 3 Beschleunigungssensoren, 3 Kreiseln und 3 Magnetfeldmessgeräten von STMicroelectronics. Die Datenerfassung und Analyse werden von unseren elektronischen Steuereinheiten durchgeführt (siehe Komponentenarchitektur).

Software

Das Hauptziel des Softwareteams besteht darin, so viel wie möglich Programmcode der 3D Simulation wieder zu verwenden. Die Komponenten-basierte Architektur des Codes vereinfacht dies sehr. Um eine grobe Aussage über den Erfolg geben zu können kann man sagen, dass ca. 50 Klassen für Sweaty in das Framework eingefügt wurden. Diese beinhalten unter anderen eine spezielle, inverse Kinematik Berechnung, Verbindungsklassen für ROS, eine spezielle Komponentenerstellung und Parametrisierung einiger Verhalten. Weiter gibt es ein spezielles Feld-Meta-Modell für die unterschiedliche Feldgröße in der humanoid Liga.

Die Anzahl der Nao-spezifischen Klassen ist ebenfalls ca. 50 und die Anzahl der gemeinsam genutzten Klassen beträgt deutlich über 500 (keine Tools, lediglich Runtime). Natürlich mussten während des Entwicklungsprozesses einige der 500 Klassen angepasst und verändert werden, um diese für einen humanoiden Roboter nutzen zu können.

Durch die Verwendung der Code-Komponenten der 3D Simulation, konnten ebenfalls etliche Vorteile in Bezug auf das Toolset gezogen werden. Es konnte der magmaDeveloper, der Verhaltens-Editor und noch mehrere, kleinere Tools übernommen werden, welche für die Entwicklung und Tests solch einer Software für einen zweibeinigen Roboter gebraucht werden.

Simulation

Sweaty wird im „Simspark Simulator“ simuliert. Dieser Simulator wird für die 3D Fußball Simulationsliga verwendet.  Er basiert auf ODE und unterstützt Erdanziehungskraft, Steifheit, Körperdynamik, Gelenkverbindungen, maximale Drehkraft der Gelenke, Lagekreisel, Kraft-Widerstand-Sensoren, Beschleunigungen, Stör-Modelle, Kamerasimulationen und vieles mehr.

Design

Um Gewicht zu reduzieren wurde die tragende Struktur des Roboters aus Aluminium und Kohlefaser-Verbundwerkstoffen hergestellt. Eine weitere Gewichtsreduktion war möglich durch ein besonderes Fertigungsverfahren: so wurden beispielsweise der Kopf und die Füße durch Selektives Lasersintern (SLS) hergestellt, ein Verfahren, das ermöglicht, auch komplizierte dreidimensionale Strukturen zu fertignn.Als CAD-System wurde Creo 2.0 eingesetzt und für FEM-Analysen Creo 2.0 und ANSYS.

Weitere Informationen

Team

Das Team

Das Team besteht aus Professoren, wissenschaftlichen Mitarbeitern, Doktoranden und Studierenden der Fachbereiche Maschinenbau und Verfahrenstechnik, Elektrotechnik, Medizintechnik, Informatik sowie Medien. Nur durch das Zusammenspiel aller Fakultäten ist Sweaty so erfolgreich im RoboCup.

Alle Teammitglieder

Liste der aktiven Teammitgliedern

Ehemalige Teammitglieder
  • Prof. Dr.-Ing. Ulrich Hochberg
    Teamleitung Sweaty

  • André Friedrich, M.Sc.
    Konstruktion Kinematik

  • Fabian Schnekenburger, M.Sc.
    Elektronik Software Vision

  • Nils Jahn
    Elektronik

  • Lucas Schickl, B.Eng.
    Konstruktion

  • Prof. Dr. rer. nat. Michael Wülker
    Vision

  • Steffen Schmidt
    Elektronik

  • Michael Sattler, M.Sc
    Technical Committee RoboCup / Reglement

  • Martin Burkart, B.Eng.
    Konstruktion / Simulation

  • Ludovic Letang
    Konstruktion / Entwicklung

  • Raphael Koger, M.Sc.
    Elektronik / Programmierung

  • Matthias Neudorf
    Konstruktion / Entwicklung

  • Matthias Sebastian Niederhofer, Dipl.-Ing. (FH)
    Organisation

  • Lars Lehmann
    Game Controller, Kommunikation

  • Igor Tropmann, M.Sc.
    Elektronik / Programmierung

  • Waldemar Frei
    Konstruktion / Kühlung

  • Yuri D' Antilio

  • Armin Dietsche, M.Sc.
    Mechanik / Kinematik / Kühlung / Unterstützung von Studierenden

  • Michael Obrecht

  • Ulrich Kevin Tankeu Tchakounte
    Konstruktion

  • Aleksandre Zakaroshvili
    Konstruktion

  • David Stefan Zimmermann
    Decision

  • Sneha Venkataramana
    Vision

  • Efstratios Tziallas
    Vision

  • Mahdi Sadeghi
    USB Communication, Sweaty

  • Christoph Plschek
    Elektronik

  • Samuel Oesterle
    Kopf

  • Ulrich Messner, B.Eng. 
    Konstruktion 

  • Stefan Großmann
    Künstliche Intelligenz

  • Luisa Andre
    Step Planning, Publicity

  • Alexander Derr
    Kicks

  • Denise Ehret
    Simulation

  • Michael Fehrenbach
    Kühlung

  • Prof. Dipl.-Designerin Sabine Hirtes
    Motion Capture

  • Julian Hohenöcker
    Heterogene Robotertypen

  • Sebastian Jung
    Konstruktion

  • Stephan Kammerer
    Rollenverhalten

  • Maximilian Krög
    Training, Goalie, Penalty Shootouts

  • Muse Seyoum Teklemarriam
    Vision

  • Thomas Münch

  • Prof. Dr.-Ing. Axel Sikora
    Programmierung

 

Lizenzen

Die "beiden Hände von SWEATY" sind die "Brunel Hand 2.0" von Open Bionics und die "beiden Arme von SWEATY" sind das “Reachy Arm Modul” von Pollen Robotics SAS verwendet unter der Creative Commons Attribution-ShareAlike 4.0 International License.

Koordinatoren

Stefan Hensel

Bernd Waltersberger

Social Media

Sponsoren