SPS- Programmierung mit ST

nach IEC 61131 mit CODESYS V2.3, CODESYS V3, e!COCKPIT

Vorlagen Kapitel 12  Fuzzy-Control-Füllstandsregelung

  Kopieren Sie den Programmcode und fügen Sie diesen in Ihre Entwicklungsumgebung ein.
      


Aufgabe 12.1 Funktionen zur Fuzzifizierung

FUNCTION FUZ_Rfall:REAL
(*Zugehörigkeitsgrad*)
VAR_INPUT
(*Eingang und Stützpunkte*)
 IN, S1, S2:REAL;
END_VAR
IF IN < S1 THEN
  FUZ_Rfall:= 1.0;
 ELSIF IN > S2 THEN
  FUZ_Rfall:= 0.0;
 ELSE
  FUZ_Rfall:=1.0/(S1-S2)*IN-S2/(S1-S2);
END_IF;
  

Aufgabe 12.3 Füllstandsregelung, Fuzzy-Regler

Sie können auch die InfoClick-Vorlage mit einer Visualisierung benutzen.

FUNCTION_BLOCK BEHAELTER_IT1
(*********************************************************
Simulation eines niedrigen Behälters - IT1-Verhalten.
Der Füllstand steigt bei einem Sollwertsprung verzögert an.
**********************************************************)
VAR_INPUT
 rZUFLUSS,rABFLUSS:REAL;(*0 ... 1.0*)
END_VAR
VAR_OUTPUT
 rHOEHE:REAL;(*0 ... 1.0*)
END_VAR
VAR
 r_m:REAL;(*Steigung*)
END_VAR
IF rHOEHE <= 0.0 THEN (*Begenzung*)
  rHOEHE:= 0.0;
  rABFLUSS:= 0.0;
END_IF;
r_m:= r_m + ((rZUFLUSS - rABFLUSS) - r_m)*3.0* 0.01;(*Verzögerter Anstieg*)
rHOEHE:=rHOEHE + r_m * 0.01;
IF rHOEHE > 1.0 THEN (*Begenzung*)
  rHOEHE:= 1.0;
END_IF;
  


© Vogel Buchverlag