talk2m - ewon developers · pdf filetalk2m die iiot cloud entwickler plattform jean-paul...
TRANSCRIPT
Talk2MDie IIoT Cloud Entwickler Plattform
Jean-Paul CORMANN
September 2016 V1.2
Simon DETOLLENAERE
eWON Flexy
eWON Flexy = Die IIoT-Router Entwickler Plattform
IOserver Datenerfassung Alarm Benachrichtigung Eigene Webseiten / Reporting Basic Scripting Java ETK (& Java IOserver)
=> Daten-Verfgbarkeit auf dem eWON-Router
Kundenwnsche/Anforderungen
Ich will Fernzugriff auf meine Daten.
Ich bentige eine Anwendung um Daten aller meiner
entfernten Gerte zu sehen.
Die Anwendung sollte sowohl auf meinem PC als auch auf
Tablet und Smartphone laufen.
Umwandlung von Roh-Daten in Leistungskennzahlen (KPIs)
In einigen Fllen wre es gut mit meinen Gerten am
entfernten Standort zu interagieren.
Als Entwickler
Sie wissen wie: man gute Bedienoberflchen entwickelt
Daten in eine Datenbank eingefgt werden
aus Roh-Daten, Leistungskennzahlen werden
etc.
Aber wie bekomme ich Daten aus meinen entfernten Anlagen in meine Anwendung oder Datenbank?
Aquise entfernter Daten(Push-Methode)
Wo wird es schwierig?
Bereitstellen eines ffentlichen Interner-Servers Bentigt IT-Kenntnisse und Infrastruktur:
Server im Internet ausgesetzt
ffentliche IP-Adresse
Firewall
SSL-Zertifikat fr sichere Verbindungen
Wo wird es schwierig?
Verwaltung der Daten-Synchronisation Datenbertragung nur von neuen Daten die nicht bereits gesendet
worden sind Handhabung doppelter Datenpakete, etc
Fern-Zugriff? Wie interagiere ich mit meinem entfernten Gert?
Talk2MDie IIoT Cloud Entwickler Plattform
Talk2M
Talk2M
eCatcher Talk2M VPN-Client und Konfigurations-Tool
Stellt den VPN-Tunnel zwischen Ihrem PC und dem entfernten Netzwerk her.
Ermglicht den Fernzugriff auf jedes an den eWON-Router angeschlossene Gert (Ethernet, Seriell, MPI, USB)
M2Web M2Web, das HTTPS Web-Portal zu Talk2M.
Ermglicht eine Verbindung auf den Webserver des eWON-Router und der angeschlossenen Gerte (SPS, HMI, Kamera)
Lauffhig auf allen Plattformen (PC, Tablet, Smartphone)
Untersttzt auch VNC und RDP Verbindungen
Fernzugriffs-Lsung
Kurze Demonstration der beiden Fernzugriffs-Lsungen
Talk2M
Talk2M APIs
Talk2M APIs: RESTful API Anfragen erfolgen per HTTPS Antworten im Json-basierten FormatUntersttzt alle blichen Programmiersprachen und Plattformen
Voraussetzungen: Developer ID (ex: 61d88c56-6976-4d3e-ad4e-a79dde788010)
- zur Identifikation des Entwicklers
Talk2M Account Zugriff (Talk2M Account Name, Benutzer, Passwort)- fr Zugriffsfreigabe auf die entfernten Gerte (= eWON-Router)
des Kunden
(Entwickler Plattform)
2 Arten von Talk2M API:
DMWeb API Zur Synchronisation historischer Daten der eWON-Router:
Historische Datenaufzeichnung
Historische Alarme
Einfache Lsung um neue Daten aus dem Feld abzufragen
M2Web API Zum Zugriff auf Webserver:
In eWON-Routern
Andere Ethernet-Gerte die an den eWON-Router angeschlossen sind.
Einfacher Weg um mit ihrem Gert zu interagieren (Lesen / Schreiben)
DMWeb & M2Web
Talk2M DataMailbox(DMWeb API)
Talk2M DataMailbox
Temporrer Speicher fr Tags und Alarm-Historie
Der eWON-Router schiebt die Daten (Push) zur DataMailbox des Accounts
DMWeb APIs in Ihrer Applikation benutzen um neue historische Daten abzufragen
hnlich Ihrem Postfach fr E-Mail bei einem Internetanbieter
DataMailbox
Das Betreiben eines Internet Servers ist nicht erforderlich Es werden nur ausgehende https-Anfragen genutzt um Daten abzufragen
DMWeb: ein sehr einfaches Protokoll zur Datensynchronisation Mit einem Aufruf neue Daten abrufen
Push Pull Methode: Jeder (sowohl der eWON-Router als auch Ihre Applikation) synchronisiert nach Bedarf Keine permanente Verbindung erforderlich
Vorteile
DataMailbox
Ziel: Daten von der DataMailbox herunterladen
HTTPS-basiert Basis URL : https://data.talk2m.com/ Zugangsdaten : t2maccount, t2musername, t2mpassword, devid Methoden:
getewons, getewon getdata: Abfrage von historischen Daten nach verschiedenen Kriterien (Datum,
Tag, eWON) delete, clean syncdata: herunterladen aller neuen historischen Daten ohne Duplikate
DMWeb API
https://data.talk2m.com/
DMWeb APIsyncdata
Da
ta M
ailb
ox
Se
rve
r
syncdata ? + Transaktion erstellen
Neue Daten + Transaktion ID = 4567
Historische Daten + Transaktion ID = 1234
syncdata ? Transaktion erstellen & letzter Transaktion ID = 4567
+ mehr Daten vorhanden
syncdata ? Transaktion erstellen & letzter Transaktion ID = 1234
Ihre
Ap
plik
atio
n
Beispiel
https://data.talk2m.com/syncdata?t2maccount=myaccount&t2musername=myname
&t2mpassword=mypassword&t2mdevid=61ddac56-6976-4d3e-ad4e-a79dde788010
&createTransaction&lastTransactionId=4567
ZIP
eWON-Router Konfiguration
1. Erzeugen von Tags zur Datenaquise aus dem Feld
Integrierte IO-Server fr Standard Protokolle
Basic Scripting oder Java EDK fr weitere Protokolle
2. Aktivieren der historische Aufzeichnung von Tags
Abspeichern auf Basis einer Werte-nderung oder eines Zeitintervall
3. Konfigurieren der Datenbertragung (Push) zur DataMailbox
Einrichten der Talk2M Verbindung (mit Hilfe des Assistenten)
Festlegen der URL: ewondata.talk2m.com (auf der Data Management Webseite im eWON)
Einstellen des bertragungs-Intervalls
Definieren von Filtern fr Tags (Auswahl der relevanten Daten)
Senden der Daten zur Datamailbox
Talk2M DataMailbox SDK
Benutzerhandbuch
DMBoxViewer.exe: Zu Demonstrationszwecken Einfache Erstellung der URL fr die API-Abfragen Anzeige der Ergebnisse
MylittleHistorian.exe: Kommandozeilen -Programm Erzeugt CSV / Text-Dateien mit Daten aus der DataMailbox
verfgbar auf developer.ewon.biz.
Sehen wir uns mal eine DataMailbox an
https://developer.ewon.biz/
M2Web API
M2Web API
Die M2Web API erlaubt den Zugriff auf Webserver:
des eWON-Router
Jedes Gertes angeschlossen an den eWON-Router
M2Web API
Basis URL : https://m2web.talk2m.com/t2mapi/...
Beispiel der Parameter & Methoden: t2mapi/getaccountinfo t2mapi/getewons?[&pool=...] t2mapi/getewon?name=... t2mapi/wakeup?name=... t2mapi/sendoffline?name=... t2mapi/get//? t2mapi/get//proxy//?
Syntax
M2Web APIBeispiel
https://m2web.talk2m.com/t2mapi/getewons?t2maccount=myaccount
&t2musername=myname&t2mpassword=mypassword&t2mdeveloperid
=61ddac56-6dde-4d3e-ad4e-a79dde788010
M2Web APIs erlauben den Zugriff auf Web-Ressourcen eines eWON-Router
Der eWON-Router bietet verschiedene Web-Formulare an um
Dateien, Tag-Werte, Alarm-Historie, Benutzer-Dateien ber Export Block Descriptorsabzurufen
Tag-Werte zu beschreiben (sowohl Tags im Speicher als auch Tags angeschlossener Steuerungen)
Alarme zu besttigen
Scripte auszufhren
M2Web APIs & eWON
Wie kann ich mit meinem eWON-Router
ber die M2Web API interagieren?
M2Web APIs & eWON
Tags aus dem eWON-router lesen
https://m2web.talk2m.com/t2mapi/get/eWON_Demo/rcgi.bin/Para
mForm?AST_Param=$dtIV$ftT&t2maccount=FlexThink_2016&t2musername=jcn&t2mpassword=#####&t2mdeveloperid=61ddac64-6ade-493e-ad8e-a79dde788010&t2mdeviceusername=adm&t2mdevicepassword=adm
Tags in den eWON-router schreiben:
https://m2web.talk2m.com/t2mapi/get/eWON_Demo/rcgi.bin/Upda
teTagForm?TagName=PLC_DigOutput0&TagValue=1&t2maccount=FlexThink_2016&t2musername=jcn&t2mpassword=#####&t2mdeveloperid=61ddac64-6ade-493e-ad8e-a79dde788010&t2mdeviceusername=adm&t2mdevicepassword=adm
Beispiele
M2Web Library
Eine .NET-Bibliothek und eine PHP-Bibliothek steht, zur Vereinfachung, den Entwicklern zur Verfgung.
Diese stellt M2WebAPI Funktionen und die Kommunikation zum eWON-Router ber ein Objekt-Modell dar.
.NET LibraryBeispiel
var m2web = new M2Web
{
Talk2MDevId = "TODO: YOU-GUID-COMES-HERE",
AccountName = "TODO: YOUR ACCOUNT NAME COMES HERE",
Username = "TODO: YOUR USERNAME NAME COMES HERE",
Password = "TODO: YOUR PASSWORD NAME COMES HERE",
};
Console.WriteLine("Retrieving list of eWONs...");
m2web.LoadEwons();
Console.WriteLine("Online eWONs:");
var onlineEwons = m2web.Ewons.Where(ewon => ewon.Status == EwonStatus.Online);
foreach (var ewon in onlineEwons)
Console.WriteLine(ewon.Name + (!string.IsNullOrEmpty(ewon.Description) ? "
("+ewon.Description+")" : ""));
Console.WriteLine("Strike to continue...");
Konfiguration des eWON-Router
Einrichten der Talk2M Verbindung (mit Hilfe des Assistenten)
Keine weitere Konfiguration erforderlich. Die Web-Formulare sind bereits im Gert hinterlegt.
um die M2Web API zu benutzen
Sehen wir uns ein paar M2Web API Beispiele an
https://m2web.talk2m.com/t2mapi/get/TM005/rcgi.bin/ParamForm?AST_Param=$dtIV$ftT&t2maccount=eWON_support&t2musername=jcn&t2mpassword=jcn_sales&t2mdeveloperid=61e9ac64-6ade-493e-ad4e-a79dde788010&t2mdeviceusername=adm&t2mdevicepassword=adm
A