Der Rezepturverwalter stellt Funktionen zur Verwaltung von benutzerdefinierten Listen von Projektvariablen, sogenannte Rezepturdefinitionen, und eindeutigen Wertesätzen für diese Variablen innerhalb einer Rezepturdefinition, sogenannte Rezepturen, bereit.
Sie können Rezepte verwenden, um Rezeptwerte in einem bestimmten Variablensatz (Rezepturdefinition) auf der Steuerung zu ändern oder zu lesen. Sie können außerdem aus Dateien geladen und in diesen gespeichert werden. Diese Interaktionen werden durch Visualisierungselemente möglich, die Sie entsprechend konfigurieren müssen (Eingabekonfiguration – Internes Kommando). Sie können auch bestimmte Rezepturbefehle in der Anwendung verwenden.
Überprüfen Sie nach Auswahl einer Rezeptur, ob diese für den zu steuernden Prozess geeignet ist.
|
UNBEABSICHTIGTER GERÄTEBETRIEB |
oDurchführen einer Sicherheitsanalyse für die Anwendung und die installierten Geräte oÜberprüfen, ob die Rezeptur für den Prozess und das Gerät oder die Funktion in der Installation geeignet ist. oStellen Sie entsprechende Parameter bereit, besonders für Grenzwerte und andere sicherheitsrelevante Elemente. oStellen Sie sicher, dass alle Sensoren und Aktoren mit der ausgewählten Rezeptur kompatibel sind. oGründliches Testen aller Funktionen während Überprüfung und Inbetriebnahme. oBereitstellen unabhängiger Pfade für kritische Steuerungsfunktionen (Nothalt, Überschreiten von Grenzwerten usw.) entsprechend der Sicherheitsanalyse und anwendbaren Vorschriften und Bestimmungen |
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 auf der Steuerung ausgeführt wird. Es ist jedoch nicht nötig, den Rezepturmanager 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 Expertnoch 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 auf 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 auf 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 einen Rezepturverwalter-Objekt hinzuzufügen, wählen Sie den Knoten Applikation aus, klicken auf die grüne Plus-Schaltfläche, und führen 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 Applikation 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. In der Steuerung muss der Pfad mit einem umgekehrten Schrägstrich (\) enden. Beispiel: MyRecipes\. |
Dateierweiterung |
Geben Sie die Dateierweiterung der Rezepturdatei an. |
HINWEIS: Eine Speicherdatei kann auch durch die Eingabekonfiguration eines Visualisierungselements definiert werden (Eingabekonfiguration – Internes Kommando – Speichere eine Rezeptur in eine Datei/Lade eine Rezeptur aus einer Datei). Achten Sie beim Festlegen des Namens einer solchen Datei in der Visualisierungskonfiguration jedoch darauf, die hier definierte *.txtrecipe-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 1 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 eine Datei <Rezepturname>.<Rezepturdefinition>.<Dateierweiterung> im angegebenen Ordner 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: 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.)
Rezepturverwalter-Editor, Registerkarte Allgemein
Parameter |
Beschreibung |
---|---|
Rezepturverwaltung in der SPS |
Wenn der Rezepturverwalter nicht auf der Steuerung benötigt wird, da während der Laufzeit der Anwendung keine Rezepturen verarbeitet werden müssen, können Sie diese Option deaktivieren, so dass 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 |
|
Ä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 Änderungen automatisch in Rezepturdateien speichern aus, um die Rezepturdateien bei jeder Änderung einer Rezeptur im Laufzeitmodus automatisch zu aktualisieren. |
Rezeptur laden |
|
Nur bei exakter Übereinstimmung der Variablenliste laden |
Wählen Sie die Option Nur bei exakter Übereinstimmung der Variablenliste laden, um die Rezepturdateien nur dann zu laden, wenn die Datei Variablen enthält, die in der Variablenliste der Rezepturdefinition der Anwendung verfügbar 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 ist definiert (RecipeManCommands.GetLastError). |
Variablen mit übereinstimmenden Namen laden |
Wählen Sie die Option Variablen mit übereinstimmenden Namen laden, um nur die Variablen mit einem ü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 die Option Variable auf Min./Max. begrenzen, wenn Rezepturwert außerhalb des Bereichs aus, um den festgelegten Mindest- bzw. Höchstwert in die Steuerung zu schreiben, wenn die Rezeptur einen Wert enthält, der außerhalb des gültigen Wertebereichs liegt. |
Variable nicht schreiben, wenn Rezepturwert außerhalt des Min/Max-Bereichs |
Wählen Sie die Option Nicht in Variable schreiben, wenn Rezepturwert außerhalb des Min./Max.-Bereich aus, wenn kein Wert in die Steuerung geschrieben werden soll, wenn die Rezeptur einen Wert enthält, der außerhalb des gültigen Wertebereichs liegt. In diesem Fall wird der in der Steuerung vorhandene Wert beibehalten. |
Klicken Sie auf die Schaltfläche Rezeptur schreiben, um die ausgewählten Wert einer Rezeptur in die Variablen in der Steuerung zu schreiben, wenn sich die Anwendung im Online-Modus befindet.
HINWEIS: Die in der Steuerung vorhandenen Werte werden dann durch die Rezepturwerte überschrieben.