- Home
- Projektdaten importieren/exportieren
- Sicherheitsbezogene Daten importieren
Sicherheitsbezogene Daten importieren
PLCnext Engineer bietet die Möglichkeit, sicherheitsbezogene Daten in das aktuell geöffnete Projekt zu importieren. Es stehen zwei verschiedene Importe zur Verfügung, die beide über den Menüpunkt 'Datei > Sicherheitsrelevante Daten importieren..." angestoßen werden. Die Vorgehensweise und die notwendigen Voraussetzungen im Quell- und Zielprojekt unterscheiden sich je nach Art der Importdatei, die Sie anschließend im 'Öffnen'-Dialog auswählen.
Beide Importe werden im Folgenden ausführlich beschrieben:
Sicherheitsbezogene Daten über eine Script-Datei (*.pcustx) importieren
Allgemeine Informationen zum Import
Der Import sicherheitsbezogener Daten über den Menüpunkt "Datei > Import > Sicherheitsbezogene Daten importieren..." ist nur möglich, wenn die zu importierenden Daten als Script aus dem Quellprojekt exportiert wurden. Dieser spezielle Export kann derzeit nur von Phoenix Contact durchgeführt werden. Das resultierende Scriptpaket (Dateiformat Compressed Batch File, *.pcustx) enthält alle im Quellprojekt erstellten sicherheitsbezogenen POEs, die Parameter aller sicherheitsbezogenen Geräte und den kompletten Inhalt der Datenliste des 'Safety PLC'-Knotens.
Der Zweck dieses Verfahrens besteht darin, den sicherheitsbezogenen Teil eines Projekts extern bearbeiten und wieder importieren zu können, ohne die Projekt-CRC zu verändern. Das PLCnext Engineer-Projekt wird so um die extern erstellte Sicherheitsapplikation ergänzt und bleibt dabei gültig und kompilierbar.
Der Importbefehl führt die in der Compressed Batch-Datei enthaltenen Skripte aus und überträgt so die Daten aus dem Quellprojekt in das Zielprojekt.
Erstellen des Quellprojekts
Bei der Bearbeitung des Quellprojekts muss Folgendes beachtet werden:
- Austauschvariablen (das sind Standardvariablen der Sicherheitssteuerung) müssen im Quellprojekt am Ende einer Variablengruppe angelegt werden, da neue Austauschvariablen beim Import in das Zielprojekt an das Ende der jeweiligen Gruppe angehängt werden.
- Die Topologien (Instanzhierarchien) von Quell- und Zielprojekt müssen identisch sein.
Vorbereitung des Zielprojekts
Die folgenden Bedingungen müssen im Zielprojekt erfüllt sein, bevor der Importbefehl ausgeführt wird:- Das Zielprojekt ist geöffnet.
- Sie haben sich im sicherheitsbezogenen Bereich angemeldet, d.h. der Schreibzugriff auf den sicherheitsbezogenen Teil des Projekts ist möglich.
- Alle Bibliotheken für einen Geräteimport sind im Zielprojekt enthalten.
- Die Topologien (Instanzhierarchien) im Quell- und im Zielprojekt sind identisch.
Was passiert während des Imports?
Die folgenden Daten werden beim Import im Zielprojekt erstellt:- Die Parameter aller vorhandenen sicherheitsbezogenen Geräte werden aktualisiert.
- Alle vorhandenen sicherheitsbezogenen POEs werden zuerst gelöscht. Anschließend werden neue sicherheitsbezogene POEs importiert.Die POEs werden in den Ordner 'Programmierung > Lokal > Funktionen & Funktionsbausteine' im KOMPONENTEN-Bereich importiert. Die Main-POE wird in den Ordner 'Programme' eingefügt.
- In der Datenliste des 'IEC 61131-3'-Knotens werden die neuen Austauschvariablen mit ihren Variablengruppen angelegt.
- Die Datenliste der sicherheitsbezogenen SPS wird aktualisiert und unbenutzte globale sicherheitsbezogene Variablen werden gelöscht.
So gehen Sie vor
- Öffnen Sie das Projekt, in das Sie die Projektdaten importieren wollen.
- Melden Sie sich mit dem entsprechenden Kennwort im sicherheitsbezogenen Bereich an.
- Wählen Sie 'Datei > Importieren > Sicherheitsbezogene Daten importieren...'.
- Lesen und bestätigen Sie die Meldung, dass Sie die importierten Daten nach dem Import verifizieren und validieren müssen.Nachdem der Import abgeschlossen ist, wird das Projekt automatisch kompiliert.
- Validieren Sie Ihre Sicherheitsapplikation. Beachten Sie den folgenden Gefahrenhinweis.
WARNUNG
|
Unbeabsichtigter Betriebszustand des Geräts
|
Sicherheitsbezogene Daten aus SafetyProg/SafeProg (*.swt) importieren
PLCnext Engineer bietet die Möglichkeit, sicherheitsbezogene Projektdaten zu importieren, die mit dem sicherheitsbezogenen Programmiersystem SafetyProg oder SafeProg erstellt wurden.
Der Import umfasst POEs und ihre FBS-Code-Arbeitsblätter, lokale Variablen und die Beschreibungen der POEs. Gibt es mehrere Landessprachen in der POE-Beschreibung des Quellprojekts, werden die Texte aller Sprachen in ein Beschreibungsarbeitsblatt in der Standardsprache importiert.
Der Import umfasst nicht die Gerätetopologie.
Hinweis
Die Projekt-CRC des Classic-Projekts und die Projekt-CRC nach dem Import stimmen nicht überein. |
Voraussetzungen für das SafeProg/SafetyProg-Quellprojekt
- Das Quellprojekt (*.swt-Datei) wurde mit der SafetyProg/SafeProg-Version 3.70 erstellt. Ältere Projektversionen müssen mit der Version 3.70 geöffnet und konvertiert worden sein.
- Vor dem Speichern in SafetyProg/SafeProg wurden die Querverweise des Projekts erstellt.
Vorbereitung des PLCnext Engineer-Zielprojekts
Die folgenden Bedingungen müssen im Zielprojekt erfüllt sein, bevor der Importbefehl ausgeführt wird:- Das Zielprojekt ist geöffnet.
- Sie haben sich im sicherheitsbezogenen Bereich angemeldet, d.h. der Schreibzugriff auf den sicherheitsbezogenen Teil des Projekts ist möglich.
- Wenn im Quellprojekt PLCopen-FBs verwendet werden, müssen Sie die Bibliothek "PLCopen_SF_V2_00.pcwlx" einbinden. PLCopen V1.0 FBs werden beim Import automatisch in PLCopen V2.0 FBs konvertiert.
- Für die nachfolgend beschriebene Vorgehensweise wird davon ausgegangen, dass das Ziel-Projekt in PLCnext Engineer bereits eine Sicherheitssteuerung enthält.Grund: Ist im Zielprojekt bereits eine sicherheitsbezogene SPS vorhanden, werden die im Quellprojekt deklarierten globalen/externen Variablen in der Variablentabelle der einzelnen POEs angelegt ('Verwendung' = 'Extern') und die zugehörigen globalen Variablen in die Datenliste der Sicherheitssteuerung eingefügt.
Ist beim Import keine Sicherheitssteuerung vorhanden, werden in der POE nur die externen Variablen angelegt. In diesem Fall können Sie später eine Sicherheitssteuerung hinzufügen und das Projekt neu erzeugen (Rebuild), um die globalen Variablen anzulegen.
So gehen Sie vor
- Öffnen Sie das Projekt, in das Sie die Projektdaten importieren wollen.
- Melden Sie sich mit dem entsprechenden Kennwort im sicherheitsbezogenen Bereich an.
- Wählen Sie 'Datei > Importieren > Sicherheitsbezogene Daten importieren...'.
- Lesen und bestätigen Sie die Meldung, dass Sie die importierten Daten nach dem Import verifizieren und validieren müssen.Die POEs werden in den Ordner 'Programmierung > Lokal > Funktionen & Funktionsbausteine' im KOMPONENTEN-Bereich importiert. Die Main-POE wird in den Ordner 'Programme' eingefügt.Nachdem der Import abgeschlossen ist, wird das Projekt automatisch kompiliert.
-
Handhabung der importierten Main-Programm-POEWenn Ihr Zielprojekt vor dem Import bereits einen Programmtyp namens Main enthielt (unabhängig davon, ob es sich um ein Standard- oder ein sicherheitsbezogenes Programm handelt), wird die POE Main aus dem swt-Projekt unter dem Namen Main1 importiert.Wenn Ihr Zielprojekt bereits vor dem Import eine Sicherheitssteuerung enthielt, war bereits automatisch eine sicherheitsbezogene Programm-POE mit dem Namen S_Main vorhanden. Diese Programm-POE ist dann bereits im 'Task und Events'-Editor des 'Safety PLC'-Knotens instanziiert.Gehen Sie folgendermaßen vor:
- In den KOMPONENTEN, Ordner 'Programmierung > Lokal > Programme': Benennen Sie die importierte Programm-POE von Main nach S_Main um.
Benennen Sie gegebenenfalls vorher die bestehende POE S_Main um oder löschen Sie sie. Stellen Sie sicher, dass durch das Löschen des "alten" Main-Programms kein bereits entwickelter sicherheitsbezogener Code gelöscht wird. Sie können zum Beispiel vorhandenen Code mit der importierten Programm-POE zusammenführen. - Stellen Sie sicher, dass die Programm-POE S_Main im 'Task und Events'-Editor des 'Safety PLC'-Knotens instanziiert ist.
- In den KOMPONENTEN, Ordner 'Programmierung > Lokal > Programme': Benennen Sie die importierte Programm-POE von Main nach S_Main um.
-
Syntaxfehler aufgrund von importierten erweiterten Bezeichnern?Wenn Sie Fehlermeldungen wegen ungültiger Variablen- oder Konstantenbezeichner (z.B. LEX0001 + VAR0005) und andere daraus resultierende Syntaxfehler erhalten, gehen Sie wie folgt vor:
- Klicken Sie auf Sie 'Extras > Optionen'.
- Wählen Sie im 'Optionen'-Dialog 'Compiler > IEC Compiler-Einstellungen'.
- Aktivieren Sie das Kontrollkästchen 'Erweiterte Bezeichner erlauben'.
- Kompilieren Sie das Projekt mit dem Menüpunkt 'Projekt > Neu erzeugen'.
-
Semantische Fehler und Warnungen wegen fehlender Zuweisung von Variablen?Wenn das importierte Projekt globale sicherheitsbezogene Variablen enthält, die Eingangs- oder Ausgangsprozessdaten-Elementen (PDIs) oder globalen Variablen der Standard-SPS zugeordnet waren, dann konnten diese Zuordnungen nicht mit importiert werden. Die globalen Variablen wurden zwar in der Datenliste der sicherheitsbezogenen SPS angelegt, sind dort aber als Merkervariablen deklariert (gekennzeichnet durch Datenlistenspalte 'I/Q/M' = 'M') und müssen manuell zugeordnet werden.Die folgenden Fälle und damit Fehler-/Warnmeldungen können auftreten:
-
SSEM0016 "Die Variable Name wird gelesen, bevor Sie geschrieben ist"
Dieser Fehler wird ausgegeben, wenn die betroffene importierte globale sicherheitsbezogene Variable im Quellprojekt einem Eingangs-PDI zugeordnet war.Ordnen Sie jede Ausgangsvariable, für die die Fehlermeldung SSEM0016 ausgegeben wird, einem Eingangs-PDI zu. -
SSEM0019 "Die Variable Name wird geschrieben aber nicht gelesen"
Dieser Fehler wird ausgegeben, wenn die betroffene importierte globale sicherheitsbezogene Variable im Quellprojekt einem Ausgangs-PDI zugeordnet war.Ordnen Sie jede Ausgangsvariable, für die die Fehlermeldung SSEM0019 ausgegeben wird, einem Ausgangs-PDI zu. -
SSEM0018 "Die Variable Name wird nicht verwendet"
Diese Warnung wird ausgegeben, wenn die betroffene importierte globale Variable im Quellprojekt einer Variablen der Standard-SPS oder/und einem PDI zugeordnet war.Ergänzen Sie die fehlenden Zuordnungen zu jeder Ausgangsvariablen, für die die Warnmeldung SSEM0018 ausgegeben wird.
Vorgehensweise für Fehler SSEM0016 und Warnung SSEM0019
- Doppelklicken Sie in der Fehlerliste des MELDUNGEN-Fensters auf die Fehlermeldung/Warnung, um an die entsprechende Codestelle zu springen. Die betroffene Variable ist im Code markiert.Beispiel für SSEM0016:
- Rechtsklicken Sie im Code-Arbeitsblatt auf die betroffene Variable und wählen Sie 'Gehe zu Definition' aus dem Kontextmenü. Es wird die 'Datenliste' der Sicherheitssteuerung geöffnet und dort die globale Deklaration der Variablen markiert.Beispiel für SSEM0016:
- Weisen Sie in der 'Datenliste' mit Hilfe der Rollenauswahl ein Eingangsprozessdaten-Element zu. Voraussetzung ist, dass das jeweilige Ein- oder Ausgangsgerät bereits in der ANLAGE vorhanden ist.Beispiel für SSEM0016, Zuordnung zu einem Eingangssignal:
Nach der Zuordnung der Variablen zu einem PDI wird der Fehler entfernt und die Datenrichtung in der Spalte 'I/Q/M' in der Datenliste von 'M' auf 'I' oder 'Q' gesetzt.
- Wiederholen Sie diese Schritte für jede entsprechende Meldung.
Vorgehensweise für Warnung SSEM0018
- Klicken Sie im MELDUNGEN-Fenster auf die Meldung, um in die Datenliste der Sicherheitssteuerung zu springen. Die betroffene Variable ist dort markiert.
- Um zu überprüfen, wo die Variable im Code verwendet wird, rechtsklicken Sie in der Datenliste auf die betroffene Variablendeklaration und wählen im Kontextmenü 'Alle Querverweise anzeigen'. Es wird das QUERVERWEISE-Fenster geöffnet.
Durch Untersuchung der Codestellen, an denen eine Variable verwendet wird, können Sie entscheiden, welche Zuweisung erforderlich ist. Zu diesem Zweck können Sie auf einen Querverweis mit 'Ort' = 'Code' doppelklicken, um in das Code-Arbeitsblatt zu springen. - Gehen Sie zurück zur 'Datenliste' und weisen Sie mit der Rollenauswahl die richtige SPS-Variable oder das richtige Prozessdaten-Element zu. Voraussetzung ist, dass die gewünschte SPS-Variable bereits deklariert oder das entsprechende Eingangsgerät bereits in der ANLAGE vorhanden ist.Nach der Zuordnung der Variablen zu einer SPS-Variablen oder einem PDI wird der Fehler bzw. die Warnung entfernt und die Datenrichtung in der Spalte 'I/Q/M' in der Datenliste von 'M' auf 'I' oder 'Q' gesetzt.
- Wiederholen Sie diese Schritte für jede entsprechende Meldung.
WARNUNGUnbeabsichtigter Betriebszustand des Geräts - Validieren Sie die Zuordnungen zwischen Variablen und Prozessdaten-Elementen (Signalen) und prüfen Sie die Applikation sorgfältig.
- Validieren Sie die gesamte Sicherheitsfunktion in Bezug auf die Zuordnungen von Variablen auf Prozessdaten-Elemente.
- Validieren Sie die physikalische Verdrahtung Ihrer sicherheitsbezogenen Architektur
- Stellen Sie vor der Inbetriebnahme Ihrer Sicherheitsapplikation sicher, dass geeignete organisatorische Maßnahmen (gemäß zutreffender Sektornormen) getroffen wurden, um Gefährdungen im Falle einer unbeabsichtigten oder falschen Funktion der Sicherheitslogik zu vermeiden.
-
SSEM0016 "Die Variable Name wird gelesen, bevor Sie geschrieben ist"
- Erzeugen Sie das Projekt neu, indem Sie den Menüpunkt 'Projekt > Neu erzeugen' auswählen.
-
Validierung und Verifizierung bestätigenNach dem Neuerzeugen erhalten Sie für jedes Code-Arbeitsblatt jeder importierten POE die Meldung CDI0001 über eine Sicherheitsverletzung ('Das Arbeitsblatt Name besitzt kein gültiges Sicherheitssiegel'). Dieser Fehler wird gemeldet, weil die Prüfsumme nach dem Importieren des Arbeitsblatts nicht mehr gültig ist.Gehen Sie folgendermaßen vor:
- Doppelklicken Sie auf jede Fehlermeldung mit der Kennung CDI0001, um das betreffende Code-Arbeitsblatt zu öffnen.
- Validieren Sie im jeweiligen Arbeitsblatt den importierten sicherheitsbezogenen Code.WARNUNG
Unbeabsichtigter Betriebszustand des Geräts
Verifizieren Sie, dass die sicherheitsbezogenen Daten korrekt und ohne Änderungen oder Beschädigungen importiert worden sind. - Wenn Sie sichergestellt haben, dass die Daten korrekt importiert wurden, rechtsklicken Sie auf den Hintergrund des Code-Arbeitsblatts und wählen im Kontextmenü den Befehl 'Verifizierung bestätigen'.
Die verifizierten Daten werden nun durch Berechnung einer Prüfsumme versiegelt und die Fehlermeldung wird entfernt.