Nach meiner Ansicht wird in dem Unterprogramm über den Kamera-Sensor 'Position' nur der Distanz(Abstand)-Befehl geregelt, bei konstanter Geschwindigkeit und Synchron-Lauf beider Motoren. Dabei wird im Unterprogramm 'PI' ein PD-Regler benutzt.
Die Funktion / Wirkungsweise auf die Spur-Verfolgung erschließt sich mir nicht.
Es wäre schön, wenn mir das jemand erklären könnte.
Viele Grüße
dgross
Unterprogramm 'Spur' in TXT Erkundungsroboter
Forumsregeln
Bitte beachte die Forumsregeln!
Bitte beachte die Forumsregeln!
Re: Unterprogramm 'Spur' in TXT Erkundungsroboter
Hallo dgross,
Die Analyse ist schon ganz richtig - Per PID (I Anteil wird zu 0 gesetzt) wird nur die Anzahl der Schritte bestimmt. Vereinfacht gesprochen je geringer die Spurabweichung ist, umso länger fährt der Roboter geradeaus. Wenn der Roboter dann zuweit von der Spur abweicht, wird diese wieder durch drehen nach rechts oder links gefunden.
Man kann auch gut sehen, dass der Roboter sich ruckartig durch Kurven bewegt. Auch bei Abweichungen auf der Geraden bleibt er manchmal kurz stehen und sucht wieder die Spur. Die maximale Geschwindigkeit ist nicht ohne Grund auf 7 (von 8) limitiert, da sonst der Roboter die Kurven nicht mehr schafft. Ich hoffe das erklärt die Funktionsweise.
Bisher ist mir auch keine schönere Regelung gelungen, bei der der Robotor mit maximaler Geschwindigkeit sowohl stabil auf der Gerade als auch durch die Kurven fährt. Das hängt m.E. mit der etwas trickreichen Lenkung durch 2 Motoren als auch der vermutlich etwas zu langsamen Signalverarbeitungsgeschwindigkeit zusammen.
Da der TXT unter RoboPro auch Befehle der IR Fernsteuerung verarbeiten kann, habe ich da ein kleines Programm geschrieben um den Roboter mit einem Joystick zu steuern. Da merkt man, dass man ein bischen üben muss um den Roboter sauber eine Gerade oder eine Kurve entlang fahren zulassen.
Grüße Joachim
Die Analyse ist schon ganz richtig - Per PID (I Anteil wird zu 0 gesetzt) wird nur die Anzahl der Schritte bestimmt. Vereinfacht gesprochen je geringer die Spurabweichung ist, umso länger fährt der Roboter geradeaus. Wenn der Roboter dann zuweit von der Spur abweicht, wird diese wieder durch drehen nach rechts oder links gefunden.
Man kann auch gut sehen, dass der Roboter sich ruckartig durch Kurven bewegt. Auch bei Abweichungen auf der Geraden bleibt er manchmal kurz stehen und sucht wieder die Spur. Die maximale Geschwindigkeit ist nicht ohne Grund auf 7 (von 8) limitiert, da sonst der Roboter die Kurven nicht mehr schafft. Ich hoffe das erklärt die Funktionsweise.
Bisher ist mir auch keine schönere Regelung gelungen, bei der der Robotor mit maximaler Geschwindigkeit sowohl stabil auf der Gerade als auch durch die Kurven fährt. Das hängt m.E. mit der etwas trickreichen Lenkung durch 2 Motoren als auch der vermutlich etwas zu langsamen Signalverarbeitungsgeschwindigkeit zusammen.
Da der TXT unter RoboPro auch Befehle der IR Fernsteuerung verarbeiten kann, habe ich da ein kleines Programm geschrieben um den Roboter mit einem Joystick zu steuern. Da merkt man, dass man ein bischen üben muss um den Roboter sauber eine Gerade oder eine Kurve entlang fahren zulassen.
Grüße Joachim
Re: Unterprogramm 'Spur' in TXT Erkundungsroboter
Hallo jona2004,
danke für die umgehende Antwort.
So hatte ich es auch vermutet. Mein Ersatz der Camera durch eine Arduino-Reflectance Sensor Array Linienverfolgung (QTR 6A) funktionierte leider nicht (Messwerte über I2C an TX).
Viele Grüße
Dieter
danke für die umgehende Antwort.
So hatte ich es auch vermutet. Mein Ersatz der Camera durch eine Arduino-Reflectance Sensor Array Linienverfolgung (QTR 6A) funktionierte leider nicht (Messwerte über I2C an TX).
Viele Grüße
Dieter
-
- Beiträge: 7
- Registriert: 28 Sep 2019, 12:04
Re: Unterprogramm 'Spur' in TXT Erkundungsroboter
Ich habe das Programm leider immer noch nicht verstanden. D.h. er korrigiert erst dann, wenn er die Spur verloren hat. Wass macht dann der Distanz-Befehle mir unterschiedlichen Parametern für einen Sinn? Der Geradeauslauf wird doch erst dann abgebrochen, wenn die Spur verloren wird, oder?
Schöne Grüße, Matthias
Schöne Grüße, Matthias