Arduino: Self Balancing Bot

Aus HSHL Mechatronik
Zur Navigation springen Zur Suche springen
Abb. 1: Arduino Self Balancing Bot
Autor: Jan Rottländer
Art: Praxissemester
Starttermin: 16.03.2026
Abgabetermin: 31.07.2026, Prüfung in der 1. Augustwoche (Notenmeldung vor Semesterende 31.08.2026)
Betreuer: Prof. Dr.-Ing. Schneider

Einführung

Ein selbstfahrender Roboter auf zwei Rädern ist ein instabiles System. Die Physik dahinter wurde bereits vielfältig dokumentiert. In diesem Projekt wird für ein Laborversuch ein Prototyp entwickelt, getestet und 10-fach gefertigt.

Tabelle 1: Systemanforderung
SR Beschreibung Priorität
1 Der Roboter muss in der Lage sein, sich auf zwei Rädern selbstständig im Gleichgewicht zu halten. 1
2 Der Roboter muss sich vorwärts, rückwärts und durch Drehung um die eigene Achse bewegen können. 1
3 Die Messdaten müssen zu Diagnosezwecken via Bluetooth an einen PC versendet werden. 1
4 Der Roboter muss mindestens einen Abstandssensor besitzen, um Objekte vor sich zu erkennen. 1
5 Der Roboter muss seine Lage über eine IMU ermitteln. 1
6 Der Roboter muss über eine Entwicklungsumgebung programmierbar sein. 1
8 Der Roboter muss über eine integrierte wiederaufladbare Batterie betrieben werden. 1
8 Betriebs- und Sensor-Modi müssen nach dem Systemstart ausgewählt werden. 1
Tabelle 2: Funktionale Anforderung
FR Beschreibung Priorität
1 Das System muss kontinuierlich die Neigung des Roboters messen und die Motoren so ansteuern, dass der Roboter aufrecht bleibt (Modus Balancieren). 1
2 Der Roboter muss zwei unabhängig steuerbare Gleichstrommotoren besitzen. 1
3 Der SBR muss im Modus Erkundung vorwärts fahren, Hindernisse erkennen und diesen ausweichen. 2
4 Der Roboter soll Betriebszustände über LEDs anzeigen. 2
5 Ein Display muss die Ausgabe von >10 Sensorwerten ermöglichen. 1
Tabelle 3: Nicht-Funktionale Anforderung
NFR Beschreibung Priorität
1 Das Design muss so robust sein, dass ein Robotersturz auf dem Tisch keinen Schaden verursacht. 1
2 Der Roboter darf bei kleinen Störungen (z. B. leichter Stoß) nicht sofort umfallen. 1
3 Das Regelungssystem muss Sensordaten mit einer Frequenz von mindestens 10 Hz verarbeiten. 1
4 Der Roboter darf keine scharfen Kanten besitzen und muss bei niedriger Spannung automatisch abschalten. 1
5 Alle Komponenten müssen ohne Spezialwerkzeug austauschbar sein. 1
6 Der Roboter soll für Lernzwecke geeignet sein und eine verständliche Dokumentation im Wiki besitzen. 1
Tabelle 4: Hardware Anforderungen
Req. Beschreibung Priorität
1 Als Mikrocontroller muss ein Arduino R3 zum Einsatz kommen. 1
2 Als IMU muss ein MPU-9250/6500 zum Einsatz kommen. 1
3 Als Abstandssensor muss Infrarot oder Ultraschall zum Einsatz kommen. 1
4 Die Akkus müssen austauschbar sein (z. B. AAA). 1
5 Als Bluetooth-Modul kann ein HC-05 eingesetzt werden. 1
Tabelle 5: Software Anforderung
FR Beschreibung Priorität
1 Die Regelung muss modellbasiert über MATLAB®/Simulink programmiert werden. 1
2 Die Sensordaten müssen erfasst und gefiltert werden. 1
3 Die Software muss mindestens folgende Modi unterstützen:
  • Balancieren
  • Erkundung
1
4 Die Software muss folgende Sensor-Modi unterstützen:
  • Winkel aus Gierrate
  • Winkel aus Beschleunigung
  • Sensordatenfusion 1: Komplementärfilter
  • Sensordatenfusion 2: Kalman-Filter
1

Aufgabenstellung

  1. Einarbeitung in das Themen (Arduino, Gyroskop, Ultraschall, Regelung,..)
  2. Planung des Aufbaus
  3. Beschaffung der Bauteile
  4. CAD und 3D-Druck des Aufbaus
  5. Hardwareaufbau
  6. Inbetriebnahme des Self Balancing Bot
  7. Regelung des instabilen Systems
  8. Modellbasierte Entwicklung mit MATLAB®/Simulink
  9. Test und wiss. Dokumentation
  10. Funktionsnachweis als Wiki-Artikel mit Animated-Gif

Optional

  • Leiterplattenlayout und Fertigung

Getting started

  • Recherchieren Sie das Thema. Diese Aufgabe wurde schon mehrfach gelöst.
  • Stellen Sie die Ergebnisse Prof. Schneider vor und entscheiden Sie sich für ein Design.
  • Dokumentieren Sie die Anforderungen an Ihr System.
  • Stellen Sie Kontakt zu Marc Ebmeyer her. Lassen Sie sich die vorhandenen Teile aus dem Magazin geben und bestellen Sie frühzeitig fehlende Teile.
  • Erstellen Sie ein CAD-Design, diskutieren Sie dies mit Marc Ebmeyer und lassen Sie dies fertigen.
  • Bauen Sie einen Prototyp auf.
  • Implementieren Sie die Regelung mit Simulink. Diskutieren Sie das Ergebnis mit Prof. Schneider.

Anforderungen an Ihre Kenntnisse

Das Projekt erfordert Vorwissen in den nachfolgenden Themengebieten. Sollten Sie die Anforderungen nicht erfüllen müssen Sie sich diese Kenntnisse anhand im Rahmen der Arbeit anhand von Literatur/Online-Kursen selbst aneignen.

  • Arduino, Gyroskop, Ultraschall
  • CAD Design mit Solid Works
  • 3D-Druck
  • Optional: Leiterplattenlayout und Fertigung
  • Regelungstechnik
  • Optional: Modellbasierte Entwicklung mit MATLAB®/Simulink
  • Dokumentenversionierung mit SVN
  • Dokumentation mit Word und im HSHL-Wiki.

Anforderungen an die wissenschaftliche Arbeit

Quellen:


→ zurück zum Hauptartikel: Studentische Arbeiten