-
Hallo payce,
ich hab mal dein Programm getestet. Mein Asuro fährt sehr ruhig mit den Grundeinstellungen. Wenn ich aber die Geschwindigkeit erhöhe, dann habe ich auch das Schütteln. Es ist auch stark vom Umgebungslicht abhängig. Ich werde es nochmal mit meiner Software zur Unterdrückung des Umgebungslichts ausprobieren.
Aber grundsätzlich ist eine Schwingneigung nicht durch eine quadratische Funktion zu beseitigen. Das ist so wie mit einer linearen und einer progressiven Feder. Beide Federn schwingen, nur ist vielleicht die Frequenz verschieden. Um eine Schwingneigung zu unterdrücken braucht es eine stabile Regelschleife mit ausreichender Dämpfung. Das bedeutet auch, die Verstärkung im Regelkreis sollte möglichst konstant bleiben. Da ist meiner Ansicht nach eine nichtlineare Funktion sogar schädlich, ausser sie kompensiert eine andere nichtlineare Kennlinie.
Probier es mal mit einem PD-Regler. Nach einer Simulation von mir sollte das eigentlich am günstigsten sein.
Gruss Waste
Nachtrag:
Mit meiner Kompensationsroutine läuft es jetzt besser, aber enge Kurven fährt der Asuro eckig, fast als wollte er wieder mit dem Schütteln anfangen.
-
Hmm, jupp, geb ich dir recht. Allerdings habe ich eine quadratische Kennlinie genommen, da die Motoren ja auch nicht gerade in die lineare Generation gehören. ;)
Und der weitere Sinn ist, das leichte Abweichungen auch nur leicht abgefedert werden sollen, stärkere hingegen sinngemäß auch stark. Das Problem mit dem Umgebungslicht hab ich türlich weniger, wegen dem hier: https://www.roboternetz.de/phpBB2/ze...bbb8386cc6d7d) (die beiden Bilder von mir).
Von PD oder ähnlichen Reglern (PI oder watt auch immer) lass ich aus zwei guten Gründen bisher die Finger: Erstens immo noch zu kompliziert für mich und zweitens gibt es Berichte von verschiedensten Seiten, daß sich Mikrocontroller und klassische Regelsysteme oft nicht vertragen. Das liegt meistens daran, daß klassische Regelkreise keine Totzeit haben (analoge Schaltungen). Im Mikrocontroller kommst du natürlich ohne nicht aus. Will man verschiedenen Berichten glauben, sind Fuzzy-Regler da immer noch die bessere Alternative.
High-End ist dann natürlich (auch von verschiedensten Berichten untermauert) eine Hybrid-Regelung aus Fuzzy- und Analogregler (bspw. PD, PI, PT). Die Dinger sollen sehr gut funzen, vorrausgesetzt, die Prozessorleistung ist vorhanden (einen ATMEGA8 zwingst du damit türlich in die Knie).
Aber danke für die Gedanken! Vielleicht trau ich mich ja irgendwann tatsächlich an einen Linienfolger mit PD-Regler! :)
-
Hallo payce!
Scheinbar kennst du dich ein bisschen mit der Materie aus. Wie wär es, wenn wir es gemeinsam mit einem PD-Regler versuchen, oder auch einem anderen Regler, falls sich im Laufe der Entwicklung was anderes als besser herausstellt. Möglicherweise wird es sogar in einem Fuzzy-Regler enden. Ich hab zwar schon komplizierte Regelschleifen in der Elektronik realisiert, aber in der Robotik blieb es bisher immer bei einem normalen P-Regler. Deshalb würde mich die Sache schon reizen.
Die Totzeit ist in diesem Fall kein Problem, die ist beherrschbar, das habe ich mir schon angeschaut. Anders ist es bei der Odometrie, da ist die Totzeit wirklich ein Problem.
Also wie wär's, packen wir's an?
Gruss Waste
-
Puh, also ganz ehrlich, da trau ich mich *noch* nicht ran. Mit analoger Regelungstechnik hab ich schon so meine Erfahrungen, aber: 1. Der Asuro ist mein erster Bot und 2. das ist das erste Mal, daß ich in C programmiere (wollte ich mir schon seit Längeren mal aneignen). Ich hab mich bisher halt eher theoretisch damit beschäftigt um möglichst Sackgassen zu vermeiden (und damit derbe Motivationsdämpfer).
Sobald ich ein wenig mehr Erfahrung hab, gerne, dürfte echt interessant sein! Aber immo hab ich die Befürchtung, daß ich da nicht wirklich durchsteige...
Aber danke für die Nachfrage! *geehrt fühl* :D Komm ich auf jeden Fall drauf zurück, wenns soweit ist!
-
Apropos, hier mal zwei gute Quellen:
Einführung zur Fuzzy-Regelung:
http://esr.e-technik.uni-dortmund.de...uzzyRegler.pdf
und eine Einführung in die Regelungstechnik mit einem kleinem Ausflug in die digitale Regtechnik:
http://www.meilhaus.com/regeltechnik/bilder/rt.pdf
oder:
http://www.meilhaus.com/regeltechnik/
-
Hallo payce,
ich habe den Eindruck, dass du ein gutes Grundwissen in der Sache hast und bin deshalb auf die Idee gekommen. Das muss jetzt nicht direkt eine Mitarbeit im Sinne von Aufgabenteilung sein, sondern mehr als Beobachter, Kritiker, Fragensteller und Verbesserer.
Ich habe bisher noch in keinem Roboterboard eine Beschreibung gefunden, wie eine solche Regelung von Grund auf berechnet und realisiert wird. Bin aber sicher, dass dies sehr viele gerne wissen würden. Nachdem ich mich jetzt schon ein wenig damit befasst habe, will ich es jetzt auch selbst wissen, ob es geht und wie gut es geht. Möglicherweise geht es aber gar nicht und ich werde scheitern. Das macht auch nichts, dann bin ich eben um eine Erfahrung reicher geworden. Eine erste Simulation zeigt allerdings Vielversprechendes, was mich natürlich zusätzlich motiviert.
Ich werde dazu einen neuen Thread eröffnen. Wenn es soweit ist, werde ich hier nochmal darauf hinweisen.
Gruss Waste
-
Ahsoooooo! Dodal missverstanden! Ja also das ist ja wohl sowas von selbstverständlich! :D
Jo, klar, wär ich jetzt nie darauf gekommen, daß du das so meinst, sowas halt ich jetzt echt für selbstverständlich. Wenn mich ein Thema interessiert (und das tut der Linienfolger ja offensichtlich) bin ich grundsätzlich bei einer Diskussion nicht weit weg! ;)
Fazit: Logen, daboi!
-
Also der 1.Teil steht.
siehe https://www.roboternetz.de/phpBB2/vi...=106560#106560
Es wird etwas umfangreich, muss es auf mehrere Beiträge aufteilen.
Gruss Waste