Wenn dein Problem oder deine Frage geklärt worden ist, markiere den Beitrag als "Lösung",
indem du auf den "Lösung" Button rechts unter dem entsprechenden Beitrag klickst. Vielen Dank!
ich habe mittels Bode-Diagramm einen PID-Regler entworfen:
R = 0,0015 * (1+0,35s) * (1+0,1s) / (s * (1+0,07s))
Jetzt würde ich diesen Regler gerne in Labview implementieren. In meinem Hauptprogramm (das ich nicht selbst geschrieben habe) ist an der Stelle bereits ein PID-Regler mit Werten für P, I und D.
Kann sein dass meine Frage etwas trivial ist aber ich weiß gerade nicht wie ich von meinem Regler in obiger Darstellung auf die Werte für P, I und D komme.
Moinsen, ach endlich mal wieder ein Regler, ich hatte schon Entzugserscheinungen ^^
Also es gibt ja den PID in Reihen- und Parallelform, du musst dir darüber klar sein welche von beiden Formen du brauchst, aufgestellt hast du das ganze ja für eine Parallelform. Wenn du P (also Kp), I (Ki und Ti) und D ( Kd und Td) suchst würde ich den Regler jetzt in die Reihenform umrechnen und dann hast du genau diese Parameter, wobei du da, wenn du geschickt rechnest, Kd und Ki = 1 setzt und nur dein Kp eine sinnvolle Größe erhält.
So habe ich es zumindestens mal gelernt. Das umrechnen musst du nicht zwangsläufig neu erfinden, das haben schon eine Menge Leute vor dir versucht, also Formeln nehmen und anwenden.
Nur wer neugierig ist, lernt ständig dazu.
Mythos:
Mit LabView lassen sich gut Programme leichter entwickeln
Realität:
Mit LabView lassen sich gut und schlechte Programme leichter enwickeln!
(16.09.2011 10:35 )itsme87 schrieb: Vielleicht kann mir da ja jemand weiterhelfen.
Da kann Dir niemand helfen. Ein PID-Regler hat das Übertragunsverhalten
P + I/s + D*s
Dein Polynom R ist ein ganz anderes, das wird man mit keinem Rechentrick je auf PID-Regler trimmen können. Deine Aussage, daß Du "einen PID-Regler entworfen" hast, ist schlichteweg falsch - es ist keiner.
Wenn Du z.B. geschrieben hättest: ich habe aus dem Bode-Diagramm meiner Regelstrecke deren Übertragungsfunktion ermittelt", dann wäre das eine sinnvolle, in sich widerspruchsfreie Aussage .. aber so.
Edit: Hier noch die R-Funktion zurück in Bode-Plot. Mit LV ist es zwar viel umständlicher als mit einem Simulationsprogramm, aber es geht:
Ein Regelkreis enthät als wesentliche Elemente Regelstrecke und Regler. Nun wird aber auch der ganze Regelkreis oft "Regler" genannt und ein Regelkreis mit PID-Regler wird dann "PID-Regler" genannt. Da sind natürlich Mißverständnisse vorprogrammiert.
Das geht schon los im ersten Bild bei Wikipedia: Das Bild ist in der Überschrift mit "Regler" tituliert, in der Unterschrift heißt dann aber "Standardregelkreis, bestehend aus Regler und Regelstrecke". Die Ausgangsgröße des Regelkreises heißt hier Y(t).
Aber bei dem Bild, auf den Dein Link verweist, handelt es sich tatsächlich um einen PID-Regler, aber um einen "realen". Damit hat es Dieses auf sich: Beim idealen PID-Regler geht der Verstärkungfaktor in den Grenzfällen f =0 und f=inf gegen inf. Das ist praktisch nicht möglich. Beim abgebildeten realen PID-Regler wird berücksichtigt, daß die Differentiation praktisch nicht bis zu unendlich hohen Frequenzen funktioniert, sondern nur bis zu einer oberen Frequenz f=1/(2Pi*Tp) (Die nicht ideale Integration bleibt unberücksichtigt).
Üblicherweise ist natürlich die Zeitkonstante Tp wesentlich kleiner als die beiden Zeitkonstanten Tn und Tv der Integration und Differentiation. Bei Dir ist aber Tp nicht wesentlich kleiner. Von Differentiation kann überhaupt kein Rede sein. Sie wird durch das viel zu große Tp vollständig verhindert. Im Bode-Plot kann man da sehen, es gibt keinen Anstieg bei hohen Freuenzen. Ich schau mir das noch mal näher an. Aber so viel steht fest: Der PID-Regler von Labview ist ein "idealer" Regler. Deine Funktion ist dem gegenüber völlig entartet, die Korrektur ändert schon mitten im nutzbaren Frequenzbereich entscheidend das Verhalten. Mit dem normalen, idealen PID Regler läßt sich da nichts mehr anfangen.
Edit: Die Übertragungsfunktion
R = a * (1+bs) * (1+cs) / (s * (1+ds))
kann man als PID-Regler mit in Kette geschaltetem Tiefpass realisieren:
R = [a * (1+bs) * (1+cs) /s ] * [1/(1+ds)]
R= [a(b+c) + a/s + abc*s] * [1/(1+ds)]
Der PID-Regler hat dann die Parameter
P = a*(b+c); I = a; D = a*b*c
und der nachgeschaltete Tiefpass die Zeitkonstante d [die Grenzfrequenz 1/(2Pi*d)]
Danke schonmal für deine Antwort.
Ich hatte die irgendwo die Regel gefunden Tp zwischen 1/5 und 1/50 der größeren Zählerzeitkonstante zu wählen. In der angegebenen Funktion ist Tp 0,35/5=0,07.
Im Wikipedia-Artikel (Link oben) steht Tp soll <= 0,05 der kleineren Zählerzeitkonstante sein was sich mit deiner Aussage deckt. Wäre es also sinnvoll Tp als 0,05*0,1=0,005 zu wählen?
Das würde sich dann nicht mehr ganz mit der Faustregel Tp<=1/50*0,1 = 0,002 decken aber es ist ja auch nur eine Faustregel.