Skip to content

Instantly share code, notes, and snippets.

@kraeml
Created June 10, 2025 07:30
Show Gist options
  • Select an option

  • Save kraeml/5fee9a01d97a33fa0fed88dc2429140e to your computer and use it in GitHub Desktop.

Select an option

Save kraeml/5fee9a01d97a33fa0fed88dc2429140e to your computer and use it in GitHub Desktop.
Pololu Romi kombiniert Mikrocontroller und Raspberry Pi für effiziente Steuerung.

Der Pololu Romi (insbesondere das Romi Robot Kit für FIRST) steht in einem direkten Zusammenhang zur Dual-Controller-Architektur in der Robotik.


Zusammenhang zur Dual-Controller-Architektur

Aufbau des Pololu Romi

  • Romi 32U4 Control Board:
    Das Herzstück des Romi ist ein Mikrocontroller-Board auf Basis des ATmega32U4. Dieses Board übernimmt alle zeitkritischen, hardware-nahen Aufgaben wie Motorsteuerung, das Auslesen von Encodern, die Verarbeitung von Sensorwerten und die Ansteuerung von Aktoren.
  • Raspberry Pi (optional):
    Das System ist so konzipiert, dass ein Raspberry Pi (z. B. Modell 3B+ oder 4B) direkt auf dem Romi montiert und über standardisierte Schnittstellen (z. B. I²C) mit dem Control Board verbunden werden kann. Der Raspberry Pi übernimmt in dieser Konfiguration die Rolle des Hauptcontrollers und ist zuständig für komplexe Aufgaben wie Bildverarbeitung, Navigation, Netzwerkkommunikation und die Ausführung von High-Level-Software (z. B. WPILib für FIRST Robotics).

Typische Aufgabenverteilung

  • Nebencontroller (ATmega32U4):
    • Motorregelung
    • Sensordatenerfassung (z. B. Encoder, Gyroskop, Beschleunigungssensor)
    • Echtzeitnahe Steuerungsaufgaben
  • Hauptcontroller (Raspberry Pi):
    • High-Level-Logik
    • Bildverarbeitung
    • Netzwerkkommunikation
    • Schnittstelle zur Benutzerprogrammierung (z. B. über WPILib)

Kommunikation

Die beiden Controller kommunizieren über I²C und weitere Schnittstellen. Das Control Board versorgt den Raspberry Pi mit Strom und ermöglicht einen zuverlässigen Datenaustausch.

Einordnung

Der Pololu Romi ist ein typisches Beispiel für eine Dual-Controller-Architektur:
Er kombiniert einen Mikrocontroller für deterministische, zeitkritische Steuerungsaufgaben mit einem leistungsfähigeren Computer für komplexe, rechenintensive Aufgaben. Diese Trennung ermöglicht eine effiziente und robuste Steuerung, wie sie in modernen Robotiksystemen (z. B. für Lehre, Forschung und Wettbewerbe) üblich ist.


Kurz:
Der Pololu Romi setzt das Prinzip der Dual-Controller-Architektur um, indem er einen ATmega32U4-Mikrocontroller für Low-Level-Steuerung und optional einen Raspberry Pi als High-Level-Controller für komplexe Aufgaben integriert.

[1] https://www.pololu.com/product/4022

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment