Step 7 Step7 FB41

FranzK

Level-1
Beiträge
1
Reaktionspunkte
0
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo Zusammen
kennt sich jemand näher mit dem FB41 aus. Mein Problem ist, dass ich Ausgabegrenzen LMN_HLM und LMN_LLM verwende. Nach dem Start
des Reglers wird das Ausgangssignal LMN auf die obere und den untere Ausgangsgrenze auch richtig begrenzt. So weit so gut. Der Regler selber
beginnt intern mit einem Wert 0 des Ausgangssignal. das bedeutet nun, dass sich das Ausgangssignal LMN erst erhöht, wenn der interne Reglerausgangswert größer als LMN_LLM ist. Ist sehr unschön, denn es vergeht viel Zeit, da wir sehr langsame Regelungen benötigen.
Ist es möglich, den Regler so zu beschalten, dass der Regler intern sich auch zwischen den Grenzen LMN_HLM und LMN_LLM bewegt.
Auch das Beschalten von LMN_OFF (es wird der vorgegebenen Wert auf LMN aufaddiert) mit LMN_LLM brachte nicht das erhoffte Ergebnis.

im Voraus besten Dank
FranzK
 
Hi,

du kannst das meines Wissens nach über das Initialisieren des I-Anteils machen.
Der Regler hat einen Binären und einen REAL Eingang, mit dem du den I-Anteil setzen kannst.
Bei inaktiver Regelung brauchst dann eigentlich nur den I-Anteil auf LMN_LL initialisieren, dann müsste er vom LL-Wert aus normal losregeln.

Gruß

Micha
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Nach dem Start des Reglers wird das Ausgangssignal LMN auf die obere und den untere Ausgangsgrenze auch richtig begrenzt. So weit so gut.
Der Regler selber beginnt intern mit einem Wert 0 des Ausgangssignal.
Das kann ich eigentlich nicht nachvollziehen.
Grundsätzlich initialisiert der FB41, nachdem COM_RST auf Low geht, wie folgt. (Nur PI aktiviert)
P-Anteil = Regldifferenz * Gain​
I-Anteil = LMN_LLM - P-Anteil​
Damit sollte der Regler eigentlich ab LMN_LLM zu regeln beginnen. Das verhalten kann man eigentlich mit einem schnellen Test reproduzieren.
Hast du beim Regler während des Reset noch den MAN_ON-Eingang aktiv. Dann wird der Regler mit dem Wert von MAN initialisiert?

Der LMN_OFF (wie von dir versucht) wird erst am Schluss dazugerechnet, sogar nach der Eingrenzung durch LMN_LLM/LMN_HLM.
Sieh dir mal das Reglerdiagramm in der F1-Hilfe an, da ist der grundlegende Aufbau sehr verständlich dargestellt.

Ist es möglich, den Regler so zu beschalten, dass der Regler intern sich auch zwischen den Grenzen LMN_HLM und LMN_LLM bewegt.
Nachträglich kannst du den I-Anteil über den von SPS-Killer angesprochenen die Eingänge am FB41 beeinflussen.
F1-Hilfe zu FB41 schrieb:
I_ITL_ON BOOL FALSE
INITIALIZATION OF THE INTEGRAL ACTION / I-Anteil setzenDer Ausgang des Integrierers kann auf den Eingang I_ITLVAL gesetzt werden. Hierzu muß der Eingang "I-Anteil setzen" gesetzt werden.

I_ITLVAL REAL -100.0...100.0 (%)oder phys.Größe 2) 0.0
INITIALIZATION VALUE OF THE INTEGRAL ACTION / Initialisierungswert für I-AnteilDer Ausgang des Integrierers kann am Eingang I_ITL_ON gesetzt werden. Am Eingang "Initialisierungswert für I-Anteil" steht der Initialisierungwert.
Wenn I_ITL_ON auf High geht dann wird der I-Anteil mit dem Wert von I_ITLVAL beschrieben. An LMN bekommst hast du dann I_ITLVAL + P-Anteil (Regeldifferenz * Gain).
Die Methode hat eben den Nachteil dass der Startwert des Reglerausgangs von der Regeldifferenz zu dem Zeitpunkt abhängt.

Eine weitere Methode (wahrscheinlich auch die am häufigsten genutzte) zum setzen des LMN-Ausgangs ist die Verwendung der MAN-Funktion.
Die ist eigentlich zur Vorgabe von Hand-Werten gedacht, jedoch wird auch der P- bzw. I-Anteil wie folgt reinitialisiert.
P-Anteil = Regldifferenz * Gain​
I-Anteil = MAN - P-Anteil​
Liefert nach der Summenbildung den Wert von MAN am Ausgang LMN.
Nachdem man den Eingang MAN_ON auf Low bringt regelt der FB41 von diesem Punkt weiter. Damit kann man den Startwert genau definieren.
 
Zuletzt bearbeitet:
Wenn I_ITL_ON auf High geht dann wird der I-Anteil mit dem Wert von I_ITLVAL beschrieben. An LMN bekommst hast du dann I_ITLVAL + P-Anteil (Regeldifferenz * Gain).
Die Methode hat eben den Nachteil dass der Startwert des Reglerausgangs von der Regeldifferenz zu dem Zeitpunkt abhängt.

Ich verstehe noch nicht, warum das ein Nachteil ist.
Das ist normales Einschaltverhalten eines PID Reglers.
Wenn man nur über den I Anteil loslegen will, dann muss beim Initialisieren eben noch der P Anteil abgezogen werden.
Das mit dem MAN ist natürlich auch möglich, nur eben ist das eher ein Tracken als ein Ausschalten.
 
Ich verstehe noch nicht, warum das ein Nachteil ist.
Das ist normales Einschaltverhalten eines PID Reglers.
Wenn man nur über den I Anteil loslegen will, dann muss beim Initialisieren eben noch der P Anteil abgezogen werden.
Hast schon recht, ist auch mehr Geschmackssache bzw. eventuell Anwendungsabhängig.

So gesehen startet der FB41 allerdings immer rein mit dem I da er den P- und I-Anteil nach dem COM_RST so initialisiert dass LMN_LLM
am LMN entsteht. Insofern kann man vor dem Reset auch den LMN_LLM auf einen gewünschten Startwert bringen und diesen dann wieder runternehmen.

Das mit dem MAN ist natürlich auch möglich, nur eben ist das eher ein Tracken als ein Ausschalten.
War schon gemeint dass auch COM_RST auf High sein soll.
COM_RST=High MAN_ON=High-> COM_RST=Low->Zyklus durchlaufen lassen -> MAN_ON=Low...

...oder eben über den I_ITLVAL.

So viele Möglichkeiten, da sollte für jeden was dabei sein... :rolleyes:
 
Zuletzt bearbeitet:
Zurück
Oben