-> Hier kostenlos registrieren
Hallo,
ich habe folgenden Code, abgeschrieben zur Übung aus einem Buch:
unter Eigenschaften des Bausteins sagt mir TIA nun, das ich auf eine globale Variable zugreife. Meiner Meinung nach tue ich das aber nicht, ausser man zählt normale Zahlen dazu.
Könnt ihr mal bitte durchsehen und sagen welches Variablen TIA da meint?
Vielen Dank!
ich habe folgenden Code, abgeschrieben zur Übung aus einem Buch:
Code:
(*Trenderkennung*)
#i_Differenz := ABS(IN := #i_Messwert - #i_MWAlt); (* Vergleich Vergangenheit zu Gegenwart *)
#x_Hysterese := #i_Differenz > #i_Hysterese; (* Differenz größer als Hysterese? *)
IF #x_Hysterese THEN (* Ist die Diefferenz steigend oder fallend? *)
IF #i_Messwert > #i_MWAlt THEN
#x_MWSteigend := TRUE;
#x_MWFallend := FALSE;
ELSE
#x_MWFallend := TRUE;
#x_MWSteigend := FALSE;
END_IF;
#i_MWAlt := #i_Messwert; (* Nachführung der vergangenheit *)
END_IF;
IF #x_Reset THEN (* Löschen des Archivs *)
#usi_Schreibpointer := 5; (* Festlegen wo das Archiv beginnt *)
FOR #si_PointerLoesch := 5 TO #si_Arraygroesse BY 1 DO (* Löeschvorgang mit FOR *)
#Messwerte[#si_PointerLoesch] := 0;
END_FOR;
END_IF;
(* Schreiben bei Trendwechsel in das Archiv *)
IF (NOT #x_MWFallend AND #x_HMTRFall) OR (NOT #x_MWSteigend AND #x_HMTRSteig)
AND NOT #x_Speichervoll THEN
#Messwerte[#usi_Schreibpointer] := #i_Messwert;
#usi_Schreibpointer := #usi_Schreibpointer + 1;
END_IF;
(* Nachführung der Flankenmerker *)
#x_HMTRFall := #x_MWFallend;
#x_HMTRSteig := #x_MWSteigend;
(* Setzen Bit Meldearchiv ist voll*)
#x_Speichervoll := (#usi_Schreibpointer > 24);
(* Bestimmung des MinWertes:
Hier muss noch anwendungsbezogen eine Verzögerung eingestellt werden,
damit nicht beim Start der Wert "0" eingetragen wird - realisiert durch FirstScan??? *)
IF NOT #x_FirstScan THEN
#i_MinWertAk := 30000;
ELSIF
(#i_Messwert < #i_MinWertAk) AND #x_MWFallend THEN
#i_MinWertAk := #i_Messwert;
END_IF;
(* Bestimmung des Max-Wertes *)
IF #i_Messwert > #i_MaxWertAk THEN
#i_MaxWertAk := #i_Messwert;
END_IF;
(* Statistik - Übertragung *)
#Messwerte[0] := #i_Messwert;
#Messwerte[1] := #i_Hysterese;
#Messwerte[2] := #i_MinWertAk;
#Messwerte[3] := #i_MaxWertAk;
#Messwerte[4] := #i_AnzMess;
(* Ausgabe Min / Max - Werte *)
#i_MinWert := #i_MinWertAk;
#i_MaxWert := #i_MaxWertAk;
unter Eigenschaften des Bausteins sagt mir TIA nun, das ich auf eine globale Variable zugreife. Meiner Meinung nach tue ich das aber nicht, ausser man zählt normale Zahlen dazu.
Könnt ihr mal bitte durchsehen und sagen welches Variablen TIA da meint?
Vielen Dank!