opc ua mit simatic s7-1500 und node-red - siemens · web viewdieses modul baut auf die beiden...

52
Lern-/Lehrunterlagen | TIA Portal Modul 092-303, Edition 08/2019 | Digital Industries, FA Frei verwendbar für Bildungs-/ F&E-Einrichtungen. © Siemens 2019. Alle Rechte vorbehalten. 4 document.docx Lern-/ LehrunterlagenSiemens Automation Cooperates with Education (SCE) | Ab Version V15.1 siemens.de/sce TIA Portal Modul 092-303 OPC UA mit SIMATIC S7-1500 und Node-RED

Upload: others

Post on 13-Feb-2021

14 views

Category:

Documents


0 download

TRANSCRIPT

OPC UA mit SIMATIC S7-1500 und Node-RED

Lern-/Lehrunterlagen | TIA Portal Modul 092-303, Edition 08/2019 | Digital Industries, FA

Lern-/Lehrunterlagen

Siemens Automation Cooperates with Education (SCE) | Ab Version V15.1

siemens.de/sce

TIA Portal Modul 092-303

OPC UA mit SIMATIC S7-1500 und Node-RED

Passende SCE Trainer Pakete zu dieser Lern-/Lehrunterlage

SIMATIC Steuerungen mit SIMATIC STEP 7 BASIC V15.1

· SIMATIC ET 200SP Distributed Controller CPU 1512SP F-1 PN Safety

Bestellnr.: 6ES7512-1SK00-4AB2

· SIMATIC CPU 1516F PN/DP Safety mit Software

Bestellnr.: 6ES7516-3FN00-4AB2

· SIMATIC S7 CPU 1516 PN/DP mit SoftwareBestellnr.: 6ES7516-3AN00-4AB3

· SIMATIC CPU 1512C-1 PN mit SoftwareBestellnr.: 6ES7512-1CK00-4AB6

· SIMATIC CPU 1512C-1 PN mit Software und PM 1507Bestellnr.: 6ES7512-1CK00-4AB1

· SIMATIC CPU 1512C-1 PN mit Software und CP 1542-5 (CP PROFIBUS)Bestellnr.: 6ES7512-1CK00-4AB7

· SIMATIC CPU 1512C-1 PN mit Software, PM 1507 und CP 1542-5 (CP PROFIBUS)Bestellnr.: 6ES7512-1CK00-4AB2

SIMATIC STEP 7 Software for Training

· SIMATIC STEP 7 Professional V15.1 - Einzel-LizenzBestellnr.: 6ES7822-1AA05-4YA5

· SIMATIC STEP 7 Professional V15.1 - 6+20er Klassenraumlizenz Bestellnr.: 6ES7822-1BA05-4YA5

· SIMATIC STEP 7 Professional V15.1 - 6+20er Upgrade-LizenzBestellnr.: 6ES7822-1AA05-4YE5

· SIMATIC STEP 7 Professional V15.1 - 20er Studenten-LizenzBestellnr.: 6ES7822-1AC05-4YA5

Open Source Plattform

· SIMATIC IOT2020 mit Intel Quark x1000, 512 MB RAM, 1 x Ethernet, 1 x USB

Bestellnr.: 124-4037 – Bestellbar über RS Components rs-components.com

· SIMATIC IOT2040 mit Intel Quark x1020 (+Secure Boot), 1 GB RAM, 2 x Ethernet, 2 x RS232/485, 1 x USB, RTCBestellnr.: 6ES7647-0AA00-1YA2

· SIMATIC IOT2000EDU S7 Software Controller ablauffähig auf IOT2020 und IOT2040Bestellnr.: 6ES7671-0LE00-0YB0

· SIMATIC IO-Shield: SIMATIC IOT2000 Input/Output Modul mit 5 DE, 2 DA, 2 AE, ARDUINO Shield für IOT2020/2040Bestellnr.: 6ES7647-0KA01-0AA2

· 3rd Party IO-Shield: IKHDS-Powershield für IOT2020/2040 mit 6 DE, 5 DA (Relais), 1 DA (PWM), 2 AE, 1 AA Bestellnr.: 100301 – Bestellbar über KAFTAN media UG kaftan-media.com/iot2000

Bitte beachten Sie, dass diese Trainer Pakete ggf. durch Nachfolge-Pakete ersetzt werden. Eine Übersicht über die aktuell verfügbaren SCE Pakete finden Sie unter: siemens.de/sce/tp

Fortbildungen

Für regionale Siemens SCE Fortbildungen kontaktieren Sie Ihren regionalen SCE Kontaktpartner:

siemens.de/sce/contact

Weitere Informationen rund um SCE

siemens.de/sce

VerwendungshinweisDie SCE Lern-/Lehrunterlage für die durchgängige Automatisierungslösung Totally Integrated Automation (TIA) wurde für das Programm “Siemens Automation Cooperates with Education (SCE)“ speziell zu Ausbildungszwecken für öffentliche Bildungs- und F&E-Einrichtungen erstellt. Siemens übernimmt bezüglich des Inhalts keine Gewähr.

Diese Unterlage darf nur für die Erstausbildung an Siemens Produkten/Systemen verwendet werden.

D. h. Sie kann ganz oder teilweise kopiert und an die Auszubildenden/Studierenden zur Nutzung im Rahmen deren Ausbildung/Studiums ausgehändigt werden. Die Weitergabe sowie Vervielfältigung dieser Unterlage und Mitteilung Ihres Inhalts ist innerhalb öffentlicher Aus- und Weiterbildungsstätten für Zwecke der Ausbildung oder im Rahmen des Studiums gestattet.

Ausnahmen bedürfen der schriftlichen Genehmigung durch Siemens. Alle Anfragen hierzu an [email protected].

Zuwiderhandlungen verpflichten zu Schadensersatz. Alle Rechte auch der Übersetzung sind vorbehalten, insbesondere für den Fall der Patentierung oder GM-Eintragung.

Der Einsatz für Industriekunden-Kurse ist explizit nicht erlaubt. Einer kommerziellen Nutzung der Unterlagen stimmen wir nicht zu.

Wir danken der TU Dresden, der Fa. Michael Dziallas Engineering und allen weiteren Beteiligten für die Unterstützung bei der Erstellung dieser SCE Lern-/Lehrunterlage.

Inhaltsverzeichnis

1Zielstellung8

2Voraussetzung8

3Benötigte Hardware und Software9

4Theorie10

4.1Node-RED Allgemein10

4.2OPC UA Allgemein*11

4.2.1Übersicht11

4.2.2Was ist OPC?11

5Aufgabenstellung13

6Planung13

7Strukturierte Schritt-für-Schritt-Anleitung14

7.1Dearchivieren eines vorhandenen TIA Portal-Projekts14

7.2Speichern, Übersetzen und Laden der S7-Station15

7.3IP-Adressen der Steuerung SIMATIC IOT2000 einstellen16

7.4Starten der Node-RED Bedienoberfläche17

7.5Installation der benötigten Nodes18

7.6Erstellen des neuen Drehzahlsollwertes22

7.7Zugriff auf den OPC UA Server25

7.8Debug Output des Sollwertes29

7.9Den Sollwert via OPC UA ändern31

7.10Sollwert in STEP 7 überprüfen35

7.11Visualisierung über das Dashboard36

7.12Setzen des Sollwertes über das Dashboard39

7.13Aktuellen Sollwert in STEP 7 überprüfen42

7.14Checkliste – Schritt-für-Schritt-Anleitung43

8Weiterführende Information44

OPC UA mit SIMATIC S7-1500 undNode-REDZielstellung

In den folgenden Seiten wird gezeigt wie plattformübergreifend mit Hilfe von OPC UA und Node-RED auf die Daten einer SIMATIC S7-1500 zugegriffen werden kann.

Voraussetzung

Dieses Modul baut auf die beiden Module „SCE_DE_092-302 Node-RED mit IOT2000“ und „SCE_DE_092-300 OPC UA mit SIMATIC S7-1500 als OPC Server“ auf.

Des Weiteren benötigt der IOT2000 eine funktionierende Internetverbindung. Dies können Sie am einfachsten erreichen, indem Sie den IOT auf DHCP stellen und an einen passenden Router anschließen.

Im Falle des IOT2040, können Sie die Schnittstelle X1 statisch konfigurieren (z. B. 192.168.0.1/24) und die Schnittstelle X2 mit dem Router verbinden. Diese ist auf DHCP voreingestellt. Die Subnetze für X1 und X2 dürfen sich dabei nicht überschneiden!

Hinweis:

Steuerungen und Programmierstation müssen sich im selben Ethernet Netzwerk befinden. Achten Sie auf die korrekte Adressierung aller Teilnehmer. Adressen dürfen nicht doppelt vergeben werden!

Benötigte Hardware und Software

1Engineering Station: Voraussetzungen sind Hardware und Betriebssystem

2Software SIMATIC STEP 7 Professional im TIA Portal – ab V15.1

3Software OPC Scout – ab V10

4Steuerung SIMATIC IOT2000, z. B. IOT2040

5Steuerung SIMATIC S7-1500, z. B. CPU 1516F-3 PN/DP – ab Firmware V2.1 mit Memory Card

6Ethernet-Verbindung zwischen Engineering Station und Steuerungen

3 OPC Scout ab V10

2 SIMATIC STEP 7 Professional (TIA Portal) ab V15.1

1 Engineering Station

6 Ethernet-Verbindung

5 Steuerung SIMATIC S7-1500 ab Firmware V2.1

4 Steuerung SIMATIC

IOT2000 mit Node-RED

TheorieNode-RED Allgemein

Node-RED ist ein freies Werkzeug bzw. eine Entwicklungsumgebung, um verschiedenste Hardwaregeräte, APIs und Online-Services zusammenzuschalten. Die Software wurde ursprüng-lich von IBM entwickelt und später als Open Source Software veröffentlicht. Sie wird seitdem stetig weiterentwickelt und steht jedem frei zur Verfügung.

Das Programm bietet eine Weboberfläche mit der datenstromorientiert (flow-based) program-miert werden kann, ähnlich dem Funktionsplan (FUP) oder Kontaktplan (KOP) in den Siemens Steuerungen. Die einzelnen zur Verfügung stehenden Bausteine heißen hier „Nodes“ und sind vergleichbar mit FCs bzw. FBs. Sie bieten Ein- und Ausgänge, mit denen die einzelnen Nodes verbunden werden können.

Daten können hierbei in Form von Nachrichten zwischen den Bausteinen übergeben werden. Dabei besteht jede Nachricht aus einem Titel, welcher als Topic bezeichnet wird, und einem Inhalt, Pay-load genannt. Diese Nachrichten werden als JSON (JavaScript Object Notation) dargestellt.

Neben den Standard Nodes gibt es eine aktive Community, die weitere Nodes entwickelt und frei zugänglich zur Verfügung stellt. Die öffentliche Bibliothek ist auf der Node-RED Webseite einsehbar: flows.nodered.org

Node-RED ist in JavaScript geschrieben und es besteht zusätzlich die Möglichkeit, eigene Nodes zu entwickeln. Eine Dokumentation dazu gibt es auf der Dokumentationsseite des Projekts: nodered.org/docs/

1.1 OPC UA Allgemein*1.1.1 Übersicht

OPC Foundation ist eine Interessenvereinigung namhafter Hersteller für die Definition von Standardschnittstellen. Diese hat in den letzten Jahren eine Vielzahl von Softwareschnittstellen definiert, um den Informationsfluss von der Prozess- bis zur Managementebene zu vereinheitlichen. Entsprechend der unterschiedlichen Anforderungen innerhalb einer industriellen Anwendung sind in der Vergangenheit verschiedene OPC (=Open Platform Communications) Spezifikationen entstanden: Data Access (DA), Alarm & Events (A&E), Historical Data Access (HDA) und Data eXchange (DX). Der Zugriff auf Prozessdaten ist in der DA Spezifikation beschrieben. A&E beschreibt eine Schnittstelle für ereignisbasierte Informationen inklusive Quittierung. HDA beschreibt Funktionen für archivierte Daten. Zudem definiert DX eine Server zu Server Querkommunikation.

Basierend auf den Erfahrungen dieser klassischen OPC Schnittstellen definierte die OPC Foundation auch eine neue Plattform mit dem Namen OPC Unified Architecture (UA). Ziel dieses Standards ist die generische Beschreibung und der einheitliche Zugriff auf alle Informationen, die zwischen Systemen bzw. Applikationen ausgetauscht werden müssen. Das schließt die Funktionalität aller bisherigen OPC Schnittstellen mit ein. Außerdem ist die Möglichkeit geschaffen worden, die Schnittstelle nativ in das jeweilige System zu integrieren. Dies ist unabhängig davon, auf welchem Betriebssystem das System läuft und mit welcher Programmiersprache das System erstellt wird.

1.1.2 Was ist OPC?

OPC war in der Vergangenheit eine Sammlung von Softwareschnittstellen zum Datenaustausch zwischen PC Anwendungen und Prozessgeräten. Diese Softwareschnittstellen waren entsprechend den Regeln von Microsoft COM (Component Object Model) definiert und damit auf Microsoft Betriebssystemen leicht integrierbar. COM bzw. DCOM (Distributed COM) stellt die Funktionalität der Interprozesskommunikation zur Verfügung und organisiert den Informationsaustausch zwischen Anwendungen, auch über Rechnergrenzen hinweg (DCOM). Ein OPC Client (COM Client) kann dadurch unter Verwendung von Mechanismen des Microsoft Betriebssystems mit einem OPC Server (COM Server) Informationen austauschen.

Der OPC Server stellt Prozessinformationen eines Gerätes an seiner Schnittstelle bereit. Der OPC Client verbindet sich mit dem Server und kann auf die angebotenen Daten zugreifen.

* aus SIEMENS Anwendungsbeispiel “Client-Beispiel für den OPC UA Server einer SIMATIC S7-1500“ Beitrags-ID: 109737901, V1.0, 06/2018

Die Verwendung von COM bzw. DCOM führt dazu, dass OPC Server und Clients nur auf einem Windows-PC oder im lokalen Netzwerk betrieben werden können und diese die Kommunikation zum entsprechenden Automatisierungssystem meist über proprietäre Protokolle realisieren müssen. Für die Netzwerkkommunikation zwischen Client und Server müssen oft zusätzliche Tunneling Tools eingesetzt werden, um durch Firewalls zu kommen oder um die komplizierte DCOM Konfiguration zu umgehen. Überdies kann nur mit C++ Applikationen nativ auf die Schnittstelle zugegriffen werden. NET- oder JAVA-Applikationen können nur über eine Wrapperschicht zugreifen. Diese Einschränkungen führen in der Praxis zu zusätzlichen Kommunikations- und Softwareschichten, welche den Konfigurationsaufwand und die Komplexität erhöhen.

Durch die große Verbreitung von OPC wird der Standard immer mehr zur generellen Kopplung von Automatisierungssystemen eingesetzt und nicht mehr nur für den ursprünglichen Anwendungsfall als Treiberschnittstelle in HMI- und SCADA-Systemen für den Zugriff auf Prozessinformationen.

Um die genannten Einschränkungen in der Praxis zu lösen und den zusätzlichen Anforderungen gerecht zu werden, hat die OPC Foundation in den letzten 7 Jahren eine neue Plattform mit dem Namen OPC Unified Architecture definiert. Diese bietet eine einheitliche Basis für den Informationsaustausch zwischen Komponenten und Systemen. OPC UA ist als IEC 62541 Standard verfügbar und bildet somit auch die Basis für andere internationale Standards.

OPC UA bietet folgende Features:

Zusammenfassung aller bisheriger OPC Features und Informationen, wie z.B. DA, A&E und HDA, in einer generischen Schnittstelle.

Verwendung offener und plattformunabhängiger Protokolle für die Interprozess- bzw. Netzwerkkommunikation.

Internetzugriff und Kommunikation durch Firewalls.

Integrierte Zugriffskontrolle und Sicherheitsmechanismen auf Protokoll- und Applikations-ebene.

Umfangreiche Abbildungsmöglichkeiten für objektorientierte Modelle; Objekte können Variablen und Methoden haben.

Erweiterbares Typensystem für Objekte und komplexe Datentypen.

Transportmechanismen und Modellierungsregeln bilden die Basis für andere Standards.

Skalierbarkeit von kleinen Embedded Systemen bis hin zu Unternehmensanwendungen und von einfachen DA Adressräumen bis hin zu komplexen, objektorientierten Modellen.

Aufgabenstellung

In diesem Modul wird von Node-RED aus ein Drehzahlsollwert in einer Anwendung von SIMATIC S7-1500 vorgegeben.

Die Manipulation des Sollwertes wird über OPC UA erfolgen, wobei Node-RED als OPC UA Client eingesetzt wird. Am Ende kann der Sollwert jetzt in Node-RED über ein Dashboard direkt mit dem Browser geändert werden.

Als Anwendung für SIMATIC S7-1500 wird das Projekt aus dem Modul “SCE_DE_092-300_OPC UA mit SIMATIC S7-1500 als OPC-Server“ verwendet.

Planung

Die S7-1500 Steuerung muss mit dem Projekt aus dem Modul 092-300 geladen werden.

Die Einrichtung des OPC UA Clients erfolgt über die Node-RED Programmierumgebung, unter Verwendung der Node node-red-contrib-opcua. Diese wird mit Hilfe der Palette in Node-RED aus dem Internet installiert.

Das Setzen des neuen Sollwertes durch den Bediener geschieht über die Nodes aus dem Paket node-red-dashboard. Auch dieses wird direkt aus dem Internet installiert.

Die korrekten Node ID der OPC UA Variable für den Drehzahlsollwert kann via Siemens OPC Scouts ermittelt werden.

Mit der Software SIMATIC STEP 7 Professional im TIA Portal lassen sich die Änderungen am Sollwert überprüfen.

Strukturierte Schritt-für-Schritt-Anleitung

Hier finden Sie eine Anleitung, wie Sie die Planung umsetzen können. Bei fortgeschrittenem Kenntnisstand reicht die Bearbeitung der nummerierten Schritte. Andernfalls empfiehlt sich die Orientierung an den Schritten der Anleitung.

1.2 Dearchivieren eines vorhandenen TIA Portal-Projekts

Bevor Sie das Projekt “sce-092-300-opc-ua-s7-1500…“ aus dem Modul “SCE_DE_092-300_OPC UA mit SIMATIC S7-1500 als OPC-Server“ laden können, müssen Sie es dearchivieren. Zum Dearchivieren eines vorhandenen Projekts verlassen Sie dieses und suchen unter Projekt Dearchivieren das jeweilige Archiv aus. Bestätigen Sie Ihre Auswahl anschließend mit Öffnen. ( Projekt Dearchivieren Auswahl eines .zap-Archivs … Öffnen)

Als Nächstes wählen Sie das Zielverzeichnis aus, in welches das dearchivierte Projekt gespeichert werden soll. Bestätigen Sie Ihre Auswahl mit “OK“. ( Zielverzeichnis … OK)

1.3 Speichern, Übersetzen und Laden der S7-Station

Klicken Sie auf den Ordner “CPU_1516F [CPU1516F-3 PN/DP]“, übersetzen Sie die gesamte Station und speichern Sie jetzt das Projekt. Nach erfolgreichem Übersetzen und Speichern, laden Sie die Station in die Steuerung. ( CPU_1516F [CPU1516F-3 PN/DP] )

IP-Adressen der Steuerung SIMATIC IOT2000 einstellen

Da in den Modulen „SCE_DE_014-101 Hardwarekonfiguration IOT2000EDU“ und „SCE_DE_ 092-300 OPC UA mit SIMATIC S7-1500 als OPC Server“, sowohl die S7-1500 Steuerung, als auch IOT2000 auf dieselbe IP-Adresse gestellt wurden, ändern Sie bitte die IP von SIMATIC IOT2000 auf die 192.168.0.2.

Dazu können Sie dem Abschnitt 4.3 im Modul „SCE_DE_014-101 Hardwarekonfiguration IOT2000EDU“ folgen.

Die Datei /etc/network/interfaces sollte auf einem IOT2040 z. B. wie folgt aussehen:

Hinweis:

Vergessen Sie nicht den IOT neu zu starten, damit die Änderungen an der Datei in Kraft treten.

Starten der Node-RED Bedienoberfläche

Öffnen Sie über den Browser eine Verbindung zur Node-RED Weboberfläche. Die Oberfläche ist unverschlüsselt über die IP des IOT2000 und den Port 1880 erreichbar.

Starten Sie Ihren Browser und rufen Sie die Entwicklungsumgebung auf.

( http://192.168.0.2:1880/)

Installation der benötigten Nodes

Für die Aufgaben in diesem Dokument werden Nodes benötigt, die nicht im Paket node-red enthalten sind.

Öffnen Sie das Menü und wählen Sie Manage palette

Wählen Sie die Registerkarte Install aus

Suchen Sie im Feld search modules nach dem Modul node-red-dashboard und installieren Sie das Modul mit Klick auf install

Hinweis:

Für die Installation muss Node-RED, beziehungsweise der IOT, auf das Internet zugreifen können!

Bestätigen Sie die Installation der Node mit Klick auf Install

Wiederholen Sie den Vorgang für das Modul node-red-contrib-opcua

Hinweis:

Für diese Installation muss Node-RED, beziehungsweise der IOT, ebenfalls auf das Internet zugreifen können!

Schließen Sie die Palette mit einem Klick auf Close

Überprüfen Sie, ob die neuen Nodes in der Node-Liste auf der linken Seite zur Verfügung stehen.

Erstellen des neuen Drehzahlsollwertes

Um auf eine Variable über OPC UA zugreifen zu können wird als Erstes eine Nachricht im Flow benötigt. Das Topic der Nachricht muss die gewünschte OPC UA Node ID beinhalten. Die Nachricht soll in regelmäßigen Abständen erzeugt werden.

Ziehen Sie aus dem Bereich input die Node inject in den Editor.

Hinweis:

Die Node „inject“ wird im Flow mit deren Payload „timestamp“ angezeigt.

Doppelklicken Sie auf die eingefügte inject Node, um deren Eigenschaften zu öffnen.

Ermitteln sie die OPC UA Node ID des Drehzahlsollwertes mit Hilfe des OPC Scouts.

Geben Sie als Topic die OPC UA Node ID des Drehzahlsollwertes ein und fügen den Datentyp Float mit ein. ( Topic: ns=3;s="DREHZAHL_MOTOR"."Drehzahlsollwert"; datatype=Float)

Wählen Sie unter Repeat den Punkt interval aus ( Repeat: interval)

Setzen Sie das Intervall auf 1 Sekunde ( every: 1 seconds)

Tragen Sie als Namen „Inject Drehzahlsollwert“ ein ( Name: „Inject Drehzahlsollwert“)

Bestätigen Sie die Änderungen mit einem Klick auf Done: ( Done)

Zugriff auf den OPC UA Server

Nachdem jetzt eine Nachricht im Flow verfügbar ist, kann diese an den OPC UA Server zur SIMATIC S7-1500 gesendet werden. Dafür wird die „OpcUa Client“ Node im Flow genutzt.

Diese Node nimmt Nachrichten entgegen und sendet deren Topic als Node ID und die Payload als Inhalt an den konfigurierten OPC UA Endpunkt. Dabei kann die Node verschiedene Aktionen, wie z. B. lesen oder schreiben, auf dem OPC UA Endpunkt ausführen.

Filtern Sie die Node-Liste nach „opcua“. ( : opcua)

Ziehen Sie die „OpcUa Client“ Node in den Editor.

Verbinden Sie den Ausgang der Inject Drehzahlsollwert Node mit dem Eingang der OPC UA Client Node.

Doppelklicken Sie auf die Node OPC UA Client, um deren Eigenschaften zu öffnen.

Vergewissern Sie sich, dass die Action auf READ steht. ( Action: READ)

Setzen Sie den Namen der Node auf „OPC UA lesen“. ( Name: „OPC UA lesen“)

Legen Sie einen neuen OPC UA Endpunkt an, indem Sie neben dem Feld Endpoint auf klicken: ( Endpoint: „Add new OpcUa-Endpoint…“ ).

Ermitteln Sie die Adresse des OPC UA Endpunktes der S7-1500 über die CPU Eigenschaften im TIA Portal.

Geben Sie den OPC UA Server auf der S7-1500 als Endpunkt ein: ( Endpoint: opc.tcp://192.168.0.1:4840).

Klicken Sie auf Add. um den neuen OPC UA Endpunkt anzulegen. ( Add)

Klicken Sie auf Done, um die aktuellen Änderungen an der „OPC UA Client“ Node zu bestätigen. ( Done)

Debug Output des Sollwertes

Der soeben erstellte Flow injiziert sekündlich eine Nachricht und übergibt diese an den OPC UA Client, welcher daraufhin einen Lesebefehl an die S7-1500 sendet. Das Ergebnis dieses Lesebefehls stellt die OPC UA Client Node an deren Ausgang als Nachricht bereit.

Die einfachste Methode Nachrichten aus dem Flow anzuzeigen bietet die debug Konsole auf der rechten Seite. Diese Methode kann an jeder Stelle im Flow genutzt werden und unterstützt bei der Fehlersuche.

Ziehen Sie die Node debug aus der Kategorie output in den Editor.

Hinweis:

Die Node „debug“ wird hier mit deren Payload „msg payload“ angezeigt.

Verbinden Sie die neue Node mit dem Ausgang der OPC UA lesen Node.

Klicken Sie auf Deploy, um die Änderungen und den Flow zu aktivieren. ( Deploy)

Im Reiter debug auf der rechten Seite sollte nun die NodeID und der dazugehörige Wert aus der Steuerung angezeigt werden:

Hinweis:

Etwaige Fehlermeldungen des Flows tauchen hier auch auf, z. B. wenn die NodeID nicht gefunden oder der Datentyp im Topic falsch eingegeben wurde. Die Debug-Ausgabe kann durch das kleine grüne Kästchen rechts an der debug Node live deaktiviert und wieder aktiviert werden.

Den Sollwert via OPC UA ändern

Nachdem der Sollwert erfolgreich via OPC UA von der CPU gelesen wird, soll dieser auch aktiv manipuliert werden.

Erstellen Sie eine neue inject Node.

Hinweis:

Die Node „inject“ wird im Flow mit deren Payload „timestamp“ angezeigt.

Ermitteln Sie die OPC UA Node ID des Drehzahlsollwertes mit Hilfe des OPC Scout.

Doppelklicken Sie auf die neue inject Node, um deren Eigenschaften zu öffnen.

Wählen Sie unter Payload die Option Number aus und geben Sie einen Wert an. ( Payload: Number: 10)

Setzen Sie als Topic erneut die OPC UA Node ID und den Datentyp des Drehzahlsollwertes. ( Topic: ns=3;s="DREHZAHL_MOTOR"."Drehzahlsollwert";datatype=Float)

Geben Sie unter Name einen sprechenden Namen für die Node an. ( Name: „Neuer Drehzahlsollwert“)

Bestätigen Sie die Einstellungen mit Done. ( Done)

Erstellen Sie eine weitere OPC UA Client Node.

Verbinden Sie den Ausgang von Neuer Drehzahlsollwert mit der neuen OPC UA Client Node.

Gehen Sie in die Eigenschaften der neuen OPC UA Client Node.

Wählen Sie unter Endpoint den bereits vorhandenen Endpunkt aus. ( Endpoint: opc.tcp://192.168.0.1:4840)

Stellen Sie die Action auf WRITE. ( Action: WRITE)

Setzen Sie den Namen der Node auf „OPC UA schreiben“. ( Name: „OPC UA schreiben)

Bestätigen Sie die Einstellungen mit Done. ( Done)

Aktivieren Sie die Änderungen im Flow über Deploy. ( Deploy)

Stoßen Sie anschließend ein manuelles Injizieren der neuen Nachricht an, indem Sie auf das blaue Kästchen links von Neuer Drehzahlsollwert klicken.

Sofern der Befehl einwandfrei ausgeführt wurde, sollte im debug Bereich der aktualisierte Sollwert angezeigt werden.

Hinweis:

Achten Sie darauf, dass die debug Node aktiviert ist!

Sollwert in STEP 7 überprüfen

Der aktuelle Sollwert kann auch mit Hilfe von STEP 7 überprüft werden.

Öffnen Sie im TIA Portal den Datenbaustein DREHZAHL_MOTOR.

Beobachten Sie den Datenbaustein DREHZAHL_MOTOR mit einem Klick auf .

Der aktuelle Wert kann nachfolgend in der Spalte Beobachtungswert abgelesen werden.

Visualisierung über das Dashboard

Neben dem Lesen des Sollwertes aus der S7-1500 CPU schreibt der Flow jetzt auch erfolgreich einen statischen Sollwert in die S7-1500.

Um den Drehzahlsollwert zu visualisieren und dynamisch vorgeben zu können, wird nun das Dashboard genutzt. Als Erstes gilt es ein Tab und eine Gruppe auf dem Dashboard anzulegen, bevor Elemente angezeigt werden können.

Öffnen Sie auf der rechten Seite den Reiter dashboard. ( dashboard)

Wählen Sie innerhalb des Tabs dashboard den Reiter Layout. ( Layout)

Fügen Sie über einen neuen Reiter zu Ihrem Dashboard hinzu. ( )

Erstellen Sie innerhalb von Tab 1 über eine neue Gruppe. ( )

Ziehen Sie aus der Kategorie dashboard eine text Node in den Flow.

Verbinden Sie diese mit dem Ausgang der OPC UA lesen node.

Öffnen Sie die Eigenschaften der neuen text Node.

Setzen Sie Group auf die eben erstellte Gruppe [Tab 1] Group 1. ( Group: [Tab 1] Group 1)

Setzen Sie Size auf 1x1. ( Size: 1x1)

Löschen Sie den Inhalt des Feldes Label. ( Label: leer)

Geben Sie unter Name einen Namen für das Element ein, z. B. Drehzahlsollwert. ( Name: Drehzahlsollwert)

Bestätigen Sie die Änderungen mit Done. ( Done)

Klicken Sie Deploy, um die Änderungen am Flow zu aktivieren.

Klicken Sie rechts im Reiter Dashboard auf , um das Dashboard zu öffnen. ()

Hinweis:

Das Dashboard aktualisiert sich selbstständig. Wird der Sollwert in der CPU geändert, so sollte der neue Wert hier automatisch angezeigt werden.

Setzen des Sollwertes über das Dashboard

Der Sollwert wird mit Hilfe der slider Node im Dashboard verändert. Als Steuerelement hat diese Node einen Ausgang, der bei einer Änderung eine Nachricht mit dem neuen Wert in den Flow injiziert. Diese Nachricht kann nun mittels des OPC UA Client in die SPS geschrieben werden.

Wechseln Sie wieder in den Node-RED Editor und fügen Sie eine slider Node zum Flow.

Verbinden Sie den Ausgang des OPC UA lesen Node mit der slider Node. Dadurch steht der Schieberegler immer auf dem aktuell gelesenen Wert.

Gehen Sie in die Eigenschaften der slider Node.

Wählen Sie unter Group erneut [Tab 1] Group 1 aus. ( Group: [Tab 1] Group 1)

Setzen Sie Size auf 5x1. ( Size: 5x1)

Löschen Sie den Inhalt des Feldes Label. ( Label: leer)

Stellen Sie die Range auf min. -50, max. 50 und step 1. ( Range min.: -50 max.: 50 step 1)

Stellen Sie Output auf Only on release. ( Output: Only on release)

Deaktivieren Sie den Punkt „If msg arrives on input, pass through to output“. ( If msg arrives on input pass through to output: deaktiviert)

Geben Sie als Topic die NodeID und den Datentyp des Drehzahlsollwertes an.( Topic: ns=3;s="DREHZAHL_MOTOR"."Drehzahlsollwert";datatype=Float)

Geben Sie unter Name einen sprechenden Namen für das Element ein, z. B. Drehzahlregler. ( Name: Drehzahlregler)

Bestätigen Sie die Änderungen mit Done. ( Done)

Verknüpfen Sie den Ausgang der Drehzahlregler Node mit dem Eingang der OPC UA schreiben Node.

Entfernen Sie die Neuer Drehzahlsollwert Node. ( Neuer Drehzahlsollwert Node auswählen Entf drücken)

Klicken Sie Deploy, um die Änderungen am Flow zu aktivieren.

Wechseln Sie auf das Dashboard und nutzen Sie den Slider, um den Drehzahlsollwert zu ändern.

Aktuellen Sollwert in STEP 7 überprüfen

Überprüfen Sie erneut mit STEP 7, ob der Drehzahlsollwert auf der CPU geändert wurde.

Öffnen Sie im TIA Portal den Datenbaustein DREHZAHL_MOTOR

Beobachten Sie den Datenbaustein DREHZAHL_MOTOR mit einem Klick auf .

Der aktuelle Wert kann nachfolgend in der Spalte Beobachtungswert abgelesen werden.

Checkliste – Schritt-für-Schritt-Anleitung

Die nachfolgende Checkliste hilft den Auszubildenden/Studierenden selbständig zu überprüfen, ob alle Arbeitsschritte der Schritt-für-Schritt-Anleitung sorgfältig abgearbeitet wurden und ermöglicht eigenständig das Modul erfolgreich abzuschließen.

Nr.

Beschreibung

Geprüft

1

IP-Einstellungen der Steuerung SIMATIC IOT2000 angepasst

2

Node „node-red-dashboard“ installiert

3

Node „node-red-contrib-opcua“ installiert

4

Drehzahlsollwert aus der S7-1500 ausgelesen

5

Drehzahlsollwert statisch in die S7-1500 geschrieben

6

Aktuellen Sollwert in STEP 7 überprüft

7

Drehzahlsollwert auf dem Dashboard visualisiert

8

Drehzahlsollwert über den Slider geändert

9

Aktuellen Sollwert in STEP 7 überprüft

Tabelle 1.1

Weiterführende Information

Zur Einarbeitung bzw. Vertiefung finden Sie als Orientierungshilfe weiterführende Informationen, wie z. B.: Getting Started, Videos, Tutorials, Apps, Handbücher, Programmierleitfaden und Trial Software/Firmware, unter nachfolgendem Link:

siemens.de/sce/opc

Voransicht “Weiterführende Informationen“

Weitere Informationen

Siemens Automation Cooperates with Educationsiemens.de/sce

SCE Lern/Lehrunterlagensiemens.de/sce/module

SCE Trainer Paketesiemens.de/sce/tp

SCE Kontakt Partner siemens.de/sce/contact

Digital Enterprisesiemens.de/digital-enterprise

Industrie 4.0 siemens.de/zukunft-der-industrie

Totally Integrated Automation (TIA)siemens.de/tia

TIA Portalsiemens.de/tia-portal

SIMATIC Controllersiemens.de/controller

SIMATIC Technische Dokumentation siemens.de/simatic-doku

Industry Online Supportsupport.industry.siemens.com

Katalog- und Bestellsystem Industry Mall mall.industry.siemens.com

SiemensDigital Industries, FAPostfach 484890026 NürnbergDeutschland

Änderungen und Irrtümer vorbehalten© Siemens 2019

siemens.de/sce

Frei verwendbar für Bildungs- / F&E-Einrichtungen. © Siemens 2019. Alle Rechte vorbehalten.

Frei verwendbar für Bildungs-/ F&E-Einrichtungen. © Siemens 2019. Alle Rechte vorbehalten.42sce-092-303-opc-ua-s7-1500-node-red-de.docx