SAVE_NAMED_MEMORY_RETAIN-Baustein

Kurz-Information

Name

SAVE_NAMED_MEMORY_RETAIN

→POE-Typ

→Funktion

Kategorie

IEC-Baustein, MemoryEnh, Baustein mit interner Fehlerdiagnose

Konform zur →IEC-Norm

images/s/b2ic8e/9012/1ca6q62/_/images/icons/emoticons/add.svg nicht in IEC-Norm vorgesehen

Grafische Schnittstelle

images/download/thumbnails/429719697/SAVE_NAMED_MEMORY_RETAIN-version-1-modificationdate-1561969608151-api-v2.png

Verfügbar ab

Version 3.2.2 (für Bibliothek Standard)

images/s/b2ic8e/9012/1ca6q62/_/images/icons/emoticons/warning.svg Dieser Baustein wird nur für die integrierte SPS und die Plattformen WindowsX86 und LinuxX86 unterstützt.

Funktionalität

Der Baustein speichert einen →gepufferten Speicherbereich in den permanenten Speicher. Den Namen des Speicherbereichs geben Sie am Eingang NAME ein .

Standardmäßig wird die entsprechende Datei im Unterverzeichnis PLC des logi.RTS-Installationsverzeichnisses abgelegt. Falls Sie die Ablage in einem anderem Verzeichnis bevorzugen, kontaktieren Sie Ihren Systemintegrator und bitten Sie darum, die Konfiguration des Systemdiensts zu ändern.

Eingänge, Ergebniswert


Bezeichner

→Datentyp

Beschreibung

Eingänge:

NAME

STRING

Name des Speicherbereichs

Ergebniswert:

USINT

liefert das Ergebnis des Speicherns

  • 16#00: erfolgreiches Speichern

  • 16#04: genannter Speicherbereich nicht gefunden

  • 16#05: Eingang/Ausgang-Fehler

  • 16#FF: Der Dienst ist nicht verfügbar.

Der Eingang EN und der Ausgang ENO sind für den →Aufruf des Bausteins verfügbar. Siehe "Ausführungssteuerung: EN, ENO" für Informationen zum Eingang EN und zum Ausgang ENO.

Interne Fehlerdiagnose für Baustein

Der Baustein prüft die folgenden Fehlerfälle:

  • Es ist kein weiterer Speicher auf dem Zielsystem mehr verfügbar.

  • Der Datentyp der Variable, auf die zugewiesen wird, stimmt nicht mit dem Datentyp des Speicherbereichs überein.

  • Der RTSSMem-Systemdienst wurde nicht geladen.

In einem solchen Fehlerfall wird der Ausgang ENO des Bausteins auf den Wert FALSE (oder eine Entsprechung) zurückgesetzt.

Beispiel für Verwendung im ST-Editor

Die Werte für den gepufferten Speicherbereich werden mit Hilfe des RTSCycleInfo-Bausteins im Initialisierungszustand (= Init-Zustand) geladen und im Term-Zustand gespeichert.
images/s/b2ic8e/9012/1ca6q62/_/images/icons/emoticons/information.svg Lesen Sie am besten unter RTSCycleInfo-Baustein nach, zu welchem Zeitpunkt der Initialisierungs- bzw. der Term-Zustand ausgeführt wird.

TYPE
ConfigStruct : STRUCT
MaximumMotorSpeed : REAL := 3.5;
MaximumMotorAcceleration : REAL := 0.75;
Initialized : BOOL;
END_STRUCT;
END_TYPE
 
PROGRAM ExampleNamedMemoryRetain
VAR
init : BOOL;
term : BOOL;
config : REF_TO ConfigStruct;
END_VAR
RTSCycleInfo(
Init=>init,
Term=>term
);
IF init THEN
config := GET_NAMED_MEMORY_RETAIN(NAME:='Config');
IF config <> NULL AND NOT config^.Initialized THEN
config^.MaximumMotorSpeed := 3.5;
config^.MaximumMotorAcceleration := 0.75;
config^.Initialized := TRUE;
END_IF;
END_IF;
IF term THEN
// The following line only saves the block named 'Config'.
// As an alternative, the PLC program could also call SAVE_ALL_NAMED_MEMORY_RETAIN()
SAVE_NAMED_MEMORY_RETAIN(NAME:='Config');
END_IF;
END_PROGRAM

Bei der Erstellung Ihrer Anwendung im ST-Editor erstellen Sie den Aufruf eines Bausteins, indem Sie den laut Syntax erforderlichen Text eintippen oder die Inhaltshilfe verwenden.