Alpha-Motor ist eine Platine zur Ansteuerung von zwei Antriebsmotoren und momentan die Hauptplatine des Roboters.


Zusammenfassung

Der Alpha-Motor erfüllt mehrere Funktionen gleichzeitig: Ansteuern von ein oder zwei Motoren, etwa den Antriebsmotoren des Roboters, Odometrie und das Ausführen der Robotersoftware.

Jede Platine verfügt dazu über ein Setup, das sowohl ein oder zwei DC-Motoren als auch ein oder zwei dreiphasige Brushless-DC Motoren unterstützt. Benötigt werden also sechs H-Brücken aus jeweils vier Leistungstransistoren, die von drei Brückentreibern kontrolliert werden. Das Herzstück ist dann der Mikrocontroller. Dieser steuert nicht nur die genannten Brückentreiber, sondern liest Motorencoder aus und kommuniziert über verschiedene Schnittstellen (vor allem CAN) mit dem Rest des Roboters. Zusätzlich wird durch den Mikrocontroller auf zwei Wegen der Strom in den Motoren überwacht: Eine grobe Strommessung über jeweils einen Shunt-Widerstand pro Motor und eine genauere, die von Hall-Sensoren in einem eigenen Bauteil durchgeführt wird. Zu guter Letzt dürfen Ausgänge und LEDs zu Debug-Zwecken auch nicht fehlen.

Auf dem Microcontroller befindet sich neben den Motor-Reglern auch der Code, der den restlichen Roboter steuert. Die Befehle werden über CAN an die Peripherie (zum Beispiel die Motortreiberplatinen “Micro-Motor” oder andere Alpha-Motor-Platinen) weitergeleitet, aber andersherum können auch Sensordaten oder die Kommunikation mit dem Display hierüber ablaufen.

Technische Daten (geplant)

  • 3 Phasen (DC und Brushless-DC Motoren)
  • ca. 20A pro Phase in der Spitze
  • 20V Betriebsspannung (Akku) -> 40V oder 60V Auslegung
  • Mikrocontroller STM32F407
  • 2x CAN-Bus mit 4 Steckern, 1 UART, 1 SPI/I2C
  • Anschlüsse für 4 AB-Encoder inklusive UART 1-Wire
  • Anschlüsse für 2 Hall-Sensoren
  • Strommessung und Strombegrenzung
  • LEDs für Software-Status & Encoderstatus
  • Konfigurierbare ID
  • Einfach lötbar und aufbaubar
  • Abmessungen: 49 x 77 mm²

Tätigkeitsfelder und Technologien

  • PCB Design 4-Layer (mit KiCAD)
    • EMV-gerechtes Design
  • STM32-Peripherie: Timer, ADC, DAC, Komparator
  • Recherche und Auslegung Leistungs-MOSFETs und MOSFET-Treiber
  • Software Low-Level Hardware-Ansteuerung
  • Software Hardwareabstraktion
  • Reflow-Löten

Referenzen und Links

  • https://github.com/roboterclubaachen/alpha-motor