Forum: Analoge Elektronik und Schaltungstechnik Master-Slave Regler in Twincat 3


von Muzaffer S. (mzo)


Angehängte Dateien:

Lesenswert?

Hallo Zusammen,

folgendes Szenario:
Im Anhang befindet sich eine „Zeichnung“. Hoffe das ist soweit 
verständlich.
Ich habe ein bestimmtes Modul, die über eine Heizpatrone auf eine 
bestimmte Solltemperatur erhitzt werden soll.

Zum Programm:
Ich habe einen Master-Regler der globale PID-Werte übergeben bekommt und 
eine Solltemperatur (240°C) die erreicht und gehalten werden muss.
Der Slave-Regler ist eigentlich nur für das Pulsen der Heizung zuständig 
hat eine eigene Temperaturbegrenzung (bei 550°C) und muss den Sollwert 
der Master-Slave erreichen und halten.

Zu meiner Frage:
Den Master-Regler habe ich schon programmiert. D.h. er bekommt seine 
PID-Anteile, die PID-Werte werden berechnet und zusammengeführt (inkl. 
Anti-Windup & Begrenzung der Regelausgangsgröße).
Einen Funktionsblock für die Pulsweitenmodulation zur Steuerung der 
Heizung habe ich auch (wurde getestet, funktioniert).

Doch ich weis nicht wie ich über den Slave-Regler die Temperatur des 
Master-Reglers auf die Solltemperatur regeln und halten soll und 
zugleich die Temperatur des Slave-Reglers überwachen soll (da max. 
zulässige Temp. hier: 500°C). Weil im Endeffekt ist der Slave-Regler 
kein Regler, sondern Temperaturüberwachung und Heizvorgang und hat auch 
keine PID Anteile. Bei Annäherung auf die Solltemperatur soll ja nur 
runtergeregelt werden von 500°C damit das Heizen nicht mehr so stark 
ist.

Ich hoffe Ihr könnt mir da weiterhelfen, vielen Dank schon mal im Voraus

Grüße
Muzaffer

: Verschoben durch User
von Pat (Gast)


Lesenswert?

Muzaffer S. schrieb:
> Weil im Endeffekt ist der Slave-Regler
> kein Regler, sondern Temperaturüberwachung

Dann mach den Slave doch zur Überwachung. Das muss doch kein Regler im 
eigentlichen Sinn sein. Wenn die Temperatur noch okay ist, dann mach was 
vom Master verlangt, sonst mach ne Pause zum abkühlen.
Das ist dann sowas wie ein einfacher Zweipunktregler.

von Muzaffer S. (mzo)


Lesenswert?

Pat schrieb:
> Dann mach den Slave doch zur Überwachung. Das muss doch kein Regler im
> eigentlichen Sinn sein. Wenn die Temperatur noch okay ist, dann mach was
> vom Master verlangt, sonst mach ne Pause zum abkühlen.
> Das ist dann sowas wie ein einfacher Zweipunktregler.

So habe ich mir das auch überlegt, aber ich denke die maximale 
Temperatur der Heizpatrone (500°) wird schnell erreicht und ich soll ja 
mit dem Slave die SSR takten bis die 240° erreicht werden. Wenn ich den 
Slave nur zur Überwachung verwende, takte ich die PWM im Endeffekt mit 
dem Master und Slave is doch dann überflüssig..

Das is dann eigentlich nur ne Abfrage mit:
1
IF actual_value_slave > 500 THEN
2
  heat := FALSE;
3
ELSIF actual_value slave > 550 THEN
4
  E_Stop := TRUE;
5
END_IF

ich weis nicht, ob das dann auch so funktioniert und richtig ist..


** 500 und 550 sind Grenztemperaturangaben der Slave

: Bearbeitet durch User
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.