PID Regler und Latency

Gast #2680158
Hallo,

ich möchte einen Quadrocopter von ganz unten auf bauen. Ich habe mir 
einen Teststand mit einer Wippe und zwei Motoren / Propellern gebaut, an 
dem ich die Lageregelung und die PID Parameter testen kann. Ich habe bis 
jetzt durch "Empirische Dimensionierung" (siehe Wikipedia) mich versucht 
und bin gescheitert. Bevor ich eine horizontale Lage erreiche schwankt 
die Wippe zu arg. In jedem Testfall (ich habe viele Varianten versucht).

Ich weiß, dass ich einige Latenzzeiten in dem System habe. Die IMU wird 
für sich etwas Zeit brauchen und zur Übertragung sind auch ein paar ms 
fällig. Zur Ausgabe auf den Motor sind wohl auch ein paar ms fällig 
(Ausgabe 2ms, dann Regler, dann Motor). Die Frage ist für mich, ob dies 
mein Problem erklärt. Brauchen die Daten einfach zu lang um mit dem PID 
Regler sauber geregelt zu werden?
Gast
Ich könnte auch mal so fragen: Ab wann kann ein PID Regler seine Arbeit 
nicht mehr tun, obwohl Sensoren in der Lage wären die Daten zu erfassen 
und Aktoren die Daten umzusetzen.
Tach Claudia,

> Bevor ich eine horizontale Lage erreiche schwankt die Wippe zu arg.
Du meinst die Reglung schwingt? Das kann praktisch nur am I seltener am 
D Glied liegen. Das P Glied ist über große Strecken stabil und 
unkritisch. Probiers erstmal ohne I und D und geringem P Anteil. Die 
Lagereglung wird dann natürlich sehr matschig werden aber du hast eine 
stabile Basis. Falls nicht sind wirklich extreme Laufzeiten am Werk oder 
falsche Messwerte die Uhrsache. 1-2/100s sind auf jeden Fall machbar. Ab 
1/10s wirds unschön.

Mein Tipp:
Erhöhe den P Faktor schrittweise. Man merkt schnell, dass man an einen 
Punkt kommt an dem der P Regler die kleine Abweichung um die 0 Lage 
nicht mehr ausregeln kann. Da sollte man dann mit dem I Anteil 
vorsichtig nachhelfen. Je nach dem ob man dann akrobatische Ambitionen 
entwickelt, kann man den PI bis an die Grenze zur instabilität bringen 
und dann mit dem D Glied wieder einfangen.

Thor
Gast
oder einfach eine Sprungantwort durchführen, die Parameter herauselesen, 
und mittels Frequenzkennlinienverfahren einen Perfekten Regler 
einstellen, und wenn die Totzeiten zu groß sind, dann versucht man einen 
Prädektiven Regler zu bilden.
Gast
@thor368: ich bin mir zwar sicher auch den Weg versucht zu haben, 
versuche ich es dennoch ein mal. Vielleicht habe ich mit einer höheren P 
Auflösung Glück.

@Zacc: Wie sollte ich das machen?
@zy. Wie soll ich das machen? Ich kann die Wippe antippen, aber das ist 
wohl weniger ein Sprung. Wie mach ich das bei meiner Wippe?
Claudia Mechtel schrieb:
> @zy. Wie soll ich das machen? Ich kann die Wippe antippen, aber das ist
> wohl weniger ein Sprung. Wie mach ich das bei meiner Wippe?

antippen entspricht einer störgröße auf das system..das willst du nicht.
sprungantwort => auf deine stellgröße (motordrezahl) einen sprung geben.

aber mal nen tipp am rande: für einen quadrocopter ist ein PID regler im 
grunde genommen ungeeignet, da das system stark nichtlinear ist... unter 
gewissen rahmenbedingungen  funktionieren diese bastler-lösungen 
zwar..jedoch ist es alles andere als das optimale um so ein ding zu 
regeln..
Gast
Ein PID(T) ist sicher die beste lösung wenn er Perfekt eingestellt ist 
also mathematisch ziemlich exakt, aber mit empirsch Ermitteln wäre ein 
reiner PI Regler empfehlenswert. Wenn du An die Stabilitätsgrenze gehen 
kannst könntest du die Parameter via Ziegler Nichols (google) 
einstellen. Allerdings ist Ziegler Nichols mit ca. 30-35% überschwingen 
sehr ungenau. Wie gesagt am besten versuchen das ganze zu verifizieren 
mit einem Sprung, die Parameter herauslesen, mit einem Programm wie 
P-Spice versuchen das Modell nachzubilden, und dann dazu 
frequenzkennlienenverfahren. (aber das wird wohl zu schwer sein).

Also der Tipp einfach mal nur einen PI-Regler nehmen.

Antwort schreiben

Eine eigene Frage? Dieser Thread ist über 14 Jahre alt. Stell sie in einem eigenen Thread – dort lesen mehr Leute mit, und sie wird öfter und schneller beantwortet.

Neuen Thread starten

Eine Lösung, Ergänzung oder Rückmeldung zu diesem Thread? Dann antworte hier.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.