Schrittweise Inbetriebnahme des Reglers

Folgende Schritte müssen durchgeführt werden:

1. Die Regler-Bibliothek über den Bibliotheksmanager in das Projekt einfügen.
2. Mindestens eine Instanz des Reglers programmieren.
3. Äußere Beschaltung anlegen.

Name

 

Beschreibung

eCtrlMode

Beschaltung notwendig

Schaltet den Regler in eine Betriebsart (aktiv, passiv, Tuning).

bSelSetpoint

Beschaltung optional

Wählt einen von zwei möglichen Sollwerten aus. Mit FALSE wird der normale Sollwert gewählt, mit TRUE der Standby-Sollwert.

fW1

Beschaltung notwendig

Sollwert

fW2

Beschaltung optional

Standby-Sollwert ist im Regelfall kleiner als fW1. Mit fSelSetpoint kann zwischen fW1 und fW2 umgeschaltet werden.

fX

Beschaltung notwendig

Istwert, dieser wird als LREAL-Zahl erwartet. Eventuell muss der Istwert vorher außerhalb des Bausteins in LREAL konvertiert werden.

fYManual

Beschaltung optional

Stellgröße im Handbetrieb

bOpenThermocouple

Beschaltung optional

Mit TRUE ist das Thermoelement offen. Muss von der Hardware gemeldet werden (z.B. KL3xxx oder EL3xxx).

bReverseThermocouple

Beschaltung optional

Mit TRUE wird falsche Polarität des angeschlossenen Thermoelements gemeldet. Muss von der Hardware gemeldet werden.

bBackVoltage

Beschaltung optional

Bei TRUE wird eine zu hohe Eingangsspannung am Thermoelement angezeigt. Muss von der Hardware gemeldet werden.

bLeakage

Beschaltung optional

Mit TRUE wird ein Leckstrom zu Heizelement detektiert. Muss von der Hardware gemeldet werden.

bShortCircuit

Beschaltung optional

Mit TRUE wird ein Kurzschluss im Heizelement detektiert. Muss von der Hardware gemeldet werden.

bOpenCircuit

Beschaltung optional

Mit TRUE wird ein offener Stromkreis im Heizelement detektiert. Muss von der Hardware gemeldet werden.

sControllerParameter

Beschaltung notwendig

In dieser Struktur werden generelle Parameter (Abtastzeiten usw.) an den Baustein übergeben.

sParaControllerExternal

Beschaltung optional

In dieser Struktur wird ein externer Regler-Parametersatz an den Baustein übergeben.

4. Die notwendige Parametrierung des Reglers über die Struktur durchführen.

(* parameters *)
sControllerParameter : ST_CTRL_TempCtrlParameter :=
(
(* base *)
tCtrlCycleTime := t#1000ms,
tTaskCycleTime := t#10ms,

fYMin := -100,
fYMax := 100,
tPWMCycleTime := t#100ms ,
fYManual := 20,
bFilter := FALSE,
tFilter := t#100ms,
bDeadband := FALSE,
fEDeadband := 1.0, (* deadband *)
fWMin := 15,
fWMax := 60,
fWStartUp := 20.0,
tStartUp := t#160s,
fWVeloPos := 0.01,
fWVeloNeg := 0.01,
bStartUpRamping := FALSE,
fWStartUpVeloPos := 0.1,
fWStartUpVeloNeg := 0.1,
iMode := eCTRL_ControlMode_HEATING,
dwAlarmSupp := 16#FF_FF_FF_FF,
bSelCtrlParameterSet:= FALSE,

(* tuninig *)
iTuningMode := eCTRL_TuneMode_heating,
fYTuneHeating := 100.0,
fYTuneCooling := -100.0,
fEndTunePercentHeating := 80.0, (* switch to closed loop control when X > 0.8*W *)
fEndTunePercentCooling := -70.0, (* switch to closed loop control when X < 0.2*W *)

iReactionOnFailure := eCTRL_ReactionOnFailure_StopController,
TempLow := -50.0,
TempLowLow := -100.0,
TempHigh := 100.0,
TempHighHigh := 155.0,
TempAbsoluteHigh := 150.0,
TempAbsoluteLow := -95.0,
bEnablePreController := FALSE,
bEnableZones := FALSE,
bEnableCVFilter := FALSE,
iFilterType := eCTRL_FilterType_AVERAGE,
iControllerType := eCTRL_ControllerType_PID
);

Die Zuweisung im Code kann in ST folgendermaßen aussehen:

sControllerParameter.tPWMCycleTime := t#100ms;  
5. Die Reglerabtastzeit, die Taskzykluszeit und die PWM-Zykluszeit festlegen.
6. TwinCAT Scope parametrieren.
7. Alarme während der Inbetriebnahmephase abschalten.

Information: Nach der Erstinbetriebnahme alle notwendigen Alarme wieder einschalten.

8. Den Regler mit Tuning starten.
Schrittweise Inbetriebnahme des Reglers 1:

Setzen des Control Modes

Nachdem das Tuning erfolgreich durchgeführt wurde, wird der eCtrlState auf eCTRL_STATE_TUNED gesetzt. Der Regler geht in Wartestellung. Nur durch Setzen des Control-Modes auf eCTRL_MODE_ACTIVE wird der Closed-Loop-Betrieb mit den geschätzten Parametern aktiviert

9. Den internen Reglerparameter mit externer Beschaltung verknüpfen.

Die durch das Tuning ermittelten Parameter des Reglers können wieder als externe Parameter auf den Regler aufgeschaltet werden. Das kann notwendig sein, wenn das Tuning nur ein einziges Mal (z.B. nur in der Inbetriebnahmephase) durchgeführt werden soll.

10. Finetuning manuell durchführen.

Die beim Tuning ermittelten Reglerparameter sind auf schnelles Einschwingen mit etwa 10% Überschwingen ausgelegt. Ist kein oder nur sehr geringes Überschwingen erlaubt, so kann mit den folgenden Parametern aus der ST_ControllerParameter-Struktur ein Finetuning durchgeführt werden. Diese Werte sind Anhaltswerte.

Verhalten

fTuneKp

fTuneTn

fTuneTv

fTuneTd

Schnelles Einschwingen mit einem Überschwingen von 10%-20%

1.2

2.0

0.42

0.25

Langsameres Einschwingen mit geringerem Überschwingen

1.0

2.5

0.42

0.25

Nahezu asymptotische Einschwingen mit sehr geringen Überschwingen

0.5

3.0

1.0

0.25

Voraussetzungen

Entwicklungsumgebung

Zielplattform

Einzubindende SPS-Bibliotheken

TwinCAT 3.1.4016

PC oder CX

Tc2_TempController