Objekt Rezepturverwalter
Symbol:
Der Rezepturverwalter bietet Funktionen zur Verwaltung von benutzerdefinierten Variablenlisten, so genannten Rezepturdefinitionen. Die Rezepturdefinitionen können in „Rezepturdateien“ abgelegt werden.
Wenn Sie dem SPS-Projekt einen Rezepturverwalter hinzufügen, wird im Bibliotheksverwalter automatisch die Bibliothek RecipeManagement ergänzt.
Objekt Rezepturverwalter anlegen
- 1. Selektieren Sie im Projektmappen-Explorer das SPS-Projekt.
- 2. Wählen Sie im Kontextmenü den Befehl Hinzufügen > Rezepturverwalter...
- Der Dialog Rezepturverwalter hinzufügen öffnet sich.
- 3. Geben Sie einen Namen ein.
- 4. Klicken Sie auf Öffnen.
- Der Rezepturverwalter wird zum SPS-Projektbaum hinzugefügt und im Editor geöffnet. Dem Objekt Rezepturverwalter können Sie anschließend die Objekte Rezepturdefinition hinzufügen.
Struktur des Rezepturverwalters
Der Editor des Rezepturverwalters setzt sich aus den beiden Registerkarten Speicherung und Allgemein zusammen, in denen die Einstellungen für den Rezepturverwalter festgelegt werden.
Registerkarte Speicherung
Speicherungstyp | textuell: TwinCAT speichert die Rezeptur in einem lesbaren Format mit den konfigurierten Spalten und Trennzeichen. binär: TwinCAT speichert die Rezeptur in einem nicht lesbaren binären Format. Dieses Format benötigt weniger Speicherplatz. Sie können binär gespeicherte Rezepturen nur dann wieder einlesen, wenn Sie die Variablenlisten nicht verändert haben. |
Dateipfad | Relativer Pfad auf dem Laufzeitsystem. Dieser Pfad wird auf dem Zielsystem im Verzeichnis der Laufzeitdateien angelegt. TwinCAT legt beim Download auf die Steuerung für jede Rezeptur eine Datei in diesem Verzeichnis ab. Voraussetzung ist, dass die Option Rezepturverwaltung in der SPS aktiviert ist. Die Dateien werden bei jedem Neustart des SPS-Projekts in den Rezepturverwalter geladen. |
Dateierweiterung | Dateierweiterung für die Rezepturdatei. Daraus ergibt sich der Standardname für Rezepturdateien in der Form <Rezeptur>.<Rezepturdefinition>.<Dateierweiterung>. |
Trennzeichen | Trennzeichen zwischen den einzelnen Werten in der gespeicherten Datei. |
Verfügbare Spalten Ausgewählte Spalten | Festlegung, welche Informationen in welcher Reihenfolge in die Rezepturdatei gespeichert werden. |
Als Default speichern | TwinCAT verwendet die im Dialog vorliegenden Einstellungen ab sofort als Standardeinstellungen. |
Registerkarte Allgemein
Rezepturverwaltung in der SPS | : Muss aktiviert sein, wenn zur Laufzeit Rezepturen durch Visualisierungselemente oder durch das Anwenderprogramm geladen werden. Falls Rezepturen ausschließlich über die TwinCAT-Programmieroberfläche zur Steuerung übertragen werden, kann die Option deaktiviert werden. |
Rezeptur speichern
Rezepturänderungen automatisch in Rezepturdateien speichern | : Empfohlene Option, weil sie das „übliche“ Verhalten einer Rezepturverwaltung bewirkt. Der Rezepturverwalter speichert zur Laufzeit die Rezepturen bei einer Änderung automatisch in einer Datei, d. h. die Speicherdateien werden automatisch bei jeder Änderung einer Rezeptur zur Laufzeit aktualisiert. Die Option ist nur wirksam, wenn die Option Rezepturverwaltung in der SPS aktiviert ist. |
Rezeptur laden
Nur bei exakter Übereinstimmung der Variablenliste laden | Das Laden der Rezeptur erfolgt nur dann, wenn die Datei alle Variablen aus der Variablenliste der Rezepturdefinition des SPS-Projekts enthält und diese in derselben Reihenfolge sortiert sind. Zusätzliche Einträge am Ende werden ignoriert. Wenn die nötige Übereinstimmung nicht vorliegt, wird der Fehlerstatus ERR_RECIPE_MISMATCH gesetzt (RecipeManCommands.GetLastError). |
Variablen mit übereinstimmenden Namen laden | Die Rezepturwerte werden nur für diejenigen Variablen geladen, die in der Rezepturdefinition des SPS-Projekts den gleichen Namen haben wie in der Rezepturdatei. Wenn sich die Variablenlisten in Zusammensetzung und Sortierung unterscheiden, wird kein Fehlerstatus gesetzt. Damit können Rezepturdateien auch dann noch geladen werden, wenn Variablen in der Datei oder in der Rezepturdefinition gelöscht wurden. |
Bestehende Rezepturen beim Download überschreiben | : Wenn Rezepturdateien mit dem gleichen Namen auf der Steuerung vorhanden sind, werden diese beim Start des SPS-Projekts mit den konfigurierten Werten aus dem Projekt überschrieben. Wenn stattdessen die Werte aus den bereits vorhandenen Rezepturdateien geladen werden sollen, muss diese Option deaktiviert werden. Voraussetzung: Speicherungstyp ist textuell und die Option Rezepturänderungen automatisch in Rezepturdateien speichern ist aktiviert. |
Rezeptur schreiben
Variable auf Min/Max begrenzen, wenn Rezepturwert außerhalb des Bereichs | Wenn die Rezeptur einen Wert enthält, der außerhalb des in der Definition eingetragenen Wertebereichs liegt, wird statt dieses Werts der definierte minimale oder maximale Wert in die SPS-Variable geschrieben. |
Variable nicht schreiben, wenn Rezepturwert außerhalb des Min/Max-Bereichs | Wenn die Rezeptur einen Wert enthält, der außerhalb des in der Definition eingetragenen Wertebereichs liegt, wird kein Wert in die SPS-Variable geschrieben. Sie behält ihren aktuellen Wert. |
Rezeptur lesen
Nur bei exakter Übereinstimmung der Variablenliste laden | : Bei jedem Methodenaufruf werden zunächst die aktuellen SPS-Variablenwerte in die Rezeptur eingelesen. Dann wird überprüft, ob sich die Werte geändert haben. Nur, wenn sich die Werte geändert haben, wird die Rezeptur gespeichert, also die Rezepturdatei mit den aktuellen Rezepturen überschrieben. Die Option kann genutzt werden, um die im lokalen Dateisystem liegende Rezepturdatei nur dann zu aktualisieren, wenn sich auf der SPS Rezepturwerte geändert haben. Allerdings wirkt sich das auf die Performance aus, weil für die Prüfung zusätzlicher Code erzeugt wird. : Bei jedem Methodenaufruf werden zunächst die aktuellen SPS-Variablenwerte in die Rezeptur eingelesen. Dann wird die Rezeptur in der Rezepturdatei im lokalen Dateisystem geschrieben. Da bei jedem Aufruf auf das Dateisystem geschrieben wird, kann die Steuerung belastet werden. |
Rezepturen im Onlinebetrieb, wenn die Option Änderungen in Rezeptur automatisch speichern aktiviert ist:
Aktionen | Im Projekt definierte Rezepturen | Zur Laufzeit definierte Rezepturen |
---|---|---|
Online Reset Warm Online Reset Kalt Download | Die Rezepturen aller Rezepturdefinitionen werden mit den Werten aus dem aktuellen Projekt belegt. | Dynamisch erzeugte Rezepturen bleiben unverändert. |
Online Reset Ursprung | Die Anwendung wird von der SPS entfernt. Wenn danach ein neuer Download erfolgt, werden die Rezepturen so wiederhergestellt wie bei einem Online Reset Warm. | |
Shutdown und Neustart der SPS | Nach dem Neustart werden die Rezepturen erneut aus den automatisch angelegten Dateien geladen. Damit wird der gleiche Zustand wie vor dem Herunterfahren wiederhergestellt. | |
Online-Change | Die Rezepturwerte bleiben unverändert. Während der Laufzeit kann eine Rezeptur nur über die Befehle des Funktionsbausteins RecipeManCommands verändert werden. | |
Stopp/Start | Bei einem Stopp/Start der SPS bleiben die Rezepturen unverändert. |
Rezepturen im Onlinebetrieb, wenn Rezepturänderungen automatisch in Rezepturdateien speichern NICHT aktiviert ist:
Aktionen | Im Projekt definierte Rezepturen | Zur Laufzeit definierte Rezepturen |
---|---|---|
Online Reset Warm Online Reset Kalt Download | Die Rezepturen aller Rezepturdefinitionen werden mit den Werten aus dem aktuellen Projekt belegt. Allerdings werden diese nur im Speicher gesetzt. Um die Rezepturen in einer Datei zu speichern, muss explizit der Befehl Rezeptur speichern verwendet werden. | Dynamisch erzeugte Rezepturen gehen verloren. |
Online Reset Ursprung | Die Anwendung wird von der SPS entfernt. Wenn danach ein neuer Download erfolgt, werden die Rezepturen wiederhergestellt. | Dynamisch erzeugte Rezepturen gehen verloren. |
Shutdown und Neustart der SPS | Nach dem Neustart werden die Rezepturen erneut aus den automatisch angelegten Dateien geladen. Damit wird der gleiche Zustand wie vor dem Herunterfahren wiederhergestellt. | |
Online-Change | Die Rezepturwerte bleiben unverändert. Während der Laufzeit kann eine Rezeptur nur über die Befehle des Funktionsbausteins RecipeManCommands verändert werden. | |
Stopp/Start | Bei einem Stopp/Start der SPS bleiben die Rezepturen unverändert. |