Malender Roboter mit Arduino: Unterschied zwischen den Versionen
Zeile 62: | Zeile 62: | ||
==== Simulationsanzeige ==== | ==== Simulationsanzeige ==== | ||
[[Datei:Fig whiteboard c-1.png| | Die Simulationsanzeige in Abbildung 3 zeigt den Malroboter nach seiner Ausführung der Zeichnung des HSHL-Logos. Das blaue Rechteck definiert unseren zulässigen Malbereich. Das Quadrat in der unteren-linken Ecke, zeigt den Status der gewählten Stiftfarbe an. Hier sind vier Farben möglich: | ||
{| class="mw-datatable" | |||
! style="font-weight: bold;" | Farbe | |||
! style="font-weight: bold;" | Bedeutung | |||
! style="font-weight: bold;" | servoPos-Variable im Stateflow | |||
|+ style = "text-align: left"|Tabelle 1: Bewertung verschiedener Regleransätze | |||
|- | |||
| Weiß | |||
| Kein Stift wurde ausgewählt. | |||
| par_MarkerIdle | |||
|- | |||
| Schwarz | |||
| Der Roboter malt mit dem schwarzen Stift. | |||
| par_MarkerLeft | |||
|- | |||
| Rot | |||
| Der Roboter malt mit dem roten Stift. | |||
| par_MarkerRight | |||
|- | |||
| Hellblau | |||
| Der Stiftzustand wurde nicht gesetzt (uninitialisiert). | |||
| None | |||
|- | |||
|} | |||
[[Datei:Fig whiteboard c-1.png|right|200px|thumb|Bild 3: Anzeige der Simulation]] | |||
== Anforderung == | == Anforderung == |
Version vom 27. August 2021, 01:25 Uhr
Autoren: Stefan Arndt
Betreuer: Prof. Schneider
Art: PA
Projektlaufzeit:
Thema
Aufbau eines selbsmalenden Roboters.
Ziel
Das Arduino Engineering Kit ermöglicht den Aufbau dreier regelungstechnischer Herausforderungen. In diesem Projekt soll ein malender Roboter gebaut und programmiert werden. Das Projekt wurde zudem durch eine Simulation erweitert.
Verwendete Software
MATLAB R2021a (exportierte Modelle für R2019a liegen dem Projekt bei)
Aufgabenstellung
- Einarbeitung in das Thema, auch aus regelungstechnischer Sicht
- Identifikation der Regelstrecke
- Sichtung und Test des bestehenden Bausatzes
- Aufbau des Systems (ggf. Platinenfertigung, etc.)
- Vergleichen und bewerten Sie verschiedene Regleransätze (P, PI, PID und andere).
- Modellbasierte Programmierung der Hardware via Matlab und Simulink
- Test des Malroboters
- Dokumentation nach wissenschaftlichem Stand
- Funktionsnachweis als YouTube-Video
Bewertung des Bausatzes
Identifikation der Regelstrecke
Aufbau des Systems
Bewertung verschiedener Regleransätze
Eine Bewertung erfolgt qualitativ auf Grundlage der Eigenschaften der drei Regler in Tabelle 1.
Regler | Bewertung |
---|---|
P | Ein P-Regler erreicht in unserem Fall keine Regeldifferenz von 0. Die bleibende Regelabweichung kann durch Erhöhung des Parameters verringert werden. Dies begünstigt jedoch ein aggressives Verhalten der Regelung. |
PI | In dem Projekt wurde ein PI-Regler verwendet. Dieser kompensiert durch sein Integrator die bleibende Regelabweichung. Als Paremater wurden und verwendet. Dar unsere Stellgröße begrenzt ist, tritt der Wind-Up-Effekt auf. Dieser wird durch die Clamping-Methode verhindert. |
PID | Der PID-Regler erweitert den PI-Regler durch ein Differenzierer, der auf die Änderungsrate der Reglerabweichung reagiert. Der Roboter hat keine komplexe Kinematik, wodurch die Änderungsrate meist konstant bleibt. Deshalb wird auf ein I-Glied verzichtet. |
Modellbasierte Programmierung
Die Programmierung wurde mithilfe einer simulierten Umgebung realisiert. Der Projektordner lautet "aek_plotter". Inerhalb des Projekordners sind die Dateien für die Übungsaufgaben der Seite https://aek.arduino.cc/ Der Unterordner "simulink" enthält die entwickelte Simulationsumgebung.
Simulations- oder Hardwareumgebung starten
- Im Simulink-Ordner ./aek_plotter/simulink die Datei start.m ausführen
- potter_sim.slx öffnen für die Simulationsumgebung oder plotter_hardware.slx zum ausführen auf der Hardware
Simulationsanzeige
Die Simulationsanzeige in Abbildung 3 zeigt den Malroboter nach seiner Ausführung der Zeichnung des HSHL-Logos. Das blaue Rechteck definiert unseren zulässigen Malbereich. Das Quadrat in der unteren-linken Ecke, zeigt den Status der gewählten Stiftfarbe an. Hier sind vier Farben möglich:
Farbe | Bedeutung | servoPos-Variable im Stateflow |
---|---|---|
Weiß | Kein Stift wurde ausgewählt. | par_MarkerIdle |
Schwarz | Der Roboter malt mit dem schwarzen Stift. | par_MarkerLeft |
Rot | Der Roboter malt mit dem roten Stift. | par_MarkerRight |
Hellblau | Der Stiftzustand wurde nicht gesetzt (uninitialisiert). | None |
Anforderung
- Wissenschaftliche Vorgehensweise (Projektplan, etc.)
- Wöchentliche Fortschrittsberichte (informativ)
- Projektvorstellung im Wiki
- Machen Sie ein tolles Videos, welches die Funktion visualisiert.
Weblinks
Software
- Arduino Engineering Kit Hardware Support
- Arduino Engineering Kit Hardware Support für R2018b
- Arduino Engineering Kit Project Files
- Reinforcement learning with Self-balancing motorcycle
Siehe auch
→ zurück zum Hauptartikel: Studentische Arbeiten