Hallo zusammen,
ich habe einen Regelkreis mit einem PI-Regler und einer P-Tt-Strecke
(also einer Strecke mit Verstärkung und Totzeit). Die Totzeit leigt bei
etwa 150ms und der Verstärkungsfaktor bei 8. Nun soll ich den PI-Regler
auslegen. Leider habe ich keine Ahnung wie man das mit einer Totzeit
macht... Könnt ihr mir weiterhelfen?
Gruß
Boris
Ggf kann man das alles mit SCILAB / SCICOS (o.ä.)
simulieren.
soll gut sein und nix kosten, ;-)
SCILAB ist so etwas ähnliches(!) wie MATLAB
- aber nicht kompatibel o,s, (wie octave)
Falls da noch mehr gemacht werden soll,
Regler testen, etc. ist das ggf. nutzbar.
(habe keine Erfahrung mit SCICOS)
Ob das anwendbar ist = ?
Kommt ja überhaupt drauf an, was Du wie regeln willst.
Soll es eine reine Simulation sein, ist es eine prakt. Anwendung,.....
Der Reglerentwurf ist nicht trivial, die Nutzung von z.B. Rltool in
Matlab ist dabei sehr vorteilhaft.
Hallo,
eine Totzeit ist immer Gift für eine Regelung!
Grundsätzlich gehst du her und legst dir eine Grenzfrequenz fest, bei
der die Verstärkung 1 sein soll. Diese würde ich einfach mal mit
1/doppelte Totzeit anfangen. Also knapp 3 Hz. Jetzt setzt du deine
Reglerverstärkung so, dass bei 3Hz eine Verstärkung des offenen Kreises
von 1 rauskommt. Dann setzt du das Zeitglied auf nochmal einiges unter 3
Hz ... würde einfach mal ne Sekunde ausprobieren.
Das ganze lässt sich in einem Freqenz-Gang-Phasen-Diagramm recht schön
sehen.
Also das ist natürlich alles nur pimaldaumen ... aber in der Praxis
wirds so gemacht.
Gruß,
Nikias
Danke für die Infos!
Es handelt sich dabei um eine praktische Anwendung die nun auch mal von
der theoretischen Seite betrachtet werde soll. Der Aufbau ist
folgendermaßen: Eine Sollstrom wird vorgegeben (bspw. 100A) und der
Iststrom gemessen (bspw. 40A). Die Regeldifferen (also 60A) geht in den
PI-Regler (welcher ausgelegt werden soll). Der Regler spuckt die
Stellgröße aus, welche in die P-Tt-Strecke (Totzeit 150ms, Verstärkung
8) geht. Der Iststrom wird dann über die Rückführung wieder an den
Sollstrom gekoppelt.
Da eine Neuberechnung der Werte nur alle 100ms erfolgt, kommt noch hinzu
dass die Zykluszeit der Istwertabfrage auch alle 100ms erfolgt, das
Signal also diskret vorliegt. Muss dies dann anders betrachtet werden?
Da bei der theoretischen Betrachtung das "ausprobieren" wegfällt und ich
die Totzeit nicht entfernen kann, hoffe ich erneut auf eure Hilfe.
Wenn die Neuberechnung deiner Werte aller 100ms stattfindet, hast du ja
schon mal die Abtastzeit Ta deines Reglers ;-)
Ich bin mir nicht sicher, ob sich für ein System mit dominierender
Totzeit überhaupt ein theoretischer Reglerentwurf durchführen lässt, da
jedesmal in der Übertragungsfunktion dieses "e-hoch "haste nicht
gesehen"" auftaucht. Diese Übertragungsfunktion hatte auch einen
speziellen Namen, der fällt mir aber grad nicht wirklich ein.
Für den diskreten Fall gilt das selbe.
Stehen Dir denn Tools für Reglerentwürfe, z.B. oben genanntes Rltool von
Matlab zur Verfügung (z.B an einer Hochschule)?
Übrigens haben die Softwaretools für den Reglerentwurf nichts mit
"ausprobieren" zun tun, es lässt sich hiermit eine Reglerparametrierung
korrekt und auch wissenschaftlich anhand vorgegebener Grenzen
(Überschwingweite, Einschwingdauer,.....) durchführen.
Achso, bei Einsatz eines Smith-Prädiktors lässt sich das ganze glaube
theoretisch berechnen, da hier der Regler nur die Strecke ohne Totzeit
"sieht", und ein einfacher Reglerentwurf für eine P-Strecke ausreicht.
Theoretisch habe ich das selber noch nicht durchgeführt, müsste aber
funktionieren.
allerdings sagt mir die Funktion Rltool nichts und mit einem
Smith-Prädiktor hatte ich bisher auch nichts zu tun. Gibt es dazu ne
gute Hilfestellung/Erklärung?
Gib mal in Matlab "rltool" ein, hat auch eine vernünftige Hilfe.
Wichtig ist, das Du die Totzeit vorher Pade'-approximierst, mit der
Darstellung "e-hoch" kann Matlab nix anfangen. Zweite oder dritte
Ordnung reicht normal aus.
Zum Smith-Prädiktor findest Du eigentlich genug im Netz und in Büchern.
Und das kann ich auch auf diskrete systeme anwenden? Denn im diskreten
Bereich sind wird doch der Laplace-Parameter s durch Transformation von
z erstezt?
Das überlege ich auch grad.
Bis Du denn an die 100ms gebunden, die zurzeit vorliegen?
Ansonsten könntest Du die Abtastzeit stark verringern und hättest eine
quasikontinuierliche Regelung, da funktioniert es auf jeden Fall.
Verstehe ich das richtig, das Dein Chef, Auftraggeber, was auch immer
nur eine vorhandene Regelung optimiert haben will, d.h. neue (bessere)
Reglerparameter?
Und diese Parameter sollen dann nur in den vorhandenen Algorithmus
impementiert werden. Oder hast Du noch andere Möglichkeiten, z.B eine
Änderung des Algorithmus?
Ist ein Projekt der Hochschule.
Im Vordergrund steht die Optimierung der Regelparameter, da die aktuell
eingestellten Parameter einfach ein Zufallsprodukt sind. Nun sollen die
optimalen Parameter erarbeitet werden und diese dann am Versuchsträger
eingestellt und an die "realen" Bedingungen angepasst werden.
Ich kann aber auch noch Einfluss auf den Alogrithmus nehmen, wird
derzeit aber eher wegfallen. Es sei denn ich kann es irgendwie
theoretisch begründen...
Achso, das mit der Linearisierung und Offset oben ist Blödsinn, war früh
am morgen.
Beschäftige Dich mal intensiver mit dem Smith-Prädiktor, das hat bei mir
in einer Simulation sehr gut funktioniert. Praktisch ist er eher
schlecht, man muss die Parameter der Strecke sehr genau kennen, bzw.
dürfen diese sich nicht geringfügig ändern, sonst macht eine Regelung
mit Smith-Prädiktor nicht wirklich "schöne Sachen". Aber für die Theorie
ist das schon mal ein guter Ansatzpunkt.
Als zweite theoretische Möglichkeit kann man ja die quasikontinuierliche
Regelung aufführen.
Weisst Du denn, nach welchem Prinzip die Regelung derzeit funktioniert?
Mit der diskreten Reglerparametrierung muss ich mich selber noch mal
beschäftigen, ich weiss jetzt nicht genau, ob und wie das in Rltool
funktioniert.
Der Versuchsträger wurde um die Regelung erweitert (zuvor wurde der
Strom nicht geregelt). Bei dem PI-Regeler handelt es sich meiner ansicht
nach um einen Standardregler. Der Eingangswert wird im I-Anteil alle
100ms hochintegriert (würde der Werte kontinuierlich vorliegen, wäre er
schneller) und im P-Anteil mit einem konstanten Faktor beaufschlagt. Zum
Schluss wird I- und P-Anteil addiert und verlassen den Regler.
Eigentlich wäre es eine kontinuierliche Regelung, nur die Zykluszeit von
100ms lässt dies nicht zu.
Und warum die 100ms? Einfach weil es so ist?
Mir ist grad was eingefallen:
"Ein korrekter theoretischer Reglerentwurf für ein System mit
dominierender Totzeit ist praktisch eigentlich nicht möglich, da die
Totzeit mittels Pade'-Approximation in ein Übertragungsglied unendlicher
Ordnung überführt werden müsste" (Aussage eines Professors aus der
Studienzeit)
Mit dem e hoch.... kann man ja nicht wirklich rechnen.
Also, entweder Approximation zweiter oder dritter Ordnung, da müsste es
für den kontinuierlichen Fall gehen. Und ein Softwaretool zum
parametrieren.Eine rechnerische Lösung muss ja hierfür nicht unbedingt
sein, wenn es nicht ausdrücklich verlangt ist--und das kann ich mir
nicht vorstellen, wäre ja Beschäftigungstheorie ;-)
Wie das jetzt für den diskreten Fall mit Pade' aussieht, kann ich leider
nicht genau sagen. Müsste aber auch einfach zu transformieren sein.
Ich schau heute abend eventuell nochmal.
Der der Versuchsträger noch umfangreicher ist ergeben sich für diese
Regelung 100ms als Abtastzeit. Der Sensor kann eh nicht viel schneller
abtasten...
Wäre super wenn Du mal schauen könntest. Ich werde mir das mit dem
Smith-Prädiktor heute Abend auch mal anschauen.
Beste Grüße
Boris
Wie ist das eigentlich? Ich habe eine Zykluszeit von 100ms und eine
Strecke mit einer Totzeit von 150ms. Ist die Zykluszeit dann nicht auch
eine Totzeit? Und wenn es die Regelung diskret erfolgt, habe ich dann
überhaupt noch die Zykluszeit?
Für einen theoretischen Teil kann ich den Smith-Prädiktor ja verwenden,
in der Praxis kann ich das Ding aber nicht nehmen. Die Toteit der
Strecke variiert in einem gewissen Bereich...
Deine Zykluszeit geht nicht in die Totzeit mit ein, da du bei jedem
neuen "Arbeitstakt" einen Wert einließt und den alten, abgearbeiteten
wieder ausgibst... das ist nicht das Problem...
Die Zykluszeit wird dir mit deiner Totzeit ein größeres Problem... Es
wäre sicherlich ein gutes wenn du die Zykluszeit verkleinern könntest...
Achja zum anderen... Du hast wenn du das ganze diskret aufbaust (OPV)
keine Zykluszeit... Da hast allerdings andere Stellgrößenbeschränkungen
wie Ausgangsspannung am OPV und die Slewrate...
"Die Zykluszeit wird dir mit deiner Totzeit ein größeres Problem... Es
wäre sicherlich ein gutes wenn du die Zykluszeit verkleinern
könntest..."
Warum wäre es gut die Zykluszeit zu verändern? Damit das System nicht so
leicht instabil werden kann?
"Achja zum anderen... Du hast wenn du das ganze diskret aufbaust (OPV)
keine Zykluszeit... Da hast allerdings andere Stellgrößenbeschränkungen
wie Ausgangsspannung am OPV und die Slewrate..."
Heißt das, ich kann den Regelkreis auch kontinuierlich aufbauen? Dachte
dass man bei zyklischen Regelkreisen das diskret aufbauen muss... Wenn
das so ist würde ich das ganze kontinuierlich betrachten, weiß nur nicht
wie ich dann die Abtastzeit des Reglers einbeziehen soll...?
Guten Morgen,
wenn Du das ganze kontinuierlich aufbaust, hat der Regler keine
Abtastzeit.
Darum heisst das ja kontinuierlich.
Oder eben du machst das ganze wie schon mal gesagt "quasianalog" und
machst die Abtastzeit sehr klein (mindestens 10mal kleiner als kleinste
Zeitkonstante---bei Dir 150ms Totzeit). Dann steht sie zwar immer noch
in den Parametern des Reglers, spielt aber bei der Reglerparametrierung
keine Rolle.
Danke für die Infos!
Gehen wir mal davon aus, dass ich den Regler quasikontinuierlich
betrachte, also mit einer Abtastzeit von 10ms (oder die Abtsastzeit
belibt bei 100ms und die Strecke hat eine Totzeit von 1s). Wie würde ich
dann vorgehen um den Regler auszulegen?
-Pade'Approximation der Totzeit in zweite oder dritte Ordnung
-Eingabe der Übertragungsfunktion der Regelstrecke in rltool
-Vorgabe der Grenzen (max. 5% Überschwingen, oder wie auch immer)
-Verschieben der Pole an die vorgegebenen Grenzen
-Reglerparameter entnehmen
-simulieren ob richtig
-fertig
oder Smith-Prädiktor:
-Übertragungsfunktion der Strecke mit Prädiktor aufstellen
(Totzeitanteil müsste entfallen)
-Reglerentwurf anhand dieser Ü-funktion
-simulieren
-fertig
Und wenn ich dann einen diskreten Regler entwerfen will?
Was wenn sich die Strecke wie folgt ändert: Verzögerungsglied, Totzeit
und Proportionalglied (Zeit Verzögerung und Totzeit 500ms); Verstärkung
8?
Grüße
Boris
Dann überträgst du Deine Reglerparameter des quasikontinuierlichen
PI-Reglers in die Parameter des diskreten Reglers.
Eine Totzeit und Verzögerungszeit kann man nicht einfach zusammenfassen.
Ich empfehle Dir mal ein Buch der Regelungstechnik (z.B. Taschenbuch der
Regelungstechnik, Lutz/Wendt o.ä.)
D
Wie unterscheiden sich denn die Totzeit von einer Verzögerungszeit bei
einer diskreten Betrachtung?
Bsp. für meinen Fall:
Am Computer gebe ich meinen Sollwert vor (100A). Den Istwert (40A)
erhalte ich alle 100ms aus meinem Messglied zur Verarbeitung am Computer
(AD-Wandler). Die Regeldifferenz wird also alle 100ms neu berechnet. Der
PI-Regler (auch am Computer umgesetzt) ändert dann der Regeldifferz
entsprechend die Stellgröße (auch alle 100ms). Die Stellgröße schaltet
dann über zwei Elektroniken und Kommunkationsbus einen
Konstantstromverbraucher zu (oder ab). Diese Zuschaltung hat eine
Änderung des Istwertes zur Folge, daher die Regelung...
Ist doch dann eine reine Totzeit, oder liege ich da falsch?
Wenn Du alle 100ms einen Messwert bekommst, dann ist das die Totzeit des
Messgliedes.
Das heisst aber nicht, das der Regler dann alle 100ms die Stellgröße neu
berechnet. Der kann auch alle 5ms neu berechnen, und das wäre dann
"quasianalog".
Der Unterschied zwischen Totzeit und Verzögerungszeit steht in jedem
Buch.
Oh, danke für den Hinweis.
Habe mal geschaut, der Regler berechnet etwa alle 60ms die Stellgröße
neu. Der Istwert wird alle 100ms gemessen und die Zeit bis sich der
Verbraucher einschaltet beträgt etwa 500ms. Daher werde ich diskret
rechnen müssen? Für mich stellt sich noch die Frage, ob die Zeit in der
die Elektronik und der Bus durchlaufen wird eine Verzögerungszeit oder
Totzeit darstellen?
Grüße
Boris
Ist dein System ein real-existierendes System? Oder steht dein System
nur auf dem Papier?
Ueberlege dir erst einmal, wofuer du den I-Anteil vom Regler ueberhaupt
brauchst. In vielen Systemen ist er unnoetig, ausserdem neigt er zur
Instabilitaet und macht dein System nur komplexer. Eine Komponenente die
zur Instabilitaet neigt hast du sowieso schon (Totzeit).
Also, ist es wirklich eine Anforderung, dass das System Regeldifferenz
== 0 hat? Oder darf das System eine konstante Regeldifferenz im
Ruhezustand haben?
Ausserdem: koennen die Sensor ueberhaupt so genau messen, dass ein
I-Anteil im Regler gerechtfertig ist?
Tupf
Ja, es handelt sich um ein real existierendes System!
Der Regler fand ich mit I-Anteil vor... Aber kann mir gut vorstellen,
dass ich den I-Anteil gar nicht brauche, die Regelabweichung muss nur
klein genug sein. Der Regler darf beim erreichen dieser Regelabweichung
(die versucht er ja nicht mehr auszuregeln) allerdings dann keinen
Änderung des Stellwerts vornehmen. Wenn das so ist, wie ich es
beschrieben habe und nur einen P-Regler einsetze, wie würdst Du dann an
die Sache rangehen?
Wie meinst Du das: "Ausserdem: koennen die Sensor ueberhaupt so genau
messen, dass ein I-Anteil im Regler gerechtfertig ist?"
"Der Regler fand ich mit I-Anteil vor... Aber kann mir gut vorstellen,
dass ich den I-Anteil gar nicht brauche, die Regelabweichung muss nur
klein genug sein."
Waere gut, wenn du genau wuesstest, wie gross deine Regelabweichung sein
darf.
Das nennt man in der Fachsprachen deine Anforderungen kennen!
"Der Regler darf beim erreichen dieser Regelabweichung
(die versucht er ja nicht mehr auszuregeln) allerdings dann keinen
Änderung des Stellwerts vornehmen."
Diesen Satz verstehe ich nicht ganz. Ist dein Regelsystem stabil und
eingeschwungen, dann bleibt deine Regelabweichung konstant. Im
allgemeinen gilt (bei linearen Systemen): je groesser der P-Anteil,
desto kleiner die Regelabweichung. Allerdings neigen hohe P-Anteile zu
Instabilitaet. Vielleicht schockiere ich jetzt alle Studenten oben, die
dir zu irgendwelchen Smithpraedikatoren oder so ein Quatsch raten. Wenn
es geht, wuerde ich einfach solange den P-Anteil vom Regler hochdrehen,
bis dein System die Anforderungen erfuellt. Frequenzganganalysen und
andere Verfahren haben das Problem, dass du dein System genau mit
Differentialgleichungen beschreiben musst. Die Modellierung ist
zeitaufwendig und machmal gar nicht moeglich, da du dein System nicht
genau kennst.
"Wie meinst Du das: "Ausserdem: koennen die Sensor ueberhaupt so genau
messen, dass ein I-Anteil im Regler gerechtfertig ist?""
Alle Sensoren messen eine physikalische Groesse und setzen sie in der
Regel in elektrische Signale um. Manche Sensoren sind sehr gut, manche
nicht. Ich wuerde an deiner Stelle die Spec. deines Sensors studieren.
Vielleicht misst er so schlecht, dass der Fehler eine Dimension groesser
ist als deine Regelabweichung. Dein Regelkreis regelt nur so gut, wie
dein Sensor misst.
Done!
Guten Morgen,
hier ist der Student (der keiner ist) und Dir zu irgendeinem "Quatsch"
rät.
@Tupf
Dann erkär mir mal bitte, wie die Regelung mit einem P-Regler aussehen
soll. Um die Regelabweichung möglichst klein zu halten, brauchst Du eine
relativ große Verstärkung. Was ist dann mit der Totzeit bzw. was macht
das System, wenn die Totzeit vorüber ist?
Die Regelabweichung ist nicht das Problem, von der Betrachtung würde ein
P-Regler ausreichen.
Allerdings wird die Regelabweichung mit einem weiteren Wert (welchen man
zur ersten Betrachtung konstant ansetzen kann) über ein Kennfeld (das
ich beeinflussen kann) ausgegeben. Der Ausgangswert des Kennfelds ist
entweder -1, 0 oder 1. Dieser Wert wird dann in der Regler geführt, wo
durch den I-Anteil den Ausgangswert des Reglers erhöht oder verringert
(je nach Ausgangswert, der im Bereich von 0 bis 100 liegt, also
Verbraucher ein- oder ausgeschaltet werden).
Würde ich nun den I-Anteil im Regler weglassen, würde am Ausgang immer
nur Werte zw. 0 und 1 erhalten, wo max. ein Verbraucher gesteuert wird!
Erhöhe ich bei reinem P-Regler den Verstärkungsfaktor des Regler so dass
alle geschalten werden, sind immer alle Verbraucher an oder aus...
Anmerkung: Der Ausgangswert des Reglers im Wertebereich von 0 bis 100
bedeutet, dass bei 0 keine Verbraucher ausgeschalten werden, bei 1 wird
ein Verbraucher ausgeschalten, bei 2 werden zwei ausgeschalten... und
bei 100 alle Verbarucher ausgeschalten.
Da über die Ostertage keine neuen Beiträge dazugekommen sind, stoße ich
den Thread nochmal an...
Kann man eigentlich an einem digital realisierten Regler die Dauer der
Stellgrößenberechung beeinflussen, oder geht das nur von der
Taktfrequenz der Reglerplatform abhängig?