easy-forum
Deutsch - Applikationen => Allgemein => Thema gestartet von: Skandal am Mai 26, 2022, 21:31:28 Nachmittag
-
Hallo Freunde,
ich habe eine EasyE4 mit Temp. Erweiterung.
Hiermit möchte ich einen umgebauten Pizzaofen steuern.
Dieser hat 2 PT100 Sensoren (oben/unten) und 2 Heizstäbe (oben/unten).
Ansteuerungstechnisch habe ich jetzt soweit alles fertig (das ist jetzt mein erstes Projekt mit dem easye4), also ich kann die Temperaturen auslesen und die Ausgänge schalten.
Nun geht es mir darum den PID Block entsprechend zu parametrieren.
Nach diversen Tutorials stellt man zuerst nur P ein, dann I dann D. Also habe ich EI und ED ausgeschalten und nur mit EP gearbeitet.
Der P Anteil (also KP im Funktionsblock?) habe ich mir entsprechend eingestellt (ich habe mal als Soll 100°C eingestellt und den KP so eingestellt dass er kaum über 100°C heizt).
Wie geht es jetzt weiter?
Es gibt ja sonst nur die TN und TV (Nachstellzeit und Vorhaltezeit in s) aber das sind ja nicht die Werte für I und für D oder?
Da mein Ausgang auch Digital ist habe ich mir noch einfach über eine IF Funktion den Analogen Ausgang QV auf Digital umgebaut (wenn >0 dann heizen sonst nicht heizen). Denkt ihr da kann ich noch was besser machen?
MD2:=6;
DC01 (
EN := TRUE,
EP := TRUE,
EI := TRUE,
ED := FALSE,
SE := FALSE,
I1 := 100,
I2 := IA05,
KP := MD2,
TN := 1,
TV := 1,
TC := 1,
MV := ,
LI => ,
QV => MD1,
QP => ,
QI => ,
QD =>
);
IF MD1>1 THEN
Q01:=TRUE;
ELSE
Q01:=FALSE;
END_IF;
MD3:=6;
DC02 (
EN := TRUE,
EP := TRUE,
EI := TRUE,
ED := FALSE,
SE := FALSE,
I1 := 100,
I2 := IA06,
KP := MD3,
TN := 1,
TV := 1,
TC := 1,
MV := ,
LI => ,
QV => MD4,
QP => ,
QI => ,
QD =>
);
IF MD4>1 THEN
Q02:=TRUE;
ELSE
Q02:=FALSE;
END_IF;
Wie mache ich jetzt weiter? :'(
-
Hallo :)
Code Kopieren Siehe Bild
-
Da mein Ausgang auch Digital ist habe ich mir noch einfach über eine IF Funktion den Analogen Ausgang QV auf Digital umgebaut
Macht da ein PID überhaupt Sinn?
Ich dachte mehr an einen analogen Ausgang bei PID.
-
Hallo!
Einfach ausgedrückt: ein PID Regler regelt den Istwert (PT100 Fühler) auf den voreingestellten Sollwert in deinem Fall z.b. 100°C mit einem Stellwert, der analog sich verändert. Die Reaktion auf eine Istwertänderung, wie stark der Stellwert sich ändern soll, in welchen Zeitrahmen, etc. macht ein PID Regler. Da du, wie ich aus deiner Beschreibung rauslese, nur 2 digitale Ausgänge hast (Heizstab oben/oben) gibt es keinen sich verändernden Stellwert.
Für dich ist der Dreipunkregler die erste Wahl (=TC). Dieser entscheidet ob bei einer Abweichung vom Sollwert ein Ausgang für z.b. AUF (=Q1) = Heizen bzw. AB (=Q2) Kühlen, was bei dir entfällt, geschaltet wird. Du kannst mit -xh bzw +xh entscheiden ab welcher Abweichung der Dreipunkregler einschaltet (Q1 oder Q2) und mit welcher Hysterese (H1 oder H2) er wieder abschaltet. Die Hysterese verhindert ein "flattern" von Q1 bzw. Q2. Deine Leistungschütze werden es Dir danken.
Du kannst es aber auch mit 2 Vergleichern lösen(=CP) und einer Addition der Hysterese zum Sollwert.
Einschalten: Istwert < Sollwert
Ausschalten: Istwert > Sollwert + Hysterese
oder anderstrum mit einer Subtraktion der Hysterse vom Sollwert:
Einschalten: Istwert < Sollwert - Hysterse
Ausshalten: Istwert > Sollwert.
Die Hysterese (z.b. 5°C) und den Sollwert kannst du ja über das Display der E4 eingeben...
Das geht in FUP recht einfach, in ST ist es natürlich auch machbar.
Gruß,
ELWMS
-
Hallo,
irgendwie siet ihr auf dem Holzweg.
Entweder man entscheidet sich für einen Zweipunktregler mit Entsprechender Schalthysterese , oder wenn schon PID, dann benutzt man ein Pwm-Signal auf den Digitalausgang (nicht Relais!) und steuert damit ein SolidStateRelais an um die Heizstäbe stufenlos zu regeln. Wobei PID-Regler für einen Pizzaofen imho mit Kanonen auf Spatzen schießen ist.
Der Zweipunktregler geht ganz einfach und braucht eigentlich keine einstellungen.
IF [Istwert] > [Sollwert ] THEN
Q1:= false;
ELSIF [Istwert] < [Sollwert - Hysterese] THEN
Q1:= true;
END_IF
Gruß Thomas
-
Da mein Ausgang auch Digital ist habe ich mir noch einfach über eine IF Funktion den Analogen Ausgang QV auf Digital umgebaut
Macht da ein PID überhaupt Sinn?
Ich dachte mehr an einen analogen Ausgang bei PID.
Ja ich wusste nicht dass der PID einen analogen Ausgang gibt. Wie könnte ich den meine Leistung analog steuern? (wäre ja sowas wie ein Poti welchen ich mit 0-5v ansteuern könnte? )
-
Hallo Skandal,
ich habe dir mal ein Beispiel E4-DC-12TC mit PI-Regler und PWM Ausgang erstellt.
Als Lastrelais kann man zB
https://www.conrad.de/de/p/panasonic-halbleiterrelais-aqa211vl-15-a-schaltspannung-max-250-v-ac-nullspannungsschaltend-1-st-505395.html (https://www.conrad.de/de/p/panasonic-halbleiterrelais-aqa211vl-15-a-schaltspannung-max-250-v-ac-nullspannungsschaltend-1-st-505395.html) nehmen.
Es ist erstmal nur ein Regler drin, der das Prinziep darstellt. Auch weis ich nicht was du noch drumherum programmiert hast.
-
Ah super vielen Dank.
Ja ich hab die Heizstäbe jetzt schon über ein Schütz laufen (Finder 22.32.0.230.4340 ) denke ich werde erstmal das PWM über die ausprobieren, wenn es die irgendwann sprengt gibts halt neue (halbleiterrelais o.ä.) : )
Was ist denn bei deinem PWM Block die Funktion von EN:= Sollwert AND Istwert?
-
Hallo Skandal,
ich rate dir dringend dazu, einen Zweipunktregler zu verwenden und PID zu vergessen!
Eine Kombination von PWM und mech Schützen geht nicht gut.
Ein Zweipunktregler wird in Backöfen, Bügeleisen, Heizlüftern usw millionenfach verwendet und ist für deine Anwendung ideal.
(https://www.ingenieurkurse.de/assets/courses/media/diagramm-eines-zweipunktreglers-mit-hysterese-print.jpg)
Was ist denn bei deinem PWM Block die Funktion von EN:= Sollwert AND Istwert?
PW01 (
EN := I1 and I2,
SV := DC01QV,
PD := 2000,
ME := 50,
E1 => );
I1 = Ofen EIN
I2 = STB OK (Sicherheitstemperaturbegrenzer)
Ist einer der beiden Eingänge FALSE, wird die Heizung nicht angesteuert.
Gruß Thomas