Technic

The longterm aim of this project is to drive the humanoid with linear actors, which have to have active cooling due to the immense heat production.

This coolling is based on a simple principle, i.e. sweating.

For the manufacturing of the skeleton in the highly contemporary machine park at the University of Applied Sciences Offenburg, a Rapid Prototyping machine, working on the principle of Selektive Laser Melting (SLM), is used.

With the SLM technic, parts made out of titan, aluminium and steel can be produced. With this manufacturing process the overall amount of parts with optimal geometry can be reduced by integral construction. 

Total weight is reduced by an effectiv use of material going along with the optimal geometry.

The optimal position and the power of the motors is choosen while executing an iterative process between construction and simulation. The autonomous behaviour of the robot is based on the algorithms developed by the university team magma, that effectively compets in the Robocups Simulationliga since years.

The results of this simulations can bee seen in the picture gallery.

For orientation on the park the robot is equiped with two cameras in his head, power- and magnetic sensors and a gyroskop.

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

 

 

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

The vision is among the vital things which is required for the robot to play soccer. The object detections and the calibration are performed here.

In our project we have the following under the vision :
1.    Fish eye calibration
2.    color calibration
3.    Ball and field detection
4.    Goal detection

The calibration is done by using look-up tables (lut) which defines the yuv values for all the objects namely the ball, goal and the field. By defining a region of interest in the yuv color space this is easily achieved.

Object detection is done also based on the colors. A region around orange is taken for the ball, yellow for the goals and green for the field. Messages are passed which describe the position of the above mentioned objects in terms of undistorted image coordinates.

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.

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.

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.

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).

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.

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.

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.