Rezepturverwalter

Übersicht

Der Rezepturverwalter stellt Funktionen zur Verwaltung benutzerdefinierter Listen von Projektvariablen, sogenannte Rezepturdefinitionen, und eindeutiger Wertesätzen für diese Variablen innerhalb einer Rezepturdefinition, sogenannte Rezepturen, bereit.

Sie können Rezepturen (Rezepte) verwenden, um Rezepturwerte für einen bestimmten Variablensatz (Rezepturdefinition) in der Steuerung zu ändern oder zu lesen. Sie können außerdem aus Dateien geladen und in Dateien gespeichert werden. Diese Interaktionen werden durch Visualisierungselemente möglich, die Sie entsprechend konfigurieren müssen (Eingabekonfiguration - Befehl ausführen). Sie können auch bestimmte Rezepturbefehle in der Anwendung verwenden.

Überprüfen Sie nach der Auswahl einer Rezeptur, ob diese für den zu steuernden Prozess geeignet ist.

 WARNUNG
UNBEABSICHTIGTER BETRIEBSZUSTAND DES GERÄTS
  • Führen Sie eine Sicherheitsanalyse für die Anwendung und die installierten Geräte durch.
  • Überprüfen Sie, ob die Rezeptur für den Prozess und das Gerät oder die Funktion in der Installation geeignet ist.
  • Stellen Sie entsprechende Parameter bereit, besonders für Grenzwerte und andere sicherheitsrelevante Elemente.
  • Stellen Sie sicher, dass alle Sensoren und Aktoren mit der ausgewählten Rezeptur kompatibel sind.
  • Unterziehen Sie alle Funktionen während Überprüfung und Inbetriebnahme umfassenden Tests.
  • Stellen Sie für kritische Steuerungsfunktionen (Not-Aus, Überschreitung der Grenzwerte usw.) unabhängige Pfade bereit, die der Sicherheitsanalyse und den geltenden Vorschriften und Vorschriften entsprechen.
Die Nichtbeachtung dieser Anweisungen kann Tod, schwere Verletzungen oder Sachschäden zur Folge haben.

Standardmäßig wird der Rezepturverwalter beim Download in die Steuerung geladen. Er übernimmt das Schreiben und Lesen von Rezepturen, wenn die Anwendung in der Steuerung ausgeführt wird. Es ist jedoch nicht nötig, den Rezepturverwalter in die Steuerung zu laden, um Rezepturen nur für den Austausch von Parametern während des Starts des Systems (dies ist der Fall, wenn EcoStruxure Machine Expert noch mit der Steuerung verbunden ist) zu verwenden. Sie können den Download zu diesem Zweck mit der Option Rezepturverwaltung in der SPS deaktivieren. Die Rezepturwerte werden dann mit den standardmäßigen Online-Befehlen und -Diensten geschrieben und gelesen. Wenn die Rezepturverwaltung in der Steuerung ausgeführt werden muss, weil sie zur Laufzeit vom Anwendungsprogramm benötigt wird, ist der Funktionsbaustein RecipeCommands für die Rezepturbefehle zuständig.

Eine Beschreibung des Verhaltens von Rezepturen in den verschiedenen Online-Modi finden Sie im Kapitel Rezepturdefinition.

Wenn sich der Rezepturverwalter in einer anderen Steuerung als die von den Rezepturen betroffene Anwendung befindet, wird der Datenserver zum Lesen/Schreiben der in den Rezepturen enthaltenen Variablen verwendet. Das Lesen und Schreiben der Variablen erfolgt synchron. Durch Aufrufen von g_RecipeManager.LastError nach dem Lesen/Schreiben können Sie überprüfen, ob die Übertragung erfolgreich durchgeführt wurde (in diesem Fall g_RecipeManager.LastError=0).

Rezepturverwalter-Objekte in der Tools-Baumstruktur

Um der Tools-Baumstruktur ein Rezepturverwalter-Objekt hinzuzufügen, wählen Sie den Knoten Anwendung aus, klicken auf die grüne Plus-Schaltfläche und führen Sie den Befehl Andere Objekte hinzufügen > Rezepturverwalter aus. Bestätigen Sie das Dialogfeld Add Recipe Manager, indem Sie auf Hinzufügen klicken. Der Knoten Rezepturverwalter wird unter dem Knoten Anwendung eingefügt.

Sie können einem Rezepturverwalter-Knoten einen 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. Geben Sie einen Namen in das Dialogfeld Add Recipe Definition ein und klicken Sie auf Hinzufügen. Doppelklicken Sie auf den Knoten, um Rezepturdefinitionen einschließlich der einzelnen Rezepturen in einem separaten Editorfenster anzuzeigen und zu bearbeiten. Eine Beschreibung des Verhaltens von Rezepturen in den verschiedenen Online-Modi finden Sie im Kapitel Rezepturdefinition.

Rezepturverwalter-Editor, Registerkarte Speicherung

Standardmäßig werden beim Speichern von Rezepturen in Dateien automatisch die Einstellungen auf der Registerkarte Speicherung des Rezepturverwalter-Editors angewendet:

Parameter

Beschreibung

Speicherungstyp

Wählen Sie den Speicherungstyp textuell oder binär aus.

Dateipfad

Geben Sie den Speicherpfad an, in dem die Rezeptur in der Steuerung oder im lokalen Dateisystem gespeichert werden soll.

HINWEIS: Für Rezepturverwalter, die in Simulationen arbeiten, muss der Dateipfad mit einem Punkt (.) beginnen, z. B. ./Rcp.

Dateierweiterung

Geben Sie die Dateierweiterung der Rezepturdatei an.

HINWEIS: Eine Speicherdatei kann auch durch die Eingabe eines Visualisierungselements definiert werden (Eingabekonfiguration – Befehl ausführen – Rezeptur in Datei speichern / aus Datei laden). Achten Sie beim Festlegen des Namens einer solchen Datei in der Visualisierungskonfiguration jedoch darauf, die hier definierte *.txtrecipe/*.rcp-Datei nicht im Rezepturverwalter zu überschreiben.

Parameter

Beschreibung

Trennzeichen

Im Fall einer textuellen Speicherung werden die ausgewählten Spalten durch ein Trennzeichen getrennt. Wählen Sie eine der sechs verfügbaren Optionen aus.

Verfügbare Spalten

Alle Spalten der Rezepturdefinition, dargestellt durch die jeweilige Kopfzeile.

Ausgewählte Spalten

Ausgewählte Spalten der Rezepturdefinition, d. h. die zu speichernden Spalten.

In diesem Teil ist zumindest die Spalte Aktueller Wert enthalten. Ihre Auswahl kann nicht aufgehoben werden.

Pfeilschaltflächen

Die übrigen Spalten können Sie nach rechts oder links verschieben, indem Sie den betreffenden Eintrag auswählen und auf die Pfeilschaltflächen klicken. Mit den Doppelpfeil-Schaltflächen können Sie alle Einträge gleichzeitig von einer Seite auf die andere verschieben.

Schaltflächen Nach oben und Nach unten

Klicken Sie auf diese Schaltflächen, um die Reihenfolge der ausgewählten Spalten zu ändern. Hierdurch wird die Reihenfolge der Spalten in der Speicherdatei bestimmt.

Für jede Rezeptur wird im angegebenen Ordner eine Datei <Rezepturname>.<Rezepturdefinition>.<Dateierweiterung> erstellt. Diese Datei wird bei jedem Neustart der Anwendung neu in den Rezepturverwalter geladen. Zur Konfigurationsaktualisierung der Rezepturspeicherdateien lesen Sie die Beschreibung der Registerkarte Allgemein.

Als Standard speichern

Klicken Sie auf die Schaltfläche Als Standard speichern, um die in diesem Dialogfeld vorgenommenen Einstellungen als Standardeinstellungen für jeden weiteren eingefügten Rezepturverwalter zu verwenden.

HINWEIS: Gleitkommawerte (Typ REAL/LREAL) werden in den textuellen Rezeptdateien sowohl im Dezimalformat als auch im Hexadezimalformat gespeichert. (Da der Hexadezimalwert den exakten Wert wiedergibt, während der REAL-Dezimalwert den Wert bis zur 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 Hexadezimal-Eintrag. (Wenn beide Werte zur Verfügung stehen, wird automatisch der Hexadezimalwert geladen.)

Rezepturverwalter-Editor, Registerkarte Allgemein

Parameter

Beschreibung

Rezepturverwaltung in der SPS

Wenn der Rezepturverwalter nicht in der Steuerung benötigt wird, da während der Laufzeit der Anwendung keine Rezepturen verarbeitet werden müssen, können Sie diese Option deaktivieren, sodass der Verwalter nicht heruntergeladen wird.

Eine automatische Aktualisierung der Rezepturdatei ist nur nach dem Download möglich. Um den Rezepturverwalter in die Steuerung herunterzuladen, aktivieren Sie diese Option.

Rezeptur speichern

Rezepturänderungen automatisch in Rezepturdateien speichern

Diese Option ist nur verfügbar, wenn die Option Rezepturverwaltung in der SPS ausgewählt ist.

Wählen Sie die Option Rezepturänderungen automatisch in Rezepturdateien speichern aus, um die Rezepturdateien bei jeder Änderung einer Rezeptur automatisch im Laufzeitmodus zu aktualisieren.

Rezeptur laden

Bei aktivierter Option Rezepturverwaltung in der SPS sind die folgenden zwei Optionen zur Konfiguration des Downloads aus der Steuerung verfügbar.

Nur bei exakter Übereinstimmung der Variablenliste laden

Wählen Sie diese Option aus, um nur dann Rezepturdateien zu laden, wenn in der Datei alle in der Variablenliste der Rezepturdefinition der Anwendung aufgeführten Variablen enthalten sind. Die Variablen in der Datei müssen in der gleichen Reihenfolge erscheinen wie in der Variablenliste. Zusätzliche Einträge am Ende können ignoriert werden. Andernfalls kann die Rezeptur nicht geladen werden und der Rückgabewert ERR_RECIPE_MISMATCH wird gesetzt (RecipeManCommands.GetLastError).

Variablen mit übereinstimmenden Namen laden

Wählen Sie diese Option aus, um nur die Variablen mit übereinstimmenden Variablennamen aus der Rezepturdatei zu laden. Es wird kein Fehlerstatus definiert, wenn sich die Variablenliste in der Datei von der Liste in der Rezepturdefinition der Anwendung unterscheidet. Dementsprechend können auch die Rezepturdateien nur dann geladen werden, wenn die Variablen in der Datei oder in der Rezepturdefinition gelöscht wurden.

Rezeptur schreiben

Variable auf Min/Max begrenzen, wenn Rezepturwert außerhalb des Bereichs

Wählen Sie diese Option aus, um den festgelegten Mindest- oder Höchstwert in die Steuerung zu schreiben, wenn die Rezeptur einen Wert enthält, der außerhalb des zulässigen Wertebereichs liegt.

Variable nicht schreiben, wenn Rezepturwert außerhalb des Min/Max-Bereichs

Wählen Sie diese Option aus, um zu verhindern, dass ein Wert in die Steuerung geschrieben wird, wenn die Rezeptur einen Wert außerhalb des zulässigen Wertebereichs enthält. In diesem Fall wird der in der Steuerung vorhandene Wert beibehalten.

Rezeptur lesen

Rezeptur auf Änderungen prüfen

Verwenden Sie den Funktionsbaustein RecipeManCommands der RecipeManagement-Bibliothek, um Rezepturen zu lesen. Rufen Sie die Methode nicht zyklisch auf, da dies viel Zeit und Steuerungskapazität beanspruchen würde.

Wählen Sie diese Option aus, um die in der Steuerung vorhandenen Werte bei jedem Methodenaufruf in die Rezeptur auszulesen. Nur wenn sich Werte geändert haben, wird die Rezepturdatei mit den aktuellen Werten überschrieben. Da dieses Verfahren zusätzlichen Code für den Vergleich der alten und aktuellen Werte generiert, müssen Sie die Auswirkungen auf die Leistung berücksichtigen.

Wird die Option nicht ausgewählt, dann werden die in der Steuerung vorhandenen Werte bei jedem Methodenaufruf in die Rezeptur ausgelesen. Die Rezeptur wird dann in die Rezepturdatei im lokalen Dateisystem geschrieben.

HINWEIS: Dieser Schreibprozess im lokalen Dateisystem bei jedem Methodenaufruf kann die Steuerungsleistung erheblich beeinträchtigen.