Entdecken Sie eBooks
Kategorien
Entdecken Sie Hörbücher
Kategorien
Entdecken Sie Zeitschriften
Kategorien
Entdecken Sie Dokumente
Kategorien
COCKPIT Anwendungshinweis
Gebäude
Automation
WAGO-I/O-
PRO V2.3
WAGO-I/O-SYSTEM 750
WagoAppCloud
Version 1.5.1
Public
2 e!COCKPIT Anwendungshinweis – WagoAppCloud
WAGO-I/O-SYSTEM 750
Hansastraße 27
D-32423 Minden
E-Mail: info@wago.com
Web: http://www.wago.com
Technischer Support
E-Mail: support@wago.com
Wir weisen darauf hin, dass die in diesem Dokument verwendeten Soft- und
Hardwarebezeichnungen und Markennamen der jeweiligen Firmen im
Allgemeinen einem Warenzeichenschutz, Markenzeichenschutz oder
patentrechtlichem Schutz unterliegen.
Public
Anwendungshinweis WagoAppCloud Beschreibung 3
WAGO-I/O-SYSTEM 750
Urheberschutz
Diese Dokumentation, einschließlich aller darin befindlichen Abbildungen, ist
urheberrechtlich geschützt. Jede Weiterverwendung dieser Dokumentation, die
von den urheberrechtlichen Bestimmungen abweicht, ist nicht gestattet. Die
Reproduktion, Übersetzung in andere Sprachen sowie die elektronische und
fototechnische Archivierung und Veränderung bedarf der schriftlichen
Genehmigung der WAGO GmbH & Co. KG, Minden. Zuwiderhandlungen ziehen
einen Schadenersatzanspruch nach sich.
WAGO ist eine eingetragene Marke der WAGO Verwaltungsgesellschaft mbH.
Schriftkonventionen
Tabelle 2: Schriftkonventionen
Schriftart Bedeutung
kursiv Namen von Pfaden und Dateien werden kursiv dargestellt z. B.:
C:\Programme\WAGO-I/O-CHECK
Menü Menüpunkte werden fett dargestellt z. B.:
Speichern
> Ein „Größer als“- Zeichen zwischen zwei Namen bedeutet die
Auswahl eines Menüpunktes aus einem Menü z. B.:
Datei > Neu
Eingabe Bezeichnungen von Eingabe- oder Auswahlfeldern werden fett
dargestellt z. B.:
Messbereichsanfang
„Wert“ Eingabe- oder Auswahlwerte werden in Anführungszeichen
dargestellt z. B.:
Geben Sie unter Messbereichsanfang den Wert „4 mA“ ein.
[Button] Schaltflächenbeschriftungen in Dialogen werden fett dargestellt und
in eckige Klammern eingefasst z. B.:
[Eingabe]
[Taste] Tastenbeschriftungen auf der Tastatur werden fett dargestellt und in
eckige Klammern eingefasst z. B.:
[F5]
Public
4 Beschreibung Anwendungshinweis WagoAppCloud
WAGO-I/O-SYSTEM 750
Symbole
Public
Anwendungshinweis WagoAppCloud Beschreibung 5
WAGO-I/O-SYSTEM 750
Rechtliche Grundlagen
Änderungsvorbehalt
Die WAGO GmbH & Co. KG behält sich Änderungen, die dem technischen
Fortschritt dienen, vor. Alle Rechte für den Fall der Patenterteilung oder des
Gebrauchmusterschutzes sind der WAGO GmbH & Co. KG vorbehalten.
Fremdprodukte werden stets ohne Vermerk auf Patentrechte genannt. Die
Existenz solcher Rechte ist daher nicht auszuschließen.
Personalqualifikation
Der in diesem Dokument beschriebene Produktgebrauch richtet sich
ausschließlich an Fachkräfte mit einer Ausbildung in der SPS-Programmierung,
Elektrofachkräfte oder von Elektrofachkräften unterwiesene Personen, die
außerdem mit den geltenden Normen vertraut sind.
Haftungsbeschränkung
Diese Dokumentation beschreibt den Einsatz diverser Hardware- und
Softwarekomponenten in spezifischen Beispielanwendungen. Die Komponenten
können Produkte oder Teile von Produkten unterschiedlicher Hersteller darstellen.
Hinsichtlich bestimmungsgemäßer und sicherer Verwendung der Produkte gelten
ausschließlich die jeweiligen Gebrauchsanleitungen der Hersteller. Für deren
Inhalte sind ausschließlich die jeweiligen Hersteller der Produkte verantwortlich.
Die Verantwortung für die sichere Verwendung einer konkreten Software- oder
Hardwarekonfiguration liegt bei demjenigen, der sie erstellt bzw. betreibt. Dies
gilt auch dann, wenn bei der Realisierung eines der in diesem Dokument
beschriebenen Konzepte umgesetzt wurde.
Die WAGO GmbH & Co. KG übernimmt für Realisierungen dieser Konzepte
keine Haftung.
Public
6 Beschreibung Anwendungshinweis WagoAppCloud
WAGO-I/O-SYSTEM 750
Inhaltsverzeichnis
Inhaltsverzeichnis .................................................................................................. 6
1 Beschreibung ................................................................................................ 7
1.1 Einführung................................................................................................. 7
1.2 Überblick ................................................................................................... 8
1.2.1 Datenprotokolle .................................................................................... 9
1.2.2 IEC-Bibliothek ................................................................................... 10
1.2.3 Linux Applikation .............................................................................. 12
2 Verwendetes Material ................................................................................ 13
2.1 Erforderliche Bibliotheken ...................................................................... 13
2.2 Geräte ...................................................................................................... 13
2.3 Versionen der Firmware und SPS-Bibliotheken ..................................... 13
3 SPS-Applikation erstellen ......................................................................... 14
3.1 Daten an die Cloud senden ...................................................................... 14
3.1.1 Einschränkungen ................................................................................ 18
3.2 Befehle von der Cloud empfangen .......................................................... 20
4 Inbetriebnahme .......................................................................................... 22
4.1 Allgemeine Hinweise .............................................................................. 22
4.1.1 Herstellen einer Internetverbindung mit dem PFC ............................. 22
4.1.2 Genutzte Ports der Cloud Connectivity .............................................. 23
4.1.3 Internetverbindung über einen Web-Proxy-Server ............................ 23
4.1.4 Zeit-Synchronisation aktivieren ......................................................... 23
4.2 Cloud Connectivity ................................................................................. 25
4.2.1 WAGO Cloud ..................................................................................... 25
4.2.2 Microsoft Azure.................................................................................. 27
4.2.3 Amazon Web Services (AWS) ........................................................... 33
4.2.4 IBM Cloud .......................................................................................... 38
4.2.5 SAP IoT Services ............................................................................... 43
4.2.6 MQTT Any Cloud Beispiel: Cumulocity ........................................... 48
4.2.7 Speicherung ........................................................................................ 53
5 Anhang ....................................................................................................... 55
5.1 Aktualisierung der Cloud Connectivity .................................................. 55
5.1.1 Installieren der Linux Applikation ..................................................... 55
5.1.2 IEC-Bibliothek ................................................................................... 56
5.2 SCADA System Ignition (Sparkplug) ..................................................... 57
5.2.1 Übersicht der Architektur ................................................................... 57
5.2.2 Konfiguration der Cloud Connectivity für Ignition............................ 59
5.2.3 Konfiguration in Ignition .................................................................... 59
5.2.4 Inbetriebnahme der SPS-Applikation mit Ignition ............................. 59
5.3 Beispiele der Richtlinien (Policy) für AWS ............................................ 62
5.3.1 Richtlinie ohne Einschränkung........................................................... 62
5.3.2 Mögliche Richtlinie für das WAGO Protocol v1.0 ............................ 63
5.3.3 Mögliche Richtlinie für das WAGO Protocol v1.2 ............................ 64
Public
Anwendungshinweis WagoAppCloud Beschreibung 7
WAGO-I/O-SYSTEM 750
1 Beschreibung
In der heutigen Zeit wird es immer wichtiger, Daten von einer Industriesteuerung in einer Cloud zur
Verfügung zu stellen. In diesem Anwendungshinweis werden die Schritte erklärt, wie der
PFC100/PFC200 – im Folgenden nur noch als PFC1 bezeichnet – in die Lage versetzt werden kann,
Daten aus dem SPS-Programm an einen Cloud-Dienst zu senden und in Abhängigkeit vom
verwendeten Cloud-Dienst Befehle aus der Cloud zu empfangen.
1.1 Einführung
Das Ziel des industriellen Internet der Dinge2 (IoT) ist es, intelligentere Produkte und Anwendungen
durch das Sammeln und Verstehen der Daten zu erreichen. Die Daten werden von „Dingen“ über das
Internet und den Cloud-Technologien bereitgestellt.
Typischerweise sind diese „Dinge“ die Sensoren, Aktoren und weitere Geräte für die
Automatisierungstechnik. Diese Geräte verfügen im Normalfall jedoch nicht über eine
Internetschnittstelle. Deswegen sind Gateways notwendig, um diese Geräte über das Internet mit der
Cloud verbinden zu können.
Als Gateway für die IoT-Anwendungen bietet sich der Controller PFC von WAGO an. Es kann die
Daten der einzelnen Geräte sammeln und über die eingebaute Ethernet-Schnittstelle oder dem
Mobilfunkmodul auf das Internet zugreifen.
Verschiedene Cloud-Dienste wie z.B. Microsoft Azure und Amazon Web Services bieten die
Möglichkeit eigene Cloud-Applikationen zu erstellen. Es bietet Dienstleistungen zur Bereitstellung von
Tausenden Telemetrie-Daten pro Sekunde, Datenarchivierung und –Analyse sowie zur Erstellung von
Benutzeroberflächen zur Visualisierung der Daten.
Die in diesem Anwendungshinweis beschriebene Lösung zeigt wie ein SPS-Programm, welches auf
dem PFC ausgeführt wird, mit einem Cloud-Dienst kommunizieren kann.
Public
8 Beschreibung Anwendungshinweis WagoAppCloud
WAGO-I/O-SYSTEM 750
1.2 Überblick
Die folgende Abbildung gibt einen Überblick über die einzelnen Bestandteile, der in dieser
vorgestellten Software zur Anbindung an die Cloud.
Als Artefakte beinhaltet Cloud Connectivity IEC Bibliotheken für e!Cockpit sowie eine Linux
Applikation, welche auf dem PFC als Dienst (Daemon) ausgeführt wird. Auf diese wird in der weiteren
Beschreibung näher drauf eingegangen.
Die Cloud-Applikation ist nicht Bestandteil dieser Beschreibung und wird in der Regel vom Kunden
implementiert, entsprechend seinen Anforderungen und anhand der in der Spezifikation
dokumentierter Nachrichtenformate. Allerdings steht den Kunden von WAGO mit WAGO Cloud bereits
heute eine fertig implementierte Cloud-Applikation zur Verfügung. Diese basiert auf dem Cloud-Dienst
Microsoft Azure.
Eine erste Inbetriebnahme zur WAGO Cloud, sowie anderen Cloud-Diensten wird im Kapitel 4.2.1
näher beschrieben.
Public
Anwendungshinweis WagoAppCloud Beschreibung 9
WAGO-I/O-SYSTEM 750
1.2.1 Datenprotokolle
Cloud Connectivity unterstützt verschiedene Datenprotokolle zur Datenübertragung zwischen PFC
(SPS-Programm) und Cloud. Folgendes Diagramm zeigt übersichtsweise die Nutzung der
beschriebenen Datenprotokolle.
• WAGO Protocol
Bei der Verwendung von WAGO Protocol kann ein SPS-Programm seine Prozessdaten
komfortabel erfassen und an die Cloud-Applikation senden. Weiterhin kann SPS-Programm
eigene Kommandos definieren und veröffentlichen. Die Ausführung dieser Kommandos
könnte dann von der Cloud-Applikation angestoßen werden. WAGO Protocol kann zur
Anbindung des Controllers an beliebigen Cloud-Diensten verwendet werden.
Das WAGO Protocol kann mit folgenden Cloud Plattformen verwendet werden:
- WAGO Cloud
- Azure
- Amazon Web Services (AWS)
- IBM Cloud
- MQTT AnyCloud
• Native MQTT
Das SPS-Programm übernimmt hier unter anderem die Rolle und Verantwortung eines „Thing“
(IoT) bzw. MQTT-Clients. Das SPS-Programm hat hier die Verantwortung die Nachrichten
selbst zu erzeugen und das Versenden anzustoßen. Damit hat er volle Kontrolle über
ausgehende Nachrichten sowie deren Formatierung.
Public
10 Beschreibung Anwendungshinweis WagoAppCloud
WAGO-I/O-SYSTEM 750
• Sparkplug
Sparkplug (Sparkplug payload B) ist eine Spezifikation von Cirrus Link in welchem die
gesendeten MQTT Nachrichten näher definiert werden. Die genaue Bezeichnung der
MQTT Topics, MQTT Nachrichteninhalt (Payload) und die Reihenfolge der festgelegten
Nachrichtenpakete sind in der Spezifikation festgelegt. Durch die Unterstützung der Sparkplug
Spezifikation können Daten vom PFC zu SCADA Systemen, wie beispielsweise Ignition,
versendet werden. Im SPS-Programm können die Prozessdaten, ähnlich wie auch beim
Datenprotokoll WAGO Protocol, erfasst und konfiguriert werden. Weiterhin können auch
Kommandos im SPS-Programm definiert und von dem SCADA System zum PFC versendet
werden.
Die Linux Applikation sorgt dafür, dass die MQTT Nachrichten die Sparkplug Spezifikation
unterstützen.
Das Datenprotokoll Sparkplug kann mit folgenden Cloud Plattformen verwendet werden:
- Amazon Web Services (AWS)
- MQTT AnyCloud
1.2.2 IEC-Bibliothek
WagoAppCloud für e!Cockpit ist eine IEC 61131-Bibliothek welche bei der Programmierung von
SPS-Applikationen für verschiedene IoT Szenarien genutzt werden kann. Für das festgelegte
Datenprotokoll muss die SPS-Applikation die dafür vorgesehen Funktionsbausteine verwenden.
• WagoAppCloud_FbCommandListener_Example1.ecp
Variablen des SPS-Programms werden in verschiedene Collections gruppiert. Die Werte der
Variablen werden zyklisch erfasst und an die Cloud gesendet. SPS-Programm veröffentlicht
ein Kommando und zeigt wie dieses behandelt werden kann.
• WagoAppCloud_FbCollectionLogger_Example2.ecp
Variablen des SPS-Programms werden in verschiedene Collections gruppiert. Bestimmte
Variablenwerte werden ereignisbedingt erfasst und an die Cloud gesendet.
Beim Datenprotokoll WAGO Protocol können die folgenden Funktionsbausteine der Bibliothek
verwendet werden:
• FbCollectionLogger_2
• FbCommandConfigurator_2
• FbCommandListener_2
• FbCommandResponder_2
• FbStatus_WagoProtocol_2
Public
Anwendungshinweis WagoAppCloud Beschreibung 11
WAGO-I/O-SYSTEM 750
Beim Datenprotokoll Native MQTT können die folgenden Funktionsbausteine der Bibliothek verwendet
werden:
• FbPublishMQTT_2
• FbSubscribeMQTT_2
• FbStatus_NativeMQTT_2
Datenprotokoll Sparkplug
Die Konfiguration der Datenpunkte in der IEC-Applikation beim Datenprotokoll Sparkplug ist sehr
ähnlich wie beim Datenprotokoll WAGO Protocol.
Rückmeldungen eines Kommandos (CommandResponse) werden beim Datenprotokoll Sparkplug von
der Sparkplug Spezifikation nicht unterstützt.
Beim Datenprotokoll Sparkplug können die folgenden Funktionsbausteine der Bibliothek verwendet
werden:
• FbCollectionLogger_2
• FbCommandConfigurator_2
• FbCommandListener_2
• FbStatus_WagoProtocol_2
Public
12 Beschreibung Anwendungshinweis WagoAppCloud
WAGO-I/O-SYSTEM 750
Bei Abbruch der Internetverbindung des PFC’s puffert die Applikation die zu sendenden Daten im
Zwischenspeicher. Die Linux Applikation ist zuständig für automatisches Reconnect.
Auch alle anderen Konfigurationsoptionen für die Linux Applikation werden im WBM vorgenommen.
Das Datenprotokoll von Cloud Connectivity ist eines dieser Optionen.
Ob die Pufferung im RAM oder auf eine SD-Karte stattfinden soll, ist im Web Based Management
(WBM) für das Datenprotokoll WAGO Protocol auswählbar.
Datenprotokoll Sparkplug
Die Linux Applikation leitet die Daten aus dem SPS-Programm in einem komprimierten Datenformat
‘Google Protocol Buffer‘ an den Broker weiter. Die Linux Applikation sorgt für die Einhaltung der
Sparkplug Spezifikation.
Public
Anwendungshinweis WagoAppCloud Verwendetes Material 13
WAGO-I/O-SYSTEM 750
2 Verwendetes Material
2.1 Erforderliche Bibliotheken
Bibliothek Beschreibung
2.2 Geräte
Lieferant Anzahl Bezeichnung Bestellnummer
Public
14 SPS-Applikation erstellen Anwendungshinweis WagoAppCloud
WAGO-I/O-SYSTEM 750
3 SPS-Applikation erstellen
In diesem Kapitel wird die Implementierung einer SPS-Applikation für das Datenprotokoll
WAGO Protocol und bei Verwendung von e!Cockpit näher beschrieben. Als Orientierung zur
Implementierung der eigenen SPS-Applikation sind die referenzierten Beispielprogramme hilfreich. Im
Folgenden wird die Erstellung einer SPS-Applikation mit dem WAGO Protocol der Version 1.2
dargestellt (weitere Informationen zum WAGO Protocol und den Versionen sind in der
WAGO Protocol Spezifikation beschrieben).
Public
Anwendungshinweis WagoAppCloud SPS-Applikation erstellen 15
WAGO-I/O-SYSTEM 750
Eine Collection ist ein Container für einen Satz von Variablen welche die einzelnen zueinander
gehörigen Variablenbeschreibungen miteinander bündelt. Jede Collection benötigt eindeutige ID und
Namen (zur Anzeige in der Cloud).
Collection geben dem SPS-Programmierer die Möglichkeit seine Variablen sinnvoll und übersichtlich
strukturieren zu können. Insbesondere bei der zyklischen Datenübertragung bietet die Aufteilung der
Variablen in einzelne Collections Vorteile, weil der SPS-Programmierer für jede Collection individuell
den Abtast- und Übertragungsintervall festlegen kann. Dadurch kann die Datenmenge reduziert
werden indem analysiert wird, welche Variablen in welchem Intervall benötigt werden und die
Intervalle dementsprechend angepasst werden. Das Abtastintervall bestimmt dabei den Zeitabstand
zwischen den aufgenommenen Variablenwerten. Das Übertragungsintervall ist die Zeit in der die
aufgenommenen Datenpakete an die Cloud gesendet werden.
Public
16 SPS-Applikation erstellen Anwendungshinweis WagoAppCloud
WAGO-I/O-SYSTEM 750
t
Variable1
t
Variable2
t
Sample Intervall
t
Publish Intervall
Public
Anwendungshinweis WagoAppCloud SPS-Applikation erstellen 17
WAGO-I/O-SYSTEM 750
Upper
Level
Lower
Level
t
Variable1
(3) (5)
t
VariableTrigger1
Upper
Level
Lower
Level
t
Variable2
(2) (6)
t
VariableTrigger2
t
Publish Intervall
(1) transmit all (3) transmit (4) transmit all (6) transmit all
variables to variable 1 to variables to variables to the
the cloud the cloud the cloud cloud
Eine einfache Implementierung um Daten an die Cloud zu senden kann anhand der Beispiele
WagoAppCloud_FbCollectionLogger_Example1.ecp (für das zyklische Senden) und
WagoAppCloud_FbCollectionLogger_Example2.ecp (für das eventbasierte Senden) nachvollzogen
werden.
4 Bei dem Beispiel zur eventbasierten Datenübertragung sind in der SPS-Applikation Schwellenwerte
für die Variablen festgelegt worden. Durch Überschreitung der oberen Schwelle oder durch
Unterschreitung der unteren Schwelle wird ein Event gesetzt. Der Collection-Trigger ist vom
SPS-Programmierer unabhängig vom Variablenverlauf gesetzt worden. Dies ist ein Beispiel und soll
veranschaulichen wie die eventbasierte Übertragung genutzt werden kann. Der SPS-Programmierer
kann durch Setzen der Trigger selbst entscheiden wann er es für sinnvoll hält ein Event auszulösen
um die Daten an die Cloud zu senden.
Public
18 SPS-Applikation erstellen Anwendungshinweis WagoAppCloud
WAGO-I/O-SYSTEM 750
3.1.1 Einschränkungen
Zyklische Datenübertragung
Für die Datenübertragung von Collections, die alle in einem zyklischen Intervall senden, sind die
folgenden Einschränkungen ermittelt worden:
Abhängig von der Kombination von Abtast- und Übertragungsintervall ist die Anzahl der Datenpunkte,
welche man kontinuierlich an die Cloud übertragen kann, begrenzt. Die nachfolgende Tabelle zeigt 2
unterschiedliche Szenarien auf mit denen der maximale Datenfluss erzielt werden kann.
Eventbasierte Datenübertragung
Um dem SPS-Programmierer die Möglichkeiten für unterschiedliche Szenarien zum Auslösen eines
Events in der SPS-Applikation offen zu halten, gibt es auf Seiten der Bibliothek weniger
Einschränkungen. Die Verantwortung zur Einhaltung von Einschränkungen liegt beim
SPS-Programmierer. Im Mittel sollte der Datenfluss von 270 KB/s auch in diesem Fall nicht
überschritten werden.
Bei der SPS-Applikation gilt Vorsicht beim Erzeugen der Events, da hierbei
durch häufiges Auslösen eines Events ein sehr hohes Datenvolumen erzeugt
werden kann. Zusätzlich ist die Kombination mit dem Cache mode = SD-
Card aufgrund der Schreibgeschwindigkeit nicht zu empfehlen.
Analyse
Der Parameter “Cache fill level”, welcher im WBM angezeigt wird, kann zur Entwicklungszeit genutzt
werden um spezifische Produktivszenarien zu beobachten bzw. dabei die Einhaltung von Grenzen zu
verifizieren. Falls der entsprechende Wert nach angemessener Zeitdauer nicht ständig ansteigt dann
wäre dies ein Indikator, dass das Szenario ok ist. Bei der endgültigen Entscheidung über die Anzahl
Public
Anwendungshinweis WagoAppCloud SPS-Applikation erstellen 19
WAGO-I/O-SYSTEM 750
Public
20 SPS-Applikation erstellen Anwendungshinweis WagoAppCloud
WAGO-I/O-SYSTEM 750
Cloud
FbCommandConfigurator
- unique at the
beginning -
FbCommandListener
FbCommandResponder
Public
Anwendungshinweis WagoAppCloud SPS-Applikation erstellen 21
WAGO-I/O-SYSTEM 750
Die Befehlsbearbeitung wird in der SPS-Applikation mit den folgenden drei Schritten ausgeführt:
Eine einfache Implementierung um Befehle von der Cloud zu empfangen kann anhand des Beispiels
WagoAppCloud_FbCommandListener_Example1.ecp nachvollzogen werden.
Public
22 Inbetriebnahme Anwendungshinweis WagoAppCloud
WAGO-I/O-SYSTEM 750
4 Inbetriebnahme
4.1 Allgemeine Hinweise
In diesem Kapitel werden einige allgemeine Hinweise und Einstellungen für den PFC beschrieben, die
für die Nutzung des beschriebenen Softwarepakets Cloud Connectivity notwendig sind.
An dieser Stelle sei darauf hingewiesen, dass bei Nutzung der Cloud Connectivity-Funktionalität sich
die Performance des PFCs verringern könnte.
Konfigurieren Sie zunächst die SPS-Laufzeitumgebung welche von Cloud Connectivity unterstützt
wird. Dazu muss nach Aufruf des WBMs im Webbrowser die Registerreiter Configuration ausgewählt
werden. Klicke auf den Menüpunkt PLC Runtime. Im Feld PLC Runtime version wählen Sie die
Option „e!RUNTIME“.
Konfigurationsbeispiel:
1. Aufrufen des WBM in einem Webbrowser.
2. Wählen Sie den Registerreiter Configuration.
3. Mit der Maus über den Menüpunkt Networking fahren und den Menüpunkt Ethernet
Configuration auswählen.
4. Im Abschnitt Switch-Configuration „Separated“ auswählen und den Parameter mit einem
Klick auf [Submit] schreiben.
5. Mit der Maus über den Menüpunkt Networking fahren und den Menüpunkt
TCP/IP Configuration auswählen.
6. Kontrollieren, ob bei beiden ETHERNET-Schnittstellen der Configuration-Type DHCP
ausgewählt ist. Falls dies nicht der Fall ist, die Einstellung vornehmen und mit einem Klick auf
[Submit] abspeichern.
Public
Anwendungshinweis WagoAppCloud Inbetriebnahme 23
WAGO-I/O-SYSTEM 750
Über „Remote Shell“ kann man überprüfen ob bestimmter Cloud-Dienst vom PFC aus erreichbar ist,
z.B.: telnet wagocloud.azure-devices.net 8883. Wenn die Verbindung des Ports verfügbar ist, so
kommt nach einigen Minuten Wartezeit die folgende Rückmeldung: Connection closed by foreign host.
Wenn der Port durch eine Firewall geblockt ist, kommt diese Meldung: telnet: can't connect to remote
host (13.69.192.43): Connection timed out.
Der NTP-Client wird über das WBM des Controllers eingestellt. Die Aktivierung des NTP-Clients wird
im Folgenden beschrieben:
1. Aufrufen des WBMs in einem Webbrowser.
2. Wählen Sie den Registerreiter Configuration.
3. Links im Menü auf Ports and Services klicken.
Public
24 Inbetriebnahme Anwendungshinweis WagoAppCloud
WAGO-I/O-SYSTEM 750
Weitere Informationen zur Konfiguration des NTP-Clients befinden sich im Handbuch des PFC’s.
Public
Anwendungshinweis WagoAppCloud Inbetriebnahme 25
WAGO-I/O-SYSTEM 750
Die Konfiguration der Cloud-Dienste erfolgt über die Cloud Connectivity-Seite im WBM. Es sind
Eingabemasken für die folgenden Cloud-Dienste vorhanden:
• WAGO Cloud
• Azure
• IBM Cloud
• Amazon Web Services (AWS)
• SAP IoT Services
Eine Sonderform nimmt der Eintrag „MQTT AnyCloud“ ein. Hier kann die Verbindung zu jeder Cloud
aufgebaut werden, die das MQTT-Protokoll, Version v3.1/v3.1.1, unterstützt, wie z. B. der
MQTT-Broker beim Mosquitto-Stack.
Public
26 Inbetriebnahme Anwendungshinweis WagoAppCloud
WAGO-I/O-SYSTEM 750
Um Daten an die Cloud zu senden dürfen einige Zeichen zur Konfiguration des Funktionsblocks
FbCollectionLogger in der SPS-Applikation nicht verwendet werden.
Public
Anwendungshinweis WagoAppCloud Inbetriebnahme 27
WAGO-I/O-SYSTEM 750
In den folgenden Unterkapiteln wird beschrieben wie Sie die benötigten Azure-Dienste einrichten.
Um ein IoT Hub anzulegen führen Sie bitte folgende Schritte aus:
1. Auf Azure Portal https://portal.azure.com anmelden
2. Zu Neu> Internet der Dinge > IoT Hub navigieren
Public
28 Inbetriebnahme Anwendungshinweis WagoAppCloud
WAGO-I/O-SYSTEM 750
Public
Anwendungshinweis WagoAppCloud Inbetriebnahme 29
WAGO-I/O-SYSTEM 750
Public
30 Inbetriebnahme Anwendungshinweis WagoAppCloud
WAGO-I/O-SYSTEM 750
5. Auf Registerreiter Data Ihr Gerät wählen und auf [Monitor] klicken
Public
Anwendungshinweis WagoAppCloud Inbetriebnahme 31
WAGO-I/O-SYSTEM 750
6. Sobald Ihr IoT Hub Nachrichten von Ihrem Wago Controller bekommen hat, werden
diese vom Device Explorer Tool zeitnah angezeigt
1. Sicherstellen, dass Ihr Wago Controller eine Netzwerkverbindung zu Ihrem Azure IoT
Hub hat
2. Sicherstellen, dass Ihr Wago Controller das Kommando, welches gesendet werden
soll, ausführen kann
3. Im Azure Portal navigieren zu: Ihr IoT Hub > Device Explorer > Ihr Gerät > Message
To Device
4. Nachricht (Kommando) eingeben und das Property namens CommandRequestId mit
beliebiger Zahl als Wert hinzufügen. Danach [Send Message] klicken
Public
32 Inbetriebnahme Anwendungshinweis WagoAppCloud
WAGO-I/O-SYSTEM 750
Abbildung 4-8: Anzeige der Nachrichten von der Cloud zum Gerät
5. Ihr Wago Controller sollte zeitnah das gesendete Kommando bekommen und
ausgeführt haben
Public
Anwendungshinweis WagoAppCloud Inbetriebnahme 33
WAGO-I/O-SYSTEM 750
Public
34 Inbetriebnahme Anwendungshinweis WagoAppCloud
WAGO-I/O-SYSTEM 750
4.2.3.3 Konfiguration der Cloud Connectivity für die Amazon Web Services
(AWS)
In diesem Abschnitt werden die Schritte zur Konfiguration der Cloud Connectivity-Funktionalität des
PFC für die Amazon Web Services (AWS) beschrieben. Es wird davon ausgegangen, dass zuvor bei
Amazon der AWS IoT-Dienst und ein Gerät eingerichtet wurden.
Die folgende Auflistung beschreibt die nötigen Schritte, um die Cloud Connectivity mit AWS zu
verbinden.
1. Innerhalb eines Webbrowsers das WBM des PFC aufrufen.
2. Wählen Sie den Registerreiter Configuration.
3. Klicken Sie beim Menüpunkt Cloud Connectivity auf den Unterpunkt Connection 1.
4. Die Verbindung 1 mit der Check-Box Enabled aktivieren.
5. Username und Password eingeben, um sich am PFC zu authentifizieren. [Submit] klicken.
Gegebenenfalls erscheint eine Messsage-Box mit dem Hinweis, dass aus Sicherheitsgründen
das Passwort geändert werden sollte. Es öffnet sich die Konfigurationsseite der
Cloud Connectivity.
6. Im Abschnitt „Settings“ aus der Kombo-Box Cloud platform den Eintrag „Amazon Web
Services (AWS)“ auswählen.
7. Im Feld Hostname den Amazon-Hostnamen zum AWS IoT-Dienst eingeben. Der Host-Name
ist ein benutzerdefinierter Endpunkt.
Um den benutzerdefinierten Endpunkt für das Gerät herauszufinden, sind die folgenden
Schritte notwendig:
o Im AWS IoT-Dienst den linken Navigationsbereich Verwalten – Objekte auswählen
o Angelegtes Gerät auswählen.
o Im linken Navigationsbereich Interagieren auswählen.
o Unter dem Bereich HTTPS befindet sich der Host-Name (Rest API Endpoint)
Der Host-Name sieht in etwa wie folgt aus:
ABCDEFG1234567-ats.iot.us-east-1.amazonaws.com
Hierbei ist ABCDEFG1234567 die Subdomain (eigenes AWS Konto) und us-east-1 die
Region.
8. Im Feld Client ID ist die Client-ID einzugeben. Der Wert der Client-ID ist frei wählbar, sollte
aber keine Sonderzeichen enthalten.
Public
Anwendungshinweis WagoAppCloud Inbetriebnahme 35
WAGO-I/O-SYSTEM 750
9. Im Feld CA File muss der Pfad zum CA-File angegeben werden. Es ist hier
/etc/ssl/certs/ca-certificates.crt einzutragen.
10. Es ist nun das Zertifikat mit dem Namen „Name_des_Gerätes.cert.pem“ aus der von AWS
heruntergeladenen Datei auf den PFC in den Ordner /etc/ssl/certs/ hochzuladen.5
11. Im Feld Certificate File ist der Pfad mit Dateinamen zu dem in 8. hochgeladenen Zertifikat
einzutragen.
12. Es ist nun der private Schlüssel mit dem Namen „Name_des_Gerätes.private.key“ aus der
von AWS heruntergeladenen Datei auf den PFC in den Ordner /etc/ssl/certs/ hochzuladen.
13. Im Feld Key File ist der Pfad mit Dateinamen zu dem in 11. hochgeladenen privaten
Schlüssel einzutragen.
14. Durch einen Klick auf den Button [Submit] wird die Konfiguration gespeichert.
15. Der Controller muss nun neu gestartet werden, damit die Einstellungen übernommen werden.
5Unter Microsoft Windows kann hierfür das Tool WinScp genutzt werden. Unter Linux® kann das
Kommandozeilen-Tool scp genutzt werden.
Public
36 Inbetriebnahme Anwendungshinweis WagoAppCloud
WAGO-I/O-SYSTEM 750
Public
Anwendungshinweis WagoAppCloud Inbetriebnahme 37
WAGO-I/O-SYSTEM 750
5. Zum Publishen wird das Topic automatisch von der Subscription übernommen. Ist dies nicht
der Fall, ist in dem Feld rechts neben „Publish“ des Topics einzugeben.
6. Durch einen Klick auf [Publish to topic] wird die Nachricht in dem kleinen Konsolenfenster
unterhalb des Topic-Feldes an den „AWS IoT MQTT Broker“ gesendet.
7. Kontrollieren, ob die gesendete Nachricht oben im MQTT-Client bei der Subscription auftaucht.
Ist dies der Fall, funktioniert die Konfiguration.
Public
38 e!COCKPIT Anwendungshinweis – WagoAppCloud
Inbetriebnahme WAGO-I/O-SYSTEM 750
Public
e!COCKPIT Anwendungshinweis – WagoAppCloud 39
WAGO-I/O-SYSTEM 750 Inbetriebnahme
das Passwort geändert werden sollte. Es öffnet sich die Konfigurationsseite der
Cloud Connectivity.
6. Im Abschnitt „Settings“ aus der Kombo-Box Cloud Platform den Eintrag „IBM Cloud“
auswählen.
7. Im Feld Hostname den IBM-Hostnamen zur „IBM Watson IoT Platform“ eingeben. Der
Host-Name ist wie folgt aufgebaut:
org_id.messaging.internetofthings.ibmcloud.com
org_id muss durch die eigene Organisations-ID ersetzte werden.
8. Im Feld Client ID ist die Client-ID einzugeben. Der Aufbau der Client-ID ist im Folgenden
dargestellt:
d:org_id:device_type:geräte_id
d Das „d“ signalisiert dem „IBM Watson IoT Platform Dienst“, dass es
sich bei der Zeichenkette um ein Gerät handelt.
org_id Ist durch die eigene Organisations-ID zu ersetzen
device_type device_typ ist durch den Gerätetyp, welcher dem Gerät im
„IBM Watson IoT Platform Dienst“ zugeordnet wurde, festgelegt.
geräte_id Dem Gerät zugeordnete Geräte-ID
9. Durch die Check-Box TLS kann ausgewählt werden, ob die Verbindung verschlüsselt
aufgebaut werden soll und der Transfer der Daten verschlüsselt erfolgt.
10. Im Feld CA File muss der Pfad zum CA-File angegeben werden. Es ist hier
/etc/ssl/certs/ca-certificates.crt einzutragen.
11. Im Feld Port ist bei einer unverschlüsselten Verbindung der Wert „1883“ auszuwählen. Für
eine verschlüsselte Verbindung muss der Port „8883“ ausgewählt werden.
12. Im Feld User ist der Wert „use-token-auth“ einzutragen.
13. Im Feld Passwort ist das Passwort (Authentifizierungstoken) aus der Geräteerstellung in der
IBM Cloud einzutragen.
15. Durch einen Klick auf den Button [Submit] wird die Konfiguration gespeichert.
16. Der PFC muss nun neu gestartet werden, damit die Einstellungen übernommen werden.
Public
40 e!COCKPIT Anwendungshinweis – WagoAppCloud
Inbetriebnahme WAGO-I/O-SYSTEM 750
4.2.4.3 Anlegen einer Datenvisualisierung
Die an IBM Cloud gesendeten Daten können innerhalb der „IBM Watson IoT Platform“ in graphischer
oder textueller Form angezeigt werden. Es sind diverse Anzeigearten möglich. Als Beispiel werden
einige Daten der Struktur „DeviceInfo“ in einer sogenannten Karte dargestellt.
Als Startpunkt dient das Dashboard mit den verfügbaren Boards. Im Webbrowser gehen wir zu
folgender Seite https://org_id.internetofthings.ibmcloud.com/dashboard/boards/
org_id ist durch die eigene Organisations-ID zu ersetzen.
Nach dem Log-in erscheint eine Übersicht aller Boards (vgl. Abbildung 4-11).
Public
e!COCKPIT Anwendungshinweis – WagoAppCloud 41
WAGO-I/O-SYSTEM 750 Inbetriebnahme
Wir erstellen nun ein neues Board mit einer neuen Karte:
1. Auf [+ Neues Board erstellen] klicken. Es erscheint ein Dialog mit den Board-Einstellungen.
Hier werden der „Name“ und eine „Beschreibung“ für das Board eingegeben.
Durch Klicken auf [Weiter] gelangt man zu weiteren Board-Einstellungen. Dort übernehmen
wir durch Klicken auf [Übergeben] die gesetzten Einstellungen. Das neue Board wird nach
wenigen Sekunden in der Board-Übersicht angezeigt.
2. Nun wird das zuvor erstellte Board durch Klicken auf das „Board“ in den Fokus geholt. Es
können nun Einstellungen zum Board geändert werden oder eine neue Karte hinzugefügt
werden.
3. Durch Klicken auf [+ Neue Karte hinzufügen] öffnet sich ein Dialog, um einen Kartentyp
auszuwählen.
4. Wir wählen beispielhaft das Gerät „Value“ durch Anklicken aus.
5. Es werden nun alle verfügbaren Geräte angezeigt. Es ist das Gerät auszuwählen, welches als
Quelle dienen soll. Durch Klicken auf [Weiter] gelangt man zu den Dataset-Einstellungen.
6. Durch einen Klick auf [Verbindung für neues Dataset herstellen] klappen weitere Felder
auf. Durch Klicken auf das Feld unterhalb von „Event“ erscheint eine Liste der bisher an IBM
Cloud gelieferten Ereignisse, wie z. B. „DeviceInfo“. 6 Wir wählen diese aus.
7. Durch Klicken auf das Feld unterhalb von „Property“ erscheint eine Liste der bisher gelieferten
Eigenschaften wie z. B. Firmware-Version. Diese wählen wir aus.
8. Das Feld „Name“ wird automatisch mit dem Namen der Eigenschaft gefüllt, kann aber auch
umbenannt werden.
9. Das Feld „Type“ gibt den Typen der Eigenschaft an; es kann hier „Text“ oder „Number“
ausgewählt werden. In diesem Beispiel ist „Text“ auszuwählen.
Information Weitere Information
Es können auf einer Karte mehr als ein Dataset angelegt werden
(s. Abbildung 4-12).
10. Durch einen Klick auf [Weiter] gelangt man auf eine Kartenvorschau (s. Abbildung 4-13).
6Damit man hier Ereignisse auswählen kann, müssen zuvor Daten an die Cloud gesendet worden
sein. Sollten keine Daten an die Cloud gesendet worden sein, ist die Auswahlliste leer.
Public
42 e!COCKPIT Anwendungshinweis – WagoAppCloud
Inbetriebnahme WAGO-I/O-SYSTEM 750
11. Durch einen Klick auf [Weiter] bekommt man eine Zusammenfassung und kann noch ein
Farbschema auswählen.
12. Durch einen Klick auf [Übergeben] ist das Einrichten der Karte abgeschlossen.
4.2.4.4 Referenzen
Public
e!COCKPIT Anwendungshinweis – WagoAppCloud 43
WAGO-I/O-SYSTEM 750 Inbetriebnahme
1. Wählen Sie im Menü Device Management > Devices aus und klicken Sie auf [+].
2. Füllen Sie das Pflichtfeld Name aus.
3. Wählen Sie unter Gateway [MQTT Network (ID: 2)] aus.
4. Schließen Sie das Erzeugen des neuen Device mittels [Create] und [Confirm] ab.
Das Device ist nun angelegt. In den nächsten Schritten werden die vom Device unterstützten
Datenstrukturen definiert.
1. Wählen Sie im Menü Device Management > Capabilities aus und klicken Sie auf [+].
2. Füllen Sie das Pflichtfeld Name aus.
3. Erstellen Sie eine Liste der zu übertragenen Variablen unter Properties. Vergeben Sie dazu
jeder Variable einen Namen (Name) und wählen Sie den Datentyp (Data Type) aus. Optional
können Sie zusätzlich für jede Variable eine Einheit eintragen (Unit of Measure). Um weitere
Variablen hinzuzufügen, klicken Sie auf [+].
4. Schließen Sie das Erzeugen der neuen Capability mittels [Create] und [Confirm] ab.
1. Wählen Sie im Menü Device Management > Sensor Types aus und klicken Sie auf [+].
2. Füllen Sie das Pflichtfeld Name aus.
3. Wählen Sie aus der Liste der Capabilities die zu unterstützenden Capabilities und weisen Sie
jeder einen Typ (Type) zu. Der Typ kann die Werte measure und command annehmen. Der
Typ measure steht für Daten, die vom Gerät gepublished werden. Der Typ command steht
für Daten, die vom Gerät subscribed werden. Um weitere Variablen hinzuzufügen klicken Sie
auf [+].
4. Schließen Sie das Erzeugen des neuen Sensor Types mittels [Create] und [Confirm] ab.
Public
44 e!COCKPIT Anwendungshinweis – WagoAppCloud
Inbetriebnahme WAGO-I/O-SYSTEM 750
4.2.5.5 SAP IoT Service Cockpit: Erzeugen eines Sensors
1. Wählen Sie im Menü Device Management > Devices Ihr [Device] aus.
2. Wählen Sie [Sensors] und klicken Sie auf [+], um einen neuen Sensor anzulegen.
3. Füllen Sie das Pflichtfeld Name aus.
4. Wählen Sie aus der Liste unter Sensor Type Ihren Sensortypen aus.
5. Schließen Sie das Erzeugen des neuen Sensors mittels [Create] und [Confirm] ab.
6. Sollte in der Liste der Sensoren (Sensors) noch ein Default-Sensor (Sensor: 0:0:0:0)
angelegt sein, löschen Sie diesen mit einem Klick auf das Mülleimer-Symbol und bestätigen
Sie das Löschen mit [Confirm].
1. Kopieren Sie das Zertifikat aus dem Download-Verzeichnis in das Verzeichnis openssl-
win32\bin.
2. Öffnen Sie unter Windows eine Kommandozeile mit Administrator-Rechten und wechseln Sie
in das Verzeichnis openssl-win32\bin.
3. Geben Sie folgenden Befehl ein, wobei <myCertificate.pem> durch den Namen Ihres
Zertifikates und <myKey.key> durch den Namen der Zieldatei zu ersetzen ist. Bestätigen Sie
mit Enter:
openssl rsa –in “<myCertificate.pem>” –out “<myKey.key>”
4. Geben Sie das zugehörige Secret ein und bestätigen Sie mit Enter.
5. Laden Sie die beiden Dateien (das Zertifikat und den Key) auf das WAGO Gerät in das
Verzeichnis: /etc/ssl/certs/
Public
e!COCKPIT Anwendungshinweis – WagoAppCloud 45
WAGO-I/O-SYSTEM 750 Inbetriebnahme
Public
46 e!COCKPIT Anwendungshinweis – WagoAppCloud
Inbetriebnahme WAGO-I/O-SYSTEM 750
4.2.5.9 e!COCKPIT-Programm
Für eine möglichst komfortable Erstellung eines e!COCKPIT Programms zur Kommunikation mit dem
SAP IoT Service empfiehlt es sich, folgende Bibliotheken zu verwenden:
WagoAppJSON: Serialisieren und Parsen des JSON-Payloads
WagoAppCloud: Publish und Subscribe der Daten mittels nativeMQTT
{
"capabilityAlternateId": "<capabilityAlternateId>",
"sensorAlternateId": "<sensorAlternateId>",
"measures": [{
"<PropertyName1>": "#Parameter",
"<PropertyName2>": "#Parameter"}]
}
1. Ersetzen Sie <capabilityAlternateId>, durch die Alternate ID der Capability aus dem SAP IoT
Service Cockpit.
2. Ersetzen Sie <sensorAlternateId> durch die Alternate ID des Sensors aus dem SAP IoT
Service Cockpit.
3. Ersetzen Sie <PropertyNameX> durch die Namen der durch die Capability unterstützen
Properties aus dem SAP IoT Service Cockpit.
4. Übergeben Sie die zu übermittelnden Werte der Properties als Array an den Funktionsblock
Fb_JSON_Writer_01 und starten Sie die Serialisierung mit Hilfe des Triggers. Beachten Sie
hierbei, dass die Reihenfolge der Werte innerhalb des Arrays, der der zugehörigen Properties
im JSON-BaseFrame entspricht!
1. Ersetzen Sie <deviceAlternateId> durch die Alternate ID des Device aus dem SAP IoT Service
Cockpit.
2. Kopieren Sie das von der WagoAppJSON generierte Payload mit Hilfe von MemCopySecure()
in ein Byte Array und übergeben Sie dieses an den Funktionsblock FbPublishMQTT_2.
3. Starten Sie den Publish-Vorgang mit Hilfe des Triggers.
Public
e!COCKPIT Anwendungshinweis – WagoAppCloud 47
WAGO-I/O-SYSTEM 750 Inbetriebnahme
1. Ersetzen Sie <deviceAlternateId> durch die Alternate ID des Device aus dem SAP IoT Service
Cockpit.
2. Starten Sie den Subscribe-Vorgang mit Hilfe des Triggers.
1. Kopieren Sie das empfangene Payload mit Hilfe von MemCopySecure() in ein Byte Array und
übergeben Sie dieses an den Funktionsblock fbJSON_Parse.
2. Starten Sie den Parse-Vorgang mit Hilfe des Triggers.
3. Extrahieren Sie die einzelnen Parameterwerte mit Hilfe der Methode GetValueByPath() des
Funktionsblocks fbJSON_Parse. Der Pfad ergibt sich wie folgt: 'commands/<PropertyName>'.
Aktivieren Sie den Vorgang durch Setzen des Triggers.
4. Konvertieren Sie den String in den gewünschten Datentyp (z.B. mit STRING_TO_REAL()).
1. Geben Sie im Feld deviceId die ID Ihres Device aus dem SAP IoT Service Cockpit ein.
2. Ersetzen Sie den Wert für capabilityId im body durch die ID der Capability aus dem SAP IoT
Service Cockpit.
3. Ersetzen Sie die Key-Value-Liste des JSON-Objekt command im body mit den Property-
Namen sowie den zugehörigen Werten.
4. Ersetzen Sie den Wert für sensorId im body durch die ID des Sensors aus dem SAP IoT
Service Cockpit.
5. Sende Sie die Cloud-zu-Gerät-Nachrichten durch Klicken auf [Execute].
6. Als Server response wird bei erfolgreichem Sendevorgang der Code 200 zurückgegeben.
Beachten Sie im Falle eines Fehlers den Code sowie den Response body für eine mögliche
Fehleranalyse.
Public
48 e!COCKPIT Anwendungshinweis – WagoAppCloud
Inbetriebnahme WAGO-I/O-SYSTEM 750
Nach dem Login klicken Sie auf den [Application Switcher] und wählen dort
[Administration] aus.
Public
e!COCKPIT Anwendungshinweis – WagoAppCloud 49
WAGO-I/O-SYSTEM 750 Inbetriebnahme
3. Für die Konfiguration des Gerätes (z.B. PFC / Touch Panel) benötigen Sie die Tenant ID Ihres
Cumulocity Accounts. Klicken Sie auf Ihren Benutzer und kopieren Sie die Tenant ID.
Public
50 e!COCKPIT Anwendungshinweis – WagoAppCloud
Inbetriebnahme WAGO-I/O-SYSTEM 750
8. Prüfen Sie nun den Verbindungsstatus im WBM unter Cloud Connectivity. Dieser muss nach
wenigen Minuten connected sein.
Public
e!COCKPIT Anwendungshinweis – WagoAppCloud 51
WAGO-I/O-SYSTEM 750 Inbetriebnahme
Cumulocity empfiehlt als Payload einen reduzierten Aufbau und kein JSON Format zu verwenden.
Alle Nachrichten werden an das Topic „s/us“ gesendet.
1. Gerät registrieren
1. Um das Gerät bei Cumulocity zu registrieren, publishen Sie folgenden String als
Payload: 100,“myPFC_01“,“PFC200“
Der erste Wert (in diesem Fall 100), weist Cumulocity an, dass es sich um eine
Geräteregistrierung handelt.
Der zweite Wert (in diesem Fall „myPFC_01“) ist der Name des Gerätes in Cumulocity.
Der dritte Wert (in diesem Fall „PFC200“) ist der Name des Gerätetyps.
Im Eingabefenster geben Sie das Kommando ein und bestätigen dieses mit
[Execute]. Das Kommando wird nun von Ihrem Gerät empfangen. Cumulocity wartet
nun auf eine Bestätigung vom Gerät. Diese publishen Sie mit folgendem Payload:
501,c8y_Command
Wurde das Kommando erfolgreich vom Gerät ausgeführt, publishen Sie folgenden
String: 503,c8y_Command oder im Fehlerfall 502,c8y_Command
Public
52 e!COCKPIT Anwendungshinweis – WagoAppCloud
Inbetriebnahme WAGO-I/O-SYSTEM 750
Public
e!COCKPIT Anwendungshinweis – WagoAppCloud 53
WAGO-I/O-SYSTEM 750 Inbetriebnahme
4.2.7 Speicherung
Die Linux Applikation schreibt die Daten welche diese vom SPS-Programm erhält in den Speicher.
Diese Daten werden kontinuierlich an die Cloud weitergesendet und bei Erfolg automatisch aus dem
Speicher gelöscht. In dem Falle eines Abbruchs der Netzwerkverbindung werden die Daten im
Speicher behalten sodass keine Daten verloren gehen. Nach Wiederherstellung der
Internetverbindung werden die zwischengespeicherten Daten wieder versendet.
Sollte die Netzwerkverbindung längere Zeit ausfallen und der Speicher bereits mit Daten komplett
gefüllt ist, werden die ältesten Daten im Speicher überschrieben.
4.2.7.1 RAM
Die Speicherung der Daten ins RAM ist die Standardoption. Die maximale Größe des Speichers
beträgt 3 MB. Im Falle eines Stromausfalls gehen alle Daten verloren.
Es ist auf jeden Fall zu empfehlen diesen Modus während der Entwicklung des SPS-Programms zu
nutzen.
4.2.7.2 SD-Karte
Im Falle eines Stromausfalls gehen die bereits gespeicherten Daten nicht verloren, sondern werden
nach einem Neustart des Controllers an die Cloud gesendet.
Punkt 2 ist erforderlich, falls auf der SD-Karte zuvor ein Firmware-Image gespeichert wurde. Wurde
die SD-Karte bereits als Massenspeicher verwendet kann Punkt 2 übersprungen werden. Durch das
Formatieren der SD-Karte über das WBM wird sichergestellt, dass auf der SD-Karte nur eine Partition
vorhanden ist (mmcblk0p1), welche anschließend mit dem Format ext4 formatiert wird.
Public
54 e!COCKPIT Anwendungshinweis – WagoAppCloud
Inbetriebnahme WAGO-I/O-SYSTEM 750
4. Die SD-Karte ist nun vorbereitet. Im WBM kann nun auf der Seite „Cloud Connectivity“ der
Cache-Mode „SD-Karte“ konfiguriert werden
Die Option zur Speicherung der Daten auf SD-Karte ist im WBM nur verfügbar falls der PFC vom
internen NAND Flash gebootet hat. Dabei werden folgende vordefinierte Einstellungen genutzt:
• Maximal werden 512 MB an Daten zwischengespeichert
• Speicherort auf der SD-Karte ist /media/MemoryCard
Bitte beachten Sie hierzu die Angaben in den Datenblättern der jeweiligen
Hersteller.
Public
e!COCKPIT Anwendungshinweis – WagoAppCloud 55
WAGO-I/O-SYSTEM 750 Anhang
5 Anhang
5.1 Aktualisierung der Cloud Connectivity
5.1.1 Installieren der Linux Applikation
In diesem Abschnitt wird die Installation der Linux Applikation beschrieben.
1. Aufrufen des WBMs in einem Webbrowser.
2. Den Registerreiter Configuration auswählen.
3. Links im Menü auf Software-Uploads klicken.
4. Durch Klicken auf [Choose ipk file…] öffnet sich ein File-Upload-Fenster, wo man dann zur
Datei Cloud-Connectivity_xxx.ipk navigiert. Dann selektiert man die Datei durch Anklicken und
klickt dann auf [Öffnen].
5. Nun auf [Install] klicken. Die Datei wird auf dem PFC hochgeladen.
6. Wenn die Installation beendet wurde: Das Fenster im Webbrowser neu laden.
Public
56 e!COCKPIT Anwendungshinweis – WagoAppCloud
Anhang WAGO-I/O-SYSTEM 750
5.1.2 IEC-Bibliothek
5.1.2.1 e!Cockpit
Für e!Cockpit muss die Bibliothek WagoAppCloud_x.x.x.x.compiled-library installiert und referenziert
werden.
Um die Bibliothek in der Applikation zu installieren, ist es notwendig den Bibliotheksverwalter [Library
Manager] zu öffnen. Nach dem Auswählen des Menüpunkts [Add Library] wird die erweiterte
Bibliotheksverwaltung mit [Advanced…] geöffnet. In dem neuen Fenster Library Repository kann nun
durch Klicken auf den Button [Install…] die Bibliothek installiert werden.
Public
e!COCKPIT Anwendungshinweis – WagoAppCloud 57
WAGO-I/O-SYSTEM 750 Anhang
Der PFC ist in der Architektur der Sparkplug Spezifikation ein MQTT Edge of Network Node
(MQTT Edge Node). Der PFC nimmt die Messwerte aus dem Feld auf und nach konfigurieren der
Datenpunkte in der SPS-Applikation werden die Messwerte in dem von Sparkplug geforderten Format
weitergeleitet.
Die Anforderung von Sparkplug an den MQTT Broker (in Architekturbild von Sparkplug als
MQTT Server bezeichnet) ist, dass dieser kompatibel mit der MQTT Spezifikation Version 3.1.1 ist.
Möglich ist bei Ignition die Nutzung des in Ignition integrierten Brokers MQTT Distributor. Der Broker
MQTT Distributor ist ein Zusatzmodul in Ignition welches nachinstalliert werden kann. Weiterhin
können aber auch Broker genutzt werden die unabhängig von Ignition sind. (siehe nächste Abbildung)
SCADA/IIoT Host ist die SCADA Applikation. Die SCADA Applikation kommuniziert auch über das
Sparkplug Protokoll. Bei Ignition muss dazu das Zusatzmodul MQTT Engine nachinstalliert und die
passende Konfiguration vom MQTT Broker eingegeben werden.
Public
58 e!COCKPIT Anwendungshinweis – WagoAppCloud
Anhang WAGO-I/O-SYSTEM 750
Public
e!COCKPIT Anwendungshinweis – WagoAppCloud 59
WAGO-I/O-SYSTEM 750 Anhang
Der Aufbau der Konfiguration im SPS-Programm beim Datenprotokoll Sparkplug ist sehr ähnlich wie
beim WAGO Protocol. (siehe Kapitel 0)
Die Konfiguration der Struktur und der Parameter im SPS-Programm wird in die Struktur von Ignition
gemappt.
Public
60 e!COCKPIT Anwendungshinweis – WagoAppCloud
Anhang WAGO-I/O-SYSTEM 750
Senden von Daten zu Ignition
Im Verzeichnis MyGroupID/MyEdgeNodeID/input sind alle konfigurierten Collections mit den
dazugehörigen Variablen aus der SPS-Applikation enthalten.
Die Bezeichnung der Collection in Ignition setzt sich aus den Parametern typCollection.sName und
typCollection.dwCollectionId aus der SPS-Applikation zusammen.
Beispiel:
• In SPS-Applikation:
o typCollection.sName = ‘MyFirstCollection‘
o typCollection.dwCollectionId = 1
• In Ignition: MyGroupID/MyEdgeNodeID/input/MyFirstCollection_1
Die folgende Tabelle zeigt das Mapping der Parameter von typVariableDescription in der
SPS-Applikation zu den Properties in Ignition.
Konfiguration im SPS Programm Property in Ignition Beschreibung
typVariableDescription.sTag Name Bezeichnung der Variable
typVariableDescription.sUnit EngUnit Einheit der Variable
typVariableDescription.eValueType Datatype Datentyp der Variable
‘Access Rights‘ = Read Leserechte in Ignition
Only
Die gesendeten Daten werden nur mit Leserechten gesendet.
Public
e!COCKPIT Anwendungshinweis – WagoAppCloud 61
WAGO-I/O-SYSTEM 750 Anhang
Die folgende Tabelle zeigt das Mapping der Parameter von typCommandParameterDescription in der
SPS-Applikation zu den Properties in Ignition.
Konfiguration im SPS-Programm Property in Ignition Beschreibung
typCommandParameterDescription. Name Bezeichnung der Variable
sParameterName
typCommandParameterDescription. Datatype Datentyp der Variable
eParamterType
‘Access Rights‘ = Read/Write Schreibrechte in Ignition
Die Kommandos werden im SPS-Programm in dem Funktionsblock FbCommandListener empfangen
und können da weiter ausgewertet werden.
Beachten Sie, dass bei der Sparkplug Spezifikation kein CommandResponse unterstützt wird.
Dadurch muss in der SPS-Applikation auf die folgenden Punkte geachtet werden:
• Keine Verwendung von FbCommandResponder
• typCommandDescription.bNumberOfResponseParameters = 0
Public
62 e!COCKPIT Anwendungshinweis – WagoAppCloud
Anhang WAGO-I/O-SYSTEM 750
Public
e!COCKPIT Anwendungshinweis – WagoAppCloud 63
WAGO-I/O-SYSTEM 750 Anhang
{
"Version": "2019-02-26",
"Statement": [
{
"Effect": "Allow",
"Action": [
"iot:Publish",
"iot:Receive"
],
"Resource": [
"arn:aws:iot:us-east-1:123456789123:topic/PFC200/CloudHello",
"arn:aws:iot:us-east-1:123456789123:topic/PFC200/Commands",
"arn:aws:iot:us-east-1:123456789123:topic/PFC200/DeviceHello",
"arn:aws:iot:us-east-1:123456789123:topic/PFC200/DeviceInfo",
"arn:aws:iot:us-east-1:123456789123:topic/PFC200/DeviceState",
"arn:aws:iot:us-east-1:123456789123:topic/PFC200/TagConfiguration",
"arn:aws:iot:us-east-1:123456789123:topic/PFC200/TagValues",
"arn:aws:iot:us-east-1:123456789123:topic/PFC200/EventTagValues",
"arn:aws:iot:us-east-1:123456789123:topic/PFC200/CommandRegistration",
"arn:aws:iot:us-east-1:123456789123:topic/PFC200/CommandResponse"
]
},
{
"Effect": "Allow",
"Action": [
"iot:Subscribe"
],
"Resource": [
"arn:aws:iot:us-east-1:123456789123:topicfilter/PFC200/CloudHello",
"arn:aws:iot:us-east-1:123456789123:topicfilter/PFC200/Commands"
]
},
{
"Effect": "Allow",
"Action": [
"iot:Connect"
],
"Resource": [
"arn:aws:iot:us-east-1:123456789123:client/PFC200"
]
}
]
}
Public
64 e!COCKPIT Anwendungshinweis – WagoAppCloud
Anhang WAGO-I/O-SYSTEM 750
{
"Version": "2019-02-26",
"Statement": [
{
"Effect": "Allow",
"Action": [
"iot:Publish",
"iot:Receive"
],
"Resource": [
"arn:aws:iot:us-east-1:123456789123:topic/PFC200/CloudHello",
"arn:aws:iot:us-east-1:123456789123:topic/PFC200/DeviceHello",
"arn:aws:iot:us-east-1:123456789123:topic/1.2/PFC200/Commands",
"arn:aws:iot:us-east-1:123456789123:topic/1.2/PFC200/DeviceInfo",
"arn:aws:iot:us-east-1:123456789123:topic/1.2/PFC200/DeviceState",
"arn:aws:iot:us-east-1:123456789123:topic/1.2/PFC200/TagConfiguration",
"arn:aws:iot:us-east-1:123456789123:topic/1.2/PFC200/TagValues",
"arn:aws:iot:us-east-1:123456789123:topic/1.2/PFC200/CommandRegistration",
"arn:aws:iot:us-east-1:123456789123:topic/1.2/PFC200/CommandResponse"
]
},
{
"Effect": "Allow",
"Action": [
"iot:Subscribe"
],
"Resource": [
"arn:aws:iot:us-east-1:123456789123:topicfilter/PFC200/CloudHello",
"arn:aws:iot:us-east-1:123456789123:topicfilter/1.2/PFC200/Commands"
]
},
{
"Effect": "Allow",
"Action": [
"iot:Connect"
],
"Resource": [
"arn:aws:iot:us-east-1:123456789123:client/PFC200"
]
}
]
}
Public
WAGO GmbH & Co. KG
Postfach 2880 • D-32385 Minden
Hansastraße 27 • D-32423 Minden
Telefon: +49 (0) 571/8 87 – 0
Telefax: +49 (0) 571/8 87 – 1 69
E-Mail: info@wago.com
Internet: http://www.wago.com
Public