Hallo zusammen,
ich habe ein Verständnisproblem bei dem P-Regler.
Erst einmal die Aufgabe:
Ich habe 2 Motoren, der eine (M1) schafft 4500/min und der andere (M2)
5000/min. Von dem Motor M1 wird die Frequenz gemessen und stellt bei der
Regelung die Führungsgröße dar. Der Motor M2 soll über ein PWM Signal so
angesteuert werden, dass er die selbe Anzahl U/min besitzt wie der Motor
M1. Dazu wird von dem Motor M2 auch die Frequenz gemessen (Regegröße).
Die Regelung soll auf einem beliebigen Mikrocontroller implementiert
werden.
Die Messung steht bereits und stellte noch kein Problem dar.
Ich bekomme bei meiner P-Regelung, desto kleiner die Regelabweichung,
niedrige PWM-Tastverhältnisse heraus. Als Bsp. kann man sich bei der
Regelabweichung von 100us ein Tastverhältnis von 1% vorstellen, obwohl
sich der Motor mit annähernd voller Geschwindigkeit(4500 U/min) drehen
müsste.
Ist dieses Verhalten normal, da sich dabei die Regelabweichung wieder
vergrößert und dabei dann wieder größere Tastverhältnisse angenommen
werden?
P-Regler haben Systembedingt IMMER eine
bleibende Regelabweichung. Deine beiden
Motoren werden mit einem einfachen P-Regler
also nie synchron laufen.
Beispiel mit Annahme:
Beide Motoren laufen (wo möglich
noch unter Last) genau gleich schnell.
Dann ist die Regelabweichung Null und
damit die Stellgröße des P-Reglers auch Null.
Deine PWM hätte dann 0% und M2 bekommt keine
Spannung.
Das ist aber ein Wiederspruch!
Was du brauchst ist wenigstens ein PI-Regler.
Im Idealfall, wenn die Strecke vollständig identifiziert ist, kannst du
gern den P Regler nehmen, ist auch schneller als PI. In der Praxis wird
immer ein PI Regler plus I Begrenzer eingesetzt.
Also das bedeutet für mich, je kleiner die Regelabweichung wird, desto
kleiner wird mein PWM-Signal?
Das mti dem PI-Regler sehe ich mir sofort an :) danke vielmahls an
dieser stelle.
Ne, das bedeutet, Du hast im eingeschwungenen Zustand immer so viel
Regelabweichung, dass sich noch ein sinnvolles PWM Signal ergibt. Wenn
Du versuchst, den P-Anteil stark zu erhöhen, so dass bei möglichst
kleiner Regelabweichung das richtige Tastverhältnis heraus kommt, wird
der Regler anfangen zu Schwingen.
ich habe es so gelernt,
der P-Regler lebt von der Regelabweichung, diese kann nur NULL sein bei
unendlicher Verstärkung, nur schwingt dann der Regler und ist somit
nicht nutzbar.
Du hast es ja gemerkt, Abweichung Null, keine Führungsgröße mehr.
Ja. Größere Abweichung -> Größere Stellgröße
Wenn du nur 1 % PWM brauchst um die gewünschte Drehzahl zu erreichen ist
alles gut. Wenn Du mehr brauchst wird sich automatisch eine größere
Regelabweishung einstellen.
Da Du dich über das eigentliche Vorhaben ausschweigst: Wenn Du schon
beide Motoren steuern und Messen lassen, warum nicht beide regeln an
Hand eines Sollwerts?
Reinhard #. schrieb:> P-Regler haben Systembedingt IMMER eine> bleibende Regelabweichung.
Das stimmt so nicht. Wenn z.B. die Strecke integrierend ist, kann man
auch mit einem P-Regler 0 Regelabweichung erhalten. Tägliche Anwendung
bei Kaskadenregelungen, wenn die äußeren Regler nur als P oder PD
ausgeführt sind und die inneren (oft PI) einen integrierenden Charakter
erzeugen.
@OP: Was soll es werden? Ein Roboter der geradeaus fährt? Dann führt
eine Drezhalregelung nicht zum Ziel! Du brauchst eine Lageregelung.
Stm M. schrieb:> In der Praxis wird> immer ein PI Regler plus I Begrenzer eingesetzt.
Im praxistauglichen Antriebsregler wird der Stellwert aus der
Vorsteuerung und additiv der Reglerausgabe gebildet.
Das A&O bei einer proportionalen Regelung ist der
Proportionalitätsfaktor bzw. die Verstärkung.
Die Theorie sagt hierzu ganz einfach: Fast keine Abweichung, fast keine
Korrektur. Oder anders ausgedrückt: Synchronität (Gleichheit) ist nicht
erreichbar.
Auch wenn er nur sehr schwach sein sollte: Ein kleiner, integraler
Faktor, kann hier "Wunder" bewirken.
Sven,
ja, ein P-Regler hat immer dann eine Regelabweichung, wenn die
Stellgrösse im eingeschwungenen Zustand nicht gleich Null ist. Wenn sie
aber gleich Null ist, dann gibt's auch keine Regelabweichung.
Also: Berechne aus den Ist-Drehzahlen der beiden Motoren die
Drehzahl-Differenz und verwende sie als Ist-Wert für einen P-Regler.
Sollwert ist Null. Dann lässt der die beiden Motoren wunderbar synchron
laufen.
Ciao, Hartmut
@hartmut (Gast)
>Also: Berechne aus den Ist-Drehzahlen der beiden Motoren die>Drehzahl-Differenz und verwende sie als Ist-Wert für einen P-Regler.>Sollwert ist Null. Dann lässt der die beiden Motoren wunderbar synchron>laufen.
Naja, nicht wirklich. Wenn man Motoren WIRKLICH syncron laufen lassen
will, nimmt man eine PLL. Dann kann man sogar die Phasenlage regeln.
Ich denke, Du solltest Deine Realisierung mal beschreiben:
Sevn I. schrieb:> Ich habe 2 Motoren, der eine (M1) schafft 4500/min und der andere (M2)> 5000/min. Von dem Motor M1 wird die Frequenz gemessen und stellt bei der> Regelung die Führungsgröße dar.
Also fsoll=4.500/min, du bekommst vermutlich ein Signal je Umdrehung,
also alle t=13.3ms.
Der andere Motor steht (t = unendlich oder z.b. 1000000ms als
maximalwert).
Wie errechnet sich Deine PWM?
Die Aufgabe macht so irgendwie keinen Sinn. Ein P-Regler sollte eine
Ist-Abweichung ausgleichen, aber in der Mitte des Regelbereichs,
keinen Absolutwert stellen. Also z.B.
Vorgabe PWM=50% für Sollwert 4500/min
und dann für jede 100/min mehr die PWM um 1% reduzieren und vice versa.
Oder bei einer Heizung: Durchfluss 0%@>25°, 100%@<15° wenn der Sollwert
bei 20°liegt.
Aber nicht bei dem Motor: PWM = (fsoll-fist)/5000
Witkatz :. schrieb:> Stm M. schrieb:>> In der Praxis wird>> immer ein PI Regler plus I Begrenzer eingesetzt.>> Im praxistauglichen Antriebsregler wird der Stellwert aus der> Vorsteuerung und additiv der Reglerausgabe gebildet.
es geht ja nicht um Steuerung sondern Regelung
Stm M. schrieb:> Witkatz :. schrieb:>> Stm M. schrieb:>>> In der Praxis wird>>> immer ein PI Regler plus I Begrenzer eingesetzt.>>>> Im praxistauglichen Antriebsregler wird der Stellwert aus der>> Vorsteuerung und additiv der Reglerausgabe gebildet.>> es geht ja nicht um Steuerung sondern Regelung
Aber eigentlich macht man genau das: Der Regler ist für die
Regelabweichung. Das eigentliche Kommando "fahre auf N u/min oder
Position x" kommt nicht vom Regler, sondern von einem groben
Zusammenhang (Modell) deiner Soll- und Ausgangsgröße. Wenn wir also
wissen, dass der Motor ohne Last bei 50 % PWM ca. 100 u/min macht, und
man 100 u/min fahren möchte, packt man eben schonmal als Vorsteuerung
die 50 % pwm drauf. Dreht der Motor jetzt aber auf Grund einer Last o.ä.
nicht genau 100 u/min, kommt der Regler ins Spiel. Und der packt eben
dann abhängig vom Proportionalwert und dem Vorzeichen des Fehlers noch
ein bisschen mehr oder weniger PWM % drauf.