Der Rezepturverwalter verwaltet 1 oder mehrere Rezepturdefinitionen. Eine Rezepturdefinition besteht aus einer Liste von Variablen und 1 oder mehreren Rezepturen (Wertesätzen) für diese Variablen. Sie können die Rezeptur in einer Datei speichern oder die Rezepturdateien auf die Steuerung schreiben. Durch Verwendung unterschiedlicher Rezepturen können Sie einem Satz von Variablen auf der Steuerung in einem Schritt einen weiteren Wertesatz zuweisen. Die Anzahl der Rezepturdefinitionen, Rezepturen und Variablen pro Rezeptur ist unbegrenzt.
Sie können einem Rezepturverwalter-Knoten in der Tools-Baumstruktur 1 oder mehrere Rezepturdefinition-Objekte hinzufügen. Klicken Sie hierzu auf die grüne Plus-Schaltfläche des Rezepturverwalter-Knotens, und führen Sie den Befehl Rezepturdefinition aus.
Doppelklicken Sie auf den Knoten, um Rezepturdefinitionen einschließlich der einzelnen Rezepturen in einer separaten Editoransicht anzuzeigen und zu bearbeiten.
Editoransicht der Rezepturdefinition
1 Name der Rezepturdefinition
2 Rezepturnamen
Als Titel des Editorfensters dient der Name der Rezepturdefinition.
Parameter |
Beschreibung |
---|---|
Variable |
Sie können in der Tabelle verschiedene Projektvariablen eingeben, für diese 1 oder mehrere Rezepte definieren möchten. Hierzu können Sie den Befehl Variable einfügen verwenden, wenn sich der Cursor in einem beliebigen Feld einer beliebigen Zeile befindet. Alternativ können Sie auf ein Feld mit einer Variablen doppelklicken, oder Sie können sie auswählen und die Leertaste drücke, um den Editormodus aufzurufen. Geben Sie einen gültigen Projektvariablennamen ein, z. B. plc_prg.ivar. Sie können auf die Schaltfläche ... klicken, um die Eingabehilfe zu öffnen. Sie könne auch eine POU spezifizieren, beispielsweise ein Programm wie PLC_PRG in der oberen Abbildung gezeigt. In diesem Fall werden der Rezepturdefinition alle in der POU definierten Variablen automatisch hinzugefügt, wenn Sie das Eingabefeld schließen. Das gleiche gilt für Datentypen oder Funktionsbausteine. Sie können zwischen der normalen und der strukturierten Ansicht hin- und herschalten, indem Sie die Schaltflächen auf der rechten Seite verwenden. Nachdem Sie die Deklaration der strukturierten Datentypen oder POUs geändert haben, kann die Rezepturdefinition mit den betreffenden Variablen automatisch verkleinert oder erweitert werden. Für weitere Informationen, siehe den Befehl Strukturierte Variablen aktualisieren. |
Typ |
Das Feld Typ wird automatisch ausgefüllt. Optional kann ein symbolischer Name definiert werden. |
Name |
In diesem Feld kann ein symbolischer Name definiert werden. |
Kommentar |
Geben Sie zusätzliche Informationen ein, z. B. die Einheit des in der Variablen erfassten Werts. |
Minimalwert und Maximalwert |
Diese Werte können optional angegeben werden; sie müssen für diese Variable zulässig sein. |
Aktueller Wert |
Dieser Wert wird im Online-Modus überwacht. |
Änderungen automatisch in Rezepturdateien speichern |
Es hat sich als vorteilhaft erwiesen, diese Option auf der Registerkarte Allgemein des Rezepturverwalter-Editors zu aktivieren, da sie das normale Verhalten der Rezepturverwaltung beeinflusst: Die Speicherdateien werden bei jeder Änderung einer Rezeptur zur Laufzeit unmittelbar entsprechend aktualisiert. Denken Sie daran, dass die Option nur so lange wirksam sein kann, wie der Rezepturverwalter auf der Steuerung verfügbar ist. |
Sie können eine Variable (Zeile) aus der Tabelle entfernen, indem Sie eine Zelle der Zeile auswählen und die Entf-Taste drücken. Zum Auswählen mehrerer Zeilen halten Sie die Strg-Taste gedrückt, während Sie auf die Zellen klicken. Die ausgewählten Zeilen können mit Kopieren-und-Einfügen kopiert werden. Mit dem Einfügen-Befehl werden die kopierten Zeilen oberhalb der ausgewählten Zeile eingefügt. Dabei werden Rezepturwerte, falls verfügbar, in die entsprechende Rezepturspalte eingefügt.
Um der Rezepturdefinition eine Rezeptur hinzuzufügen, führen Sie den Befehl Rezeptur einfügen aus, wenn die Editoransicht aktiv ist. Für jede Rezeptur wird eine eigene Spalte mit dem Rezepturnamen als Titel erstellt (Beispiel: R1 und R2 in der vorstehenden Abbildung).
Im Online-Modus kann eine Rezeptur entweder durch ein entsprechend konfiguriertes Visualisierungselement (Eingangskonfiguration – Befehl „Ausführen“) oder mithilfe der entsprechenden Methoden des Funktionsbausteins RecipeManCommands aus der Bibliothek Recipe_Management.library geändert werden.
Im Kontextmenü einer Rezepturspalte in der Ansicht des Rezepturdefinitionseditors sind folgende Methoden verfügbar:
oReadRecipe: Die aktuellen Variablenwerte werden in die Rezeptur übernommen.
oWriteRecipe: Die Rezeptur wird in die Variablen geschrieben.
oSaveRecipe: Die Rezeptur wird in einer Standardrezepturdatei gespeichert.
oLoadRecipe: Die Rezeptur wird aus einer Standardrezepturdatei geladen.
oCreateRecipe: In der Rezepturdefinition wird eine neue Rezeptur erstellt.
oDeleteRecipe: Eine vorhandene Rezeptur wird aus einer Rezepturdefinition gelöscht.
In den folgenden Absätzen wird das Verhalten der Rezepturen in den verschiedenen Online-Status erläutert. Es hat sich als vorteilhaft erwiesen, die Option Änderungen automatisch in Rezepturdateien speichern zu aktivieren, um das normale Verhalten einer Rezepturverwaltung zu erhalten.
Rezepturen können offline oder online hinzugefügt und entfernt werden. Verwenden Sie im Offline-Modus die Befehle Rezeptur einfügen und Rezeptur entfernen im Rezepturverwalter-Editor. Im Online-Modus können Sie entweder eine Eingabe für ein entsprechend konfiguriertes Visualisierungselement konfigurieren oder die entsprechenden Methoden des Funktionsbausteins RecipeManCommands aus der Bibliothek Recipe_Management.library verwenden.
Wenn Sie eine Rezeptur hinzufügen, wird rechts neben der letzten Spalte eine weitere Spalte hinzugefügt. Deren Titel entspricht dem Namen der Rezeptur (siehe die Abbildung der Ansicht des Rezepturdefinitionseditors). Die Felder einer Rezepturspalte können mit entsprechenden Werten gefüllt werden. So können in den einzelnen Rezepturen unterschiedliche Wertesätze für den gleichen Satz Variablen vorbereitet werden.
Verwenden von Rezepturen im Online-Modus
Zum Handhaben (Erstellen, Lesen, Schreiben, Speichern, Laden, Löschen) der Rezepturen können die Methoden des Funktionsbausteins RecipeManCommands aus der Bibliothek Recipe_Management.libray, im Anwendungscode oder über Eingaben für Visualisierungselemente verwendet werden.
Verwaltung von Rezepturen im Online-Modus bei aktivierter Option Änderungen automatisch in Rezepturdateien speichern:
Aktionen |
Innerhalb des Projekts definierte Rezepturen |
Zur Laufzeit erstellte Rezepturen |
---|---|---|
Online Reset Warm Online Reset Cold Herunterladen |
Die Rezepturen aller Rezepturdefinitionen werden auf die Werte des geöffneten Projekts festgelegt. |
Dynamisch erstellte Rezepturen bleiben unverändert. |
Online Reset Origin |
Die Anwendung wird aus der Steuerung entfernt. Wenn anschließend ein neuer Download durchgeführt wird, werden die Rezepturen wie bei einem Online Reset Warm wiederhergestellt. |
|
Fahren Sie die Steuerung herunter und starten Sie sie neu |
Nach dem Neustart werden die Rezepturen erneut aus den automatisch erstellten Dateien geladen. Der Status vor dem Herunterfahren wird somit wiederhergestellt. |
|
Online Change |
Die Rezepturwerte bleiben unverändert. Zur Laufzeit kann eine Rezeptur nur mit den Befehlen des Funktionsbausteins RecipeManCommands geändert werden. |
|
Stopp |
Bei einem Stopp/Start der Steuerung bleiben die Rezepturen unverändert. |
HINWEIS: Floating-Punktwerte (Typ REAL/LREAL) werden in den textuellen Rezeptdateien sowohl im Dezimalformat als auch im Hexadezimalformat gespeichert. (Da der Hexidezimalwert den exakten Wert repräsentiert, während der REAL-Dezimalwert den Wert der siebten Dezimalstelle repräsentiert.)
Beispiel: PLC_PRG.realVar:=22.0F16#1600000H-5
Um einen Wert in einer Rezeptdatei manuell zu ändern, bearbeiten Sie den Dezimalwert und entfernen Sie dann den Hexidezimal-Eintrag. (Wenn beide Werte zur Verfügung stehen, wird automatisch der Hexidezimalwert geladen.)
Verwaltung von Rezepturen im Online-Modus bei NICHT aktivierter Option Änderungen automatisch in Rezepturdateien speichern:
Aktionen |
Innerhalb des Projekts definierte Rezepturen |
Zur Laufzeit erstellte Rezepturen |
---|---|---|
Online Reset Warm Online Reset Cold Herunterladen |
Die Rezepturen aller Rezepturdefinitionen werden auf die Werte des geöffneten Projekts festgelegt. Die Festlegung erfolgt jedoch nur im Speicher. Um die Rezeptur in einer Datei zu speichern, muss der Speichern-Befehl explizit ausgeführt werden. |
Dynamisch erstellte Rezepturen gehen verloren. |
Online Reset Origin |
Die Anwendung wird aus der Steuerung entfernt. Wenn anschließend ein neuer Download durchgeführt wird, werden die Rezepturen wiederhergestellt. |
Dynamisch erstellte Rezepturen gehen verloren. |
Fahren Sie die Steuerung herunter und starten Sie sie neu |
Nach dem Neustart werden die Rezepturen aus den Initialwerten, die beim Download aus den Werten des Projekts erstellt wurden, neu geladen. Der Status vor dem Herunterfahren wird somit nicht wiederhergestellt. |
|
Online Change |
Die Rezepturwerte bleiben unverändert. Zur Laufzeit kann eine Rezeptur nur mit den Befehlen des Funktionsbausteins RecipeManCommands geändert werden. |
|
Stopp |
Bei einem Stopp/Start der Steuerung bleiben die Rezepturen unverändert. |
Weitere Informationen:
oInformationen zum Speichern von Rezepturen in Dateien, die bei einem Neustart der Anwendung neu geladen werden, finden Sie in der Beschreibung der Registerkarte „Speicherung“ des Rezepturverwalter-Editors.
oBeschreibungen der einzelnen RecipeManCommands-Methoden finden Sie in der Dokumentation innerhalb der Bibliothek.
oDie entsprechende Eingabekonfiguration eines Visualisierungselements wird auf der zugehörigen Hilfeseite beschrieben (Kategorie Eingabe > Internes Kommando).
Die folgenden Aktionen werden für Rezepturen unterstützt:
Aktionen |
Beschreibung |
---|---|
Rezeptur erstellen (= Rezeptur einfügen) |
In der angegebenen Rezepturdefinition wird eine neue Rezeptur erstellt. |
Rezeptur lesen |
Die Werte der Variablen der angegebenen Rezepturdefinition werden aus der Steuerung ausgelesen und in die angegebene Rezeptur geschrieben. Das bedeutet, dass die Werte implizit gespeichert werden (in einer Datei in der Steuerung). Zudem werden sie direkt in der Rezepturdefinitionstabelle der Rezepturverwaltung überwacht. Das heißt, dass die im Rezepturverwalter verwaltete Rezeptur mit den tatsächlichen Werten aus der Steuerung aktualisiert wird. |
Rezeptur schreiben |
Die im Rezepturverwalter angezeigten Werte der angegebenen Rezeptur werden in die Variablen in der Steuerung geschrieben. |
Rezeptur speichern |
Die Werte der angegebenen Rezeptur werden in eine Datei mit der Erweiterung *.txtrecipe geschrieben. Den Dateinamen müssen Sie selbst festlegen. Zu diesem Zweck wird das Dialogfeld zum Speichern einer Datei im lokalen Dateisystem geöffnet. HINWEIS: Die implizit verwendeten Rezepturdateien, die als Puffer für das Lesen und Schreiben der Rezepturwerte erforderlich sind, dürfen nicht überschrieben werden. Der Name der neuen Rezepturdatei muss sich also von <Rezepturname>.<Name der Rezepturdefinition>.txtrecipe unterscheiden. |
Rezeptur laden |
Die in einer Datei gespeicherte Rezeptur (siehe Beschreibung der Aktion Rezeptur speichern) kann aus dieser Datei neu geladen werden. Zu diesem Zweck wird das Dialogfeld zum Suchen nach einer Datei geöffnet. Der Filter wird automatisch auf die Erweiterung *.txtrecipe eingestellt. Nach dem Neuladen der Datei werden die Rezepturwerte im Rezepturverwalter entsprechend aktualisiert. |
Rezeptur löschen (= Rezeptur entfernen) |
Die angegebene Rezeptur wird aus der Rezepturdefinition entfernt. |
Rezeptur ändern |
Der Wert der Projektvariablen kann geändert werden. Mit einer nachfolgenden Aktion „Rezeptur schreiben“ werden die entsprechenden Projektvariablen mit den neuen Werten geschrieben. |
Erstellen spezifischer Tasks für die Steuerungen der Baureihe Modicon M241 und M251
Erstellen Sie für Modicon M241- und M251-Steuerungen, die über einen Zugriff (Erstellen, Lesen, Schreiben, Löschen) auf die Rezepturdateien verfügen sollen, spezifische Tasks mit niedriger Priorität und mit deaktivierter Watchdog-Funktion. Andernfalls könnte sich dies auf die Zykluszeit der Anwendung auswirken.