Heute dürfen wir Ihnen einen weiteren Gastblog präsentieren von unseren Kollegen bei Software Toolbox.
Ein häufiger Anwendungsfall, auf den wir bei Software Toolbox bei vielen AVEVA™-Anwendern stoßen, ist die Notwendigkeit, Daten von der AVEVA System Platform mit einem anderen Client oder System (HMI, SCADA, andere) zu teilen. Gerade bei der Übernahme von Unternehmen und anschließender Standardisierung müssen die Schnittstellen der zur Zeit benutzen Systeme näher beleuchtet werden. Aber auch wenn ein System mit eingeschränkten Schnittstellen für externe Konnektivität hinzugefügt wird. Ihre Optionen für die gemeinsame Nutzung von Daten hängen weitgehend davon ab, welche Softwareschnittstellen diese "anderen Systeme" unterstützen.
In diesem Blog-Beitrag wird gezeigt, wie Sie Ihre AVEVA System Platform 2020 (oder neuer) Daten über OPC UA (ohne Verwendung von OI Gateway) mit dem OPC Router für Situationen freigeben können, in denen Sie eine andere, nicht OPC UA-fähige Client-Anwendung haben, die Zugriff auf Prozessdaten in Ihrem AVEVA System benötigt, z. B. ein ERP-System, eine IIoT-Plattform, einen Webservice und mehr.
Wie Sie vielleicht wissen, ist ab der AVEVA System Platform 2020 eine native OPC UA Server-Schnittstelle verfügbar. Wenn also das andere System, das auf die Daten von System Platform zugreifen muss, als OPC UA-Client fungieren kann, können Sie es direkt mit System Platform verbinden. Wenn das andere System jedoch nicht als OPC UA-Client fungieren kann, benötigen Sie eine andere Methode.
Sie könnten natürlich auch das OI Gateway verwenden, um die Daten der System Platform extern bereitzustellen, aber Sie sind auf die anderen von OI Gateway unterstützten Schnittstellen (wie OPC DA, SuiteLink, MQTT und Webservices ) beschränkt. Für Anwender, die nach Alternativen suchen oder ein System über eine nicht vom OI Gateway unterstützte Schnittstelle anbinden möchten, bietet der OPC Router die Möglichkeit, Daten von OPC UA Servern wie System Platform 2020 oder neuer in andere unterstützte Schnittstellen zu konvertieren. Dazu gehören unter anderem eine Vielzahl von Datenbanken (natürlich SQL, aber auch MariaDB, Mongo DB und andere), OPC DA Server, andere OPC UA Server, MQTT-Broker, SOAP- und REST-Webservices, ERP-Systeme wie SAP und mehr.
Mit seiner visuellen Workflow-Konfiguration ermöglicht der OPC Router die einfache Einrichtung des Datenflusses von einer Schnittstelle zur anderen für jede der unterstützten Schnittstellen.
Um eine OPC UA Client Verbindung zur AVEVA System Platform herzustellen, gibt es 3 wesentliche Schritte:
1. Konfigurieren Sie die OPC UA Server Schnittstelle in AVEVA System Platform 2020 oder neuer
Der erste Schritt ist das Erstellen und Konfigurieren einer Instanz des OPC UA Dienstes in Ihrer System Platform ArchestrA IDE, die mit den gewünschten Port- und Sicherheitseinstellungen für externe OPC UA Client-Anwendungen zugänglich sein wird. Wir müssen also Folgendes tun:
- Innerhalb der ArchestrA IDE wählen Sie in der Menüleiste oben,
Galaxy -> Configure -> ArchestrA Services. - Daraufhin wird das Dialogfeld "ArchestrA-Dienste konfigurieren" geöffnet, in dem wir den IDE-Namen angeben müssen.
- Klicken Sie mit der rechten Maustaste darauf und wählen Sie "Erstellen", um eine neue Instanz des OPC UA Service zu erstellen (wenn Sie bereits eine Standardinstanz erstellt haben, die Sie verwenden möchten, können Sie diesen Schritt überspringen).
- Das Erweitern von "Aveva.OPCUAService.[Version]" in der Baumhierarchie zeigt die neue Instanz mit dem Standardnamen "OPCUAService_001" - um diese zu bearbeiten, müssen wir mit der rechten Maustaste auf die neue Instanz klicken und "Auschecken" wählen, damit wir die gewünschten Änderungen vornehmen können.
- Es ist nun möglich, die folgenden Eigenschaften der OPC UA Service Instanz im rechten Fensterbereich von "Configure ArchestrA Services" zu bearbeiten.
- Portnummer - definiert den Portteil des Endpunkts, den OPC UA Clients für den Zugriff auf diese OPC UA Serverinstanz verwenden müssen (sowie den Port, der in allen Firewalls zwischen OPC UA Client und Server zugelassen werden muss). Der Standardwert ist 48031. Wenden Sie sich an Ihre IT-Abteilung, um den besten Port für Ihre spezielle Anwendung festzulegen.
- Verschlüsselte Kommunikation zwischen OPC UA Clients und dieser Serverinstanz verlangen - Standardmäßig ist diese Einstellung aktiviert und verlangt, dass alle OPC UA Clients, die sich mit dieser OPC UA Serverinstanz verbinden wollen, eine Verschlüsselung verwenden (System Platform unterstützt derzeit Basic256SHA256 mit SignAndEncrypt - der OPC UA Client muss also genau die gleiche Verschlüsselungsstufe verwenden).
Die Deaktivierung dieser Einstellung, die nicht empfohlen wird, ermöglicht es OPC UA Clients, sich ohne Verschlüsselung zu verbinden, was das Sicherheitsniveau Ihrer System Platform IDE senkt und das Risiko von Sicherheitsbedrohungen von außen erhöht. Dies gilt insbesondere für Anwendungen, bei denen Sie OPC UA-Clients erlauben wollen, in Ihre IDE zu schreiben. Wenden Sie sich an Ihre IT-Abteilung, um die Risiken der Deaktivierung dieser Einstellung in Ihrem Netzwerk zu besprechen. - Anonyme Client-Verbindung zulassen (kein Benutzername/Passwort) - Wenn Sie diese Einstellung aktivieren, kann sich jeder OPC UA Client mit dieser OPC UA Serverinstanz verbinden, ohne einen genehmigten Benutzernamen und ein Passwort anzugeben. Dies wird nicht empfohlen, da dadurch eine zusätzliche Sicherheitsebene entfernt wird.
- Erlaube authentifizierten Galaxy-Benutzern das Schreiben von Attributen, abhängig von ihrer Sicherheitsrolle - Wenn diese Einstellung aktiviert ist, können IDE/Galaxy-Benutzer, die bei der Verbindung zu dieser OPC UA Serverinstanz einen gültigen Benutzernamen und ein gültiges Passwort angegeben haben und die über die entsprechende Sicherheitsrolle zum Ändern von Attributen verfügen, Schreibvorgänge durchführen. Wenn Sie diese Einstellung deaktivieren, sind alle OPC UA Verbindungen zu dieser Serverinstanz unabhängig von der verwendeten Authentifizierung schreibgeschützt.
- Zuweisungen - Hier können Sie die Hosts auswählen, die für die Bereitstellung dieser OPC UA Serverinstanz verfügbar sind. Je nachdem, welchen Host Sie auswählen, bestimmen die Zuordnung und die zuvor definierte Portnummer die OPC UA Endpunkt-URL, die ein OPC UA Client für die Verbindung verwenden muss. Wenn der Hostname beispielsweise "WWSP2020R2" mit dem Standardport 48031 ist, lautet die OPC UA Endpoint URL: opc.tcp://WWSP2020R2:48031
F) Sobald die oben genannten Einstellungen wie gewünscht oder für Ihre Anwendung erforderlich konfiguriert sind, klicken wir auf die Schaltfläche "Aktualisieren", um alle Änderungen zu übernehmen.
G) Als Nächstes müssen wir wieder mit der rechten Maustaste auf die Instanz in der Baumhierarchie klicken und "Einchecken" wählen, um die Instanz wieder einzuchecken, nachdem die Änderungen übernommen wurden.
H) Zu guter Letzt müssen wir die neue OPC UA Serverinstanz bereitstellen, indem wir erneut mit der rechten Maustaste auf die Instanz klicken und "Bereitstellen" auswählen. Dadurch wird der Dienst auf den ausgewählten Zuweisungsknoten übertragen, wo er ausgeführt wird und für OPC-UA-Clients verfügbar ist.
I) Wir können nun das Dialogfenster "Configure ArchestrA Services" schließen, da die Konfiguration auf der OPC UA Serverseite vorerst abgeschlossen ist (wir werden das Vertrauen in das OPC UA Client-Zertifikat nach dem ersten OPC UA Client-Verbindungsversuch vom OPC Router erneut prüfen).
HINWEIS: Abhängig von der Sicherheitskonfiguration Ihrer IT Abteilung auf dem Client und dem Server, kann es notwendig sein, eine Firewall Ausnahme für den TCP Port, den Sie für den OPC UA Server angeben, zu beantragen. Bitte wenden Sie sich an Ihre IT-Abteilung.
2. OPC Router als OPC UA Client für die Verbindung zur AVEVA System Platform konfigurieren
Nachdem der OPC UA Serverdienst für die Systemplattform konfiguriert und bereitgestellt wurde, ist der nächste Schritt die Konfiguration des OPC Routers als OPC UA Client für diesen Server mit der folgenden Konfiguration:
- Zuerst müssen wir zum Abschnitt Plug-Ins der OPC Router-Konfiguration gehen und unter dem Abschnitt Shopfloor auf OPC UA doppelklicken und dann auf die Schaltfläche Add Instance klicken.
- Damit können wir eine neue Verbindung zum OPC-UA-Server in System Platform hinzufügen, indem wir die folgenden verfügbaren Einstellungen festlegen (wir werden nur die wichtigsten Einstellungen behandeln, die für die Verbindung mit System Platform konfiguriert werden müssen - alle anderen Einstellungen können auf den Standardwerten belassen werden):
1. Name - Benutzerdefinierter freundlicher Name, der vom OPC Router verwendet wird, um diese Verbindung zu identifizieren.
2. Client Certificate - Wählt aus, welches Zertifikat der OPC Router OPC UA Client für die Verschlüsselung dieser Verbindung verwenden soll. Es wird empfohlen, hier ein neues Zertifikat zu erstellen, indem Sie auf die blaue "+"-Schaltfläche klicken, woraufhin der folgende Dialog "Zertifikat erstellen" erscheint. Behalten Sie die Standardeinstellungen bei, mit Ausnahme des Ablaufzeitraums (der Standardwert ist 120 Monate oder 10 Jahre - wählen Sie einen Zeitraum, der für Ihre Anwendung geeignet ist, mit dem Wissen, dass das Zertifikat nach diesem Zeitraum neu ausgestellt und mit dem Server ausgetauscht werden muss). Klicken Sie auf Erstellen, um das Zertifikat fertigzustellen, das automatisch ausgewählt wird.
3. Vertrauenswürdige Serverzertifikate - Wählt aus, welche OPC UA Server Sicherheitszertifikate akzeptiert/vertraut werden sollen. Die Standardeinstellung ist "Alle", was dazu führt, dass dem Zertifikat des OPC UA Servers, mit dem eine Verbindung besteht, automatisch vertraut wird. Es wird empfohlen, hier "Router" auszuwählen, wodurch wir beim Verbindungsversuch aufgefordert werden, dem Serverzertifikat entweder zu vertrauen oder es abzulehnen, wodurch wir die Möglichkeit haben, das Zertifikat zu überprüfen, bevor wir ihm vertrauen.
4. Endpunkt - Hier können Sie die vollständige URL eingeben, auf die in den Eigenschaften der OPC UA Service Instanz in System Platform verwiesen wird, die wir zuvor gesehen haben, einschließlich des Präfixes opc.tcp:// und gefolgt vom Port.
5. Sicherheitsoptionen - Standardmäßig ist "Höchste Sicherheitsstufe" aktiviert, was dazu führt, dass OPC Router die höchste Sicherheitsstufe verwendet, die sowohl OPC Router als auch der OPC UA Server unterstützen. Derzeit ist die höchste Sicherheitsstufe die gleiche wie die Systemplattform: Basic256Sha256 mit Sign&Encrypt, so dass es in Ordnung ist, dies aktiviert zu lassen.
Wenn Sie sich nicht sicher sind, können Sie die Option "Höchste Sicherheitsstufe" deaktivieren und manuell den Modus und die Verschlüsselungsstufen auswählen, die dem entsprechen, was der OPC UA Server unterstützt (da sich diese Stufen im Laufe der Zeit ändern können, wenn höhere Verschlüsselungsstufen hinzugefügt werden). Für die Verbindung zur Systemplattform müssen wir Basic256Sha256 auswählen.
6. Login Mode - Für die Authentifizierung ist der OPC Router standardmäßig auf Anonymous eingestellt. Um Schreibvorgänge durchzuführen oder wenn anonyme Verbindungen in den OPC UA Einstellungen in System Platform deaktiviert wurden, müssen Sie hier den "User" und das "Password" für die System Platform Galaxie eingeben.
7. Verbindung prüfen - Mit dieser Schaltfläche können Sie bestätigen, dass Ihre Verbindungseinstellungen korrekt sind. Bei OPC UA sind jedoch einige zusätzliche Schritte erforderlich, bevor der Test erfolgreich abgeschlossen werden kann, da für verschlüsselte OPC UA-Verbindungen ein Zertifikatsaustausch erforderlich ist. Zuerst müssen wir also auf die Schaltfläche klicken:
A - Wir erhalten die folgende Warnung, da wir dem Sicherheitszertifikat von System Platform für die Verschlüsselung noch nicht vertraut haben - wir können dies tun, indem wir einfach auf "Ja" klicken (wir könnten das Zertifikat auch zuerst überprüfen, indem wir auf "Zertifikat anzeigen" klicken.
B- Der erste Versuch schlägt jedoch fehl, da das Zertifikat des OPC-Routers von der Systemplattform noch nicht als vertrauenswürdig eingestuft wurde. Bevor wir also eine erfolgreiche Verbindung herstellen und die Objekte, auf die wir von der System Platform aus zugreifen möchten, durchsuchen und auswählen können, müssen wir diese Vertrauensbeziehung herstellen.
C - Auf der Systemplattform Galaxy müssen wir zu C:\ProgramData\AVEVA\PCS\OPC UA Rejected Client Certificates\certs navigieren, wo wir das .der Zertifikat für OPC Router finden.
D - Als nächstes müssen wir das Zertifikat installieren, damit es als vertrauenswürdig eingestuft wird. Dazu müssen wir mit der rechten Maustaste auf die .der-Datei klicken und "Installieren" wählen.
E - Dadurch wird der Assistent für den Zertifikatsimport gestartet. Wählen Sie "Lokaler Rechner" als Speicherort und klicken Sie auf Weiter.
F - Jetzt wählen wir "Alle Zertifikate im folgenden Speicher ablegen", klicken auf Durchsuchen und wählen "Vertrauenswürdige Personen" aus der Liste, dann klicken wir auf Weiter.G - Bestätigen Sie, dass die Einstellungen korrekt sind, und klicken Sie auf Fertig stellen.
H - Sie erhalten dann eine Bestätigung, dass das Zertifikat erfolgreich importiert wurde.
I - Zurück im OPC-Router können Sie nun erneut auf die Schaltfläche Verbindung prüfen klicken, und der Vorgang wird nun erfolgreich abgeschlossen. Nun können wir fortfahren und die Knoten (d. h. Elemente oder Tags) konfigurieren, auf die wir in der System Platform zugreifen möchten.
Da nun alle Verbindungseinstellungen vollständig sind, können Sie auf OK klicken, um diesen Teil der Konfiguration abzuschließen.
C) Der nächste Schritt ist die Verwendung dieser neuen OPC UA Verbindung für die Datenübertragung in einer visuellen Workflow-Vorlage im OPC Router. In Anbetracht der Vielzahl von Optionen, die für den gesamten Workflow zur Verfügung stehen, werden wir in diesem Beitrag nur den OPC UA-Quellenteil der Konfiguration speziell für System Platform durchgehen.
Anschließend verweise ich Sie auf einige spezielle Anleitungen für vollständige Workflow-Szenarien, die es Ihnen ermöglichen, Daten von System Platform an Textdateien, SAP oder andere Systeme zu übertragen, indem Sie einfach Ihre OPC UA-Verbindung zu System Platform als Quelle im Workflow verwenden.
1. Gehen Sie also zum Abschnitt Verbindungen in der OPC-Router-Konfiguration, klicken Sie mit der rechten Maustaste auf Verbindungen (unter "Lokaler Dienst") und wählen Sie "Neue Verbindung" aus dem Menü.
2. Geben Sie einen repräsentativen Namen für diese Verbindung ein und drücken Sie Enter (Sie können die Verbindung jederzeit umbenennen, indem Sie mit der rechten Maustaste auf die Verbindung klicken und "Umbenennen" wählen).
3. Damit wird die neue Verbindung geöffnet. Um OPC UA Knoten/Elemente von AVEVA System Platform als Quelle im OPC Router zu verwenden, benötigen wir das OPC Data Access Transfer Object, das rechts unter OPC Transfer Objects im Abschnitt "Data Sources and Destinations" verfügbar ist.
4. Ziehen Sie eine Instanz des OPC Data Access Objekts in die Entwurfsvorlage (Sie können es an einer beliebigen Stelle platzieren - es kann später bei Bedarf verschoben werden).
5. Ein Doppelklick auf das OPC Data Access Objekt öffnet seine Eigenschaften, wo wir den OPC UA Server, den wir gerade konfiguriert haben, aus dem Dropdown-Menü "OPC Zugangsdaten" am oberen Rand auswählen können
6. Jetzt können wir auf die Schaltfläche "Tag Browser" unten links klicken, um die Knoten/Elemente auszuwählen, auf die wir von der Systemplattform unter dem Abschnitt "Modellansicht" zugreifen möchten (kreuzen Sie einfach das Kästchen neben jedem Zweig oder spezifischen Knoten/Element an), und klicken Sie dann auf die mittlere Schaltfläche "übernehmen", um die Einstellungen zu übernehmen.
7. Dadurch werden die ausgewählten Elemente zu unserem OPC-Datenzugriffsobjekt hinzugefügt, wo wir zum Übernehmen auf OK klicken können.
8. Dieses Objekt ist nun bereit, als Quelle für die Übertragung zu jeder anderen unterstützten Schnittstelle/Ziel zu dienen, die vom OPC Router unterstützt wird.
3. Konfigurieren Sie eine der anderen OPC-Router-Schnittstellen, um die Datenpunkte von AVEVA System Platform zu verwenden
Da das Ziel dieser Übung die gemeinsame Nutzung von System Platform Daten mit anderen Nicht-OPC UA Systemen ist, muss auch das Ziel dieser Daten definiert werden, damit sie in einem visuellen Workflow verwendet werden können. Ähnlich wie bei der Konfiguration der Verbindung zum UA-Server von System Platform müsste das entsprechende Plug-in für das Zielsystem konfiguriert werden, was angesichts der großen Vielfalt an verschiedenen Plug-ins, die im OPC Router verfügbar sind, den Rahmen dieses Beitrags sprengen würde.
4. Konfigurieren Sie einen visuellen Workflow in OPC Router, um Daten aus der AVEVA System Platform auf andere Systeme zu übertragen
An diesem Punkt kann das Plug-in für das Datenziel durch das entsprechende Transferobjekt (z.B. um eine konfigurierte Instanz des SAP Systems Plug-in zu verwenden, gibt es eine SAP Objects Gruppe von Transferobjekten) im Workflow referenziert werden und mit dem AVEVA System Platform Transferobjekt durch Verbindungspfeile verbunden werden.
Wenn beispielsweise Datenwerte in einem bestimmten Zeitintervall in eine Textdatei protokollieren werden sollen, könnte der Workflow so oder ähnlich aussehen:
Wenn Sie bereit sind, die Konfiguration zu aktivieren und mit der Kommunikation zu beginnen, gehen Sie zum Abschnitt "Go Productive" der Konfiguration und wählen Sie die Elemente aus, die in Ihrem Projekt verwendet werden.
Eine große Auswahl an Anleitungen für die anderen Schnittstellen des OPC Routers finden Sie im OPC Router Video Ressourcen Repository von Software Toolbox, wo Sie kostenlose On-Demand Tutorials finden. In Verbindung mit den Informationen aus diesem Beitrag können Sie Ihre AVEVA System Platform Daten mit einer Vielzahl von Systemen wie SAP, RESTful Web Services, Datenbanken und anderen austauschen. Probieren Sie es selbst aus mit der voll funktionsfähigen kostenlosen Testversion von OPC Router.