Remanente daten, Beispiel für remanente daten im funktionsblock – BECKHOFF BC3150 Benutzerhandbuch

Seite 59

Advertising
background image

Sicherheitshinweise

Feldbuskomponenten

57

Remanente Daten

Es stehen auf dem Busklemmen-Controller 2 kByte an remanenten Daten zur Verfügung. Diese Daten werden im
PLC Control als VAR RETAIN deklariert:
Beispiel:

VAR RETAIN
Test :BOOL;
Count :INT;
END_VAR

Zwischen VAR RETAIN und END_VAR stehen die Retain Daten. Diese Daten werden in einem NOVRAM
gespeichert und sind über den ganzen 2 kByte großen Bereich konsistent. Die RETAIN Daten werden nach jedem
Zyklus ins NOVRAM gespeichert. Für 2 kByte werden ca. 2 ms benötigt (für 1 kByte ca. 1 ms). Die Variablen können
lokal oder global Konfiguriert sein. Variablen die lokiert sind (%MB, %QB, %IB) können nicht als Remanete Daten
genutzt werden.

Hinweis

VAR_RETAIN sollte nicht in Funktionsbausteinen benutzt werden. Sämtliche Daten in
einem FB werden in den Retain Speicher kopiert, damit erhöht sich unnötig die Zykluszeit
und der Retain Speicher wird mit unnötigen Datenmengen gefüllt.

Hinweis

Variablen die auf einer Adresse liegen (%MB, %QB, %IB) dürfen nicht als remanente
Daten verwendet werden.

Beispiel für remanente Daten im Funktionsblock

Da immer alle Daten eines Funktionsblocks, in dem auch nur ein remanentes Bit zu finden ist, gespeichert wird, sollte
dies möglichst vermieden werden. Im Anschluss finden Sie ein Programmbeispiel.

Funktionsblock Test (Kein Programm Code notwendig - in ST reicht ein Semikolon)

FUNCTION_BLOCK Test

VAR_INPUT
END_VAR
VAR_OUTPUT
END_VAR
VAR
END_VAR
VAR_IN_OUT
Counter :INT;
END_VAR

Programm MAIN

PROGRAM MAIN

VAR
fb_Test:Test;
END_VAR
VAR RETAIN
iCounter1:INT;
END_VAR

fb_Test(Counter:=iCounter1);

Advertising