Das Thema der Internet-of-Things-Plattformen befindet sich jetzt in einer „Hype“ -Welle, die durch
die Gartner-Kurve der wichtigsten technologischen Trends bestätigt wird : Seit 2016 ersetzen die Internet-of-Things-Plattformen auf der Karte das Internet der Dinge.
Heute werden wir über das Angebot von Samsung und vor allem über Samsung Artik Cloud sprechen.
Inhalt:
- Mit Samsung Artik Cloud als Internet of Things-Plattform.
- Lernen, in der Praxis mit Artik Cloud zu arbeiten:
- Erstellen Sie einen neuen Gerätetyp.
- Datensimulation
- Abrufen von Daten aus der Cloud mithilfe der REST-API.
Funktionen von Samsung Artik Cloud als Internet of Things-Plattform
Unter der Plattform des Internet der Dinge verstehen sie in der Regel eine vorgefertigte integrierte Lösung mehrerer Komponenten, die dazu beiträgt, den Prozess der Markteinführung eines IoT-Produkts zu beschleunigen.
Welche Komponenten sollten idealerweise eine solche Plattform haben? Laut dem Autor des Artikels
„5 Dinge, die Sie über das IoT-Plattform-Ökosystem wissen sollten“ von IoT Analytics sollte die Plattform aus 8 Funktionskomponenten bestehen:
Tab. 1.

Derzeit verfügen nicht alle IoT-Plattformen über diese Komponenten. In der Regel wird ein Schwerpunkt auf einige davon gelegt: Beispielsweise ist Amazon AWS keine gewöhnliche Datenbank, in der ein permanenter virtueller Schatten eines Geräts erstellt wird, IBM Bluemix kann den Watson-Analysedienst verwenden, und in PTC ThingWorx können Sie problemlos eine grafische Oberfläche erstellen Anwendungen.
Im Jahr 2016 startete Samsung die Artik-Familie, die derzeit Folgendes umfasst:
- Softwareplattform - Artik Cloud - dieses Material ist dafür bestimmt,

- Hardwareplattform - Artik Mikrocomputer.

Ein interessanter Punkt: Samsung veröffentlicht unter einem Namen sowohl eine Softwareplattform als auch eine Hardwarelösung auf verschiedenen Ebenen: vom kleinsten und rechenschwachen Artik 0 bis zum leistungsstarken und produktiven Artik 7.
Ein weiterer interessanter Punkt: Zuletzt
kündigte Samsung 2017
die Vereinheitlichung mehrerer Technologien unter dem gemeinsamen Namen SmartThings Cloud an: Samsung Connect (spezialisierte Router von Smart Home), SmartThings (Hausautomationslösungen) und die Artik-Familie. In diesem Fall werden alle vorhandenen Funktionen gespeichert.
Die offizielle Website des Produkts befindet sich
hier .
Wenn wir Samsung Artik Cloud anhand einer Liste von Funktionskomponenten betrachten (siehe Tabelle 1), erhalten wir Folgendes:
Tabelle 2

Von den Schlüsselkomponenten gibt es derzeit keine Analyse- und maschinelle Lernkomponente. In diesem Jahr kündigte Samsung
die Eröffnung von weiteren 4 neuen wissenschaftlichen Zentren für künstliche Intelligenz auf der ganzen Welt an. Es gibt also allen Grund zu der Annahme, dass die Arbeit in diesem Bereich in den strategischen Plänen des Unternehmens enthalten ist.
Die Vorteile
Erschwingliche Preise
Hier ist alles einfach. Sie können bis zu 100.000 Nachrichten pro Monat kostenlos senden. Im Gegensatz zu anderen ähnlichen Diensten müssen Sie vor der Verwendung keine Bankkarte anhängen. Sie wird überhaupt nicht von dir verlangt. Sie müssen nur bezahlen, wenn Sie Artik Cloud für eine echte Aufgabe verwenden, bei der die Anzahl der Nachrichten pro Tag und Monat von entscheidender Bedeutung ist. In diesem Fall betragen die Kosten für 1 Million Nachrichten 15 US-Dollar.
Aus diesem Grund eignet sich Artik Cloud hervorragend zum Unterrichten von Schülern: Wenn Sie es nur im Unterricht verwenden, ist die Wahrscheinlichkeit, dass die Quoten ausgehen, sehr gering.
Mehrere verschiedene APIs
Momentan können Sie auf vier Arten gleichzeitig mit Artik Cloud interagieren:
- REST-API
- Websockets
- MQTT
- Coap
Bemerkenswert ist die gleichzeitige Unterstützung von zwei Protokollen, die im Internet der Dinge weit verbreitet sind: MQTT und CoAP.
Einschränkungen
Beta-Phase
Artik Cloud ist noch ein junges Produkt (es erschien im Jahr 2016). Einige Funktionen befinden sich noch in der Beta. In einem Gerätesimulator können Sie beispielsweise nicht mit mehr als einem Gerät arbeiten.
Unvollständige Dokumentation
Die Dokumentation entwickelt sich weiter. Beispielsweise ist die REST-API jetzt sehr gut dokumentiert, und die Dokumentation der MQTT-API muss verbessert werden.
Lernen, in der Praxis mit Artik Cloud zu arbeiten
Und jetzt empfehlen wir Ihnen, ein virtuelles Gerät zu erstellen - einen GPS-Tracker, der zufällige Daten generiert. Dann werden wir vom Computer aus auf diese Daten zugreifen.
Kontoerstellung
Gehen wir zur Website
https://my.artik.cloud/
Es gibt verschiedene Registrierungsoptionen. Am einfachsten ist es, ein vorhandenes Google-Konto zu verwenden. Spam wird nicht verschickt! Verifiziert durch persönliche Erfahrung.

Erstellen Sie einen neuen Gerätetyp
Sie werden zur Benutzerseite
https://artik.cloud/ weitergeleitet .
Hier können Sie Ihrem System Geräte hinzufügen, Protokolle überwachen und Interaktionsregeln festlegen. Jetzt kann fast nichts mehr getan werden, da die Geräte und Sensoren, die wir benötigen, nicht zu den vorgeschlagenen Optionen gehören. Gehen Sie direkt zur Entwicklerseite:
https://developer.artik.cloud/
Erstellen Sie einen neuen Gerätetyp.

Als Nächstes müssen Sie einen Namen und eine eindeutige Kennung erstellen. Diese benötigen Sie, wenn Sie Ihr virtuelles Gerät später für die Community freigeben möchten.

Sie werden aufgefordert, ein „Manifest“ zu erstellen, in dem die Gerätefelder definiert sind.

Das Fenster zur Manifesterstellung wird auf der ersten Registerkarte geöffnet: Gerätefelder. Da wir ein Beispiel für einen GPS-Tracker erstellen, erstellen Sie zwei Felder für Längen- und Breitengrad. Ich nannte sie
Lat (Breite) und
Long (Länge).

Sie können einstellen:
- Feldnamen (in unserem Fall - lat und long ),
- Einheiten (dafür gibt es bereits Standardeinheiten).
Klicken Sie auf die Schaltfläche Weiter. In diesem Beispiel müssen keine "Geräteaktionen" angegeben werden. Fahren Sie daher unmittelbar danach mit der Aktivierung des Manifests fort.
Geräteerstellung
Jetzt können Sie einen neuen Gerätetyp erstellen, indem Sie zu
https://my.artik.cloud zurückkehren . Klicken Sie auf + Ein weiteres Gerät hinzufügen ...

Gerätesimulation
Versuchen wir eine interessante Funktion - die Datensimulation. Es ist nützlich zum Testen.
Klicken Sie im Rechteck, das das Gerät angibt, auf "..." und dann auf Gerätedaten simulieren.

Es erscheint ein Fenster, in dem Sie die Simulationsparameter für jedes Feld einstellen können. Zum Beispiel das Intervall der Ausgabe von Werten, Grenzen, Verteilung (in unserem Fall zufällig).

Danach können Sie auf die Schaltfläche Simulation starten klicken.

Daten begannen zu erscheinen. Sie können sie auf der Karte sehen. Öffnen Sie dazu im oberen Menü die Registerkarte Diagramme.

Sie sehen in Echtzeit die Längen- und Breitengrade in dem von Ihnen angegebenen Bereich:

Dieser Zeitplan ist sehr praktisch zu verwenden. Es kann skaliert, der Verlauf zurückgedreht und der Diagrammtyp geändert werden. Wie Sie im Screenshot sehen können, können Sie auch ein Balken- und Punktdiagramm erstellen:

Wenn Sie Metadaten anzeigen möchten, können Sie bequem die Registerkarte Datenprotokolle verwenden. Hier sehen Sie das Generierungsdatum, das Eingangsdatum und die interne Darstellung der Daten - dies ist das bekannte JSON-Format.

Empfangen Sie Daten aus der Cloud
Versuchen wir, unsere simulierten Daten aus der Cloud zu holen. Wir werden die REST-API verwenden - dies ist logisch, da wir Code zum Empfangen von Daten in JavaScript schreiben werden.
Klicken Sie im Menü auf den Gerätenamen.

Im sich öffnenden Fenster sehen Sie verschiedene Geräteschlüssel, von denen zwei wichtig sind: Geräte-ID und Geräte-Token. Bei Zugriff von außen fungieren diese Schlüssel als Login und Passwort. Sie werden sie sehr bald brauchen.

Woher weiß ich, welche Anfrage ich senden soll? Hierfür gibt es ein sehr praktisches Entwicklertool - die
API-Konsole . Hier können Sie Beispiele für verschiedene API-Anforderungen anzeigen und lernen. Schauen wir uns die Anforderung GET (Get Last Normalized Messages) an:

Um eine solche Anforderung zu erfüllen, müssen Sie angeben, auf welches Gerät wir uns beziehen (
sdids - hier müssen wir die im vorherigen Schritt erhaltene Gerätekennung ersetzen), die für uns interessanten Felder (
fieldPresense ) und wie viele Werte wir erhalten möchten (
count ).
Füllen Sie die Felder aus und klicken Sie auf Try it! Sie erhalten Informationen, die ausreichen, um eine Anfrage zu stellen:

- Anruf ist die Adresse, an die die Anfrage gesendet wird.
- Anforderungsheader - Header, die zusammen mit der Anforderung gesendet werden sollen,
- 200 - Antwortcode.
JavaScript-Code
Hier ist ein Beispiel für JavaScript-Code, der eine Nachricht aus der Cloud empfängt und anzeigt.
varxmlhttp=newXMLHttpRequest(); varcall = "https://api.artik.cloud/v1.1/messages/last?count=1&fieldPresence=lat&sdids=084d34b198d84f1688b3b7b3fe420fcf"; xmlhttp.open('GET',call,true); xmlhttp.setRequestHeader("Content-Type","application/json"); xmlhttp.setRequestHeader("Authorization","Bearer fc851ddb484842788daa19569b326951"); xmlhttp.onreadystatechange=function(){ if(xmlhttp.status==200){ alert(xmlhttp.responseText); } };
Natürlich müssen die
Varcall- Zeile und der
Bearer- Autorisierungsparameter durch Ihre eigenen ersetzt werden, die im letzten Schritt erhalten wurden.
Das Ergebnis dieses Codes im Mozilla-Browser:

Dies ist eine JSON-Zeichenfolge, in der unter anderem die erforderlichen
Lat- und
Long- Koordinaten vorhanden sind. Es bleibt nur, die Zeichenfolge mit dem JSON-Parser zu analysieren, und Sie haben die Daten!
Anhand dieses Beispiels können Sie eine geografische Karte mithilfe der Yandex.Maps-API einfach beschriften.

Fazit
Was haben wir also implementiert? Ein einfaches Beispiel: Erstellen eines Geräts in der Cloud, Simulieren seiner Daten und Empfangen dieser Daten auf Ihrem Computer.
Außerhalb der Klammern sind:
- Senden von Daten an die Cloud über die REST-API,
- Interaktion mit der Cloud über andere Schnittstellen wie MQTT,
- Aktionen (Geräteaktionen),
- Regeln (Rules Engine).
Diejenigen, die daran interessiert sind, fortzufahren, können diese Themen anhand der offiziellen
Dokumentation unabhängig untersuchen.
Verfasser: Tatyana Volkova
Mitarbeiter des Samsung Research Center
Manager und Autor des Lehrplanprojekts IoT Academy Samsung