Skip to main content

Persistence Manager

Der Persistence Manager ist eine Standardkomponente des Application Composers. Er dient zur Verwaltung persistenter remanenter Daten. Er erkennt solche an bestimmten Attributen in der Variablendeklaration. Damit bietet er eine Alternative zur Verwendung des VAR PERSISTENT-Mechanismus des Standard-Programmiersystems, bei dem persistente Variablen in einer speziellen globalen Variablenliste (Persistente Variablen ) verwaltet werden. Dieser Mechanismus ist auf zeitliche Performanz und Ablage in einem remanenten Speicherbereich ausgelegt. Dagegen speichert der Persistence Manager persistente Werte in einer externen Datei und stellt somit weniger Anforderung an die Speicherausstattung einer Steuerung. Er ermöglicht ein Erhalten der Werte, auch wenn Deklarationen geändert werden, und er erlaubt externes Bearbeiten der Datensätze. Die erweiterte Funktionalität geht allerdings auf Kosten der Performanz. In Abhängigkeit von der Steuerung kann das Lesen und insbesondere das Schreiben einer großen Menge persistenter Variablen viel Zeit in Anspruch nehmen und die entsprechende Task lange blockieren.

Somit hängt es vom Anwendungsfall ab, mit welchem Mechanismus die Datenpersistenz eingerichtet werden sollte. Für gewisse Fälle ist auch die Verwendung von Rezepturen die beste Lösung. Sehen Sie hierzu als Entscheidungshilfe: Persistenz

Der Persistence Manager ist ein Toplevelmodul und kann mit dem Befehl Toplevelinstanz hinzufügen zum Modulbaum hinzugefügt werden.

Unterhalb des Persistence Managers können bis zu 64 Kanäle definiert werden. In den Kanälen können Persistenzgruppen definiert und ihr Speicherverhalten über Parameter festgelegt werden. Jeder Kanal muss ein Submodul Data Storage definieren. Hier definiert man das Format, in dem die persistenten Daten in einer Datei gespeichert werden. Diese Archivdatei wird extern abgelegt, standardmäßig im Installationsverzeichnis der Steuerung.

Für Laufzeitsystemversionen >= 3.5.8.0 ist der Ablageort für Archivdateien über den Platzhalter $ac_persistence$ definiert. Bereits bestehende Archive werden an diesen Ort verschoben, wenn sie in dem über Platzhalter $PLCLogic$ definierten Verzeichnis gefunden werden. Dieses Verzeichnis war der Standardablageort in früheren Laufzeitsystemversionen. Für Archive, die an beiden Orten liegen, wird eine Warnung in das Log des Laufzeitsystems ausgegeben.

Tipp

Es kann nur 1 Persistence Manager pro Applikation zum Modulbaum hinzugefügt werden. Wenn der Persistence Manager zum POUs-Pool hinzugefügt oder mehr als 1 Persistence Manager zur Applikation hinzugefügt wird, wird eine Fehlermeldung ausgeben.

Abbildung 25. Persistence Manager im Modulbaum
Persistence Manager im Modulbaum


Falls der Modulbaum oder Parameter von Modulinstanzen geändert wurden, muss ein neuer Generierungslauf ausgeführt werden. (BefehlErzeugen)

Tipp

. Unterschiede zum Mechanismus „VAR PERSISTENT“
  • Die persistenten Daten werden in einer externen Datei gespeichert.

  • Die persistenten Daten können zwischen Projekten ausgetauscht werden.

  • Persistente Variablen können aus der Applikation gelöscht, oder neue hinzugefügt werden, ohne dass die persistenten Werte verloren gehen.

  • Daten, welche durch den Persistence Manager erzeugt wurden, können mit externen Editoren verändert werden. (beispielsweise mit Notepad).

Siehe auch: Persistenz