Le thÚme des plateformes Internet des objets est désormais dans une vague de «hype», ce qui est confirmé par
la courbe de Gartner des principales tendances technologiques : depuis 2016, les plateformes Internet des objets sur la carte ont remplacé l'Internet des objets.
Aujourd'hui, nous allons parler de ce que Samsung propose et, tout d'abord, de Samsung Artik Cloud.
Contenu:
- Comprend Samsung Artik Cloud en tant que plateforme Internet des objets.
- Apprendre Ă travailler avec Artik Cloud en pratique:
- Créez un nouveau type d'appareil,
- Simulation de données
- Récupération des données du cloud à l'aide de l'API REST.
Caractéristiques de Samsung Artik Cloud en tant que plateforme Internet des objets
Sous la plate-forme de l'Internet des objets, en rĂšgle gĂ©nĂ©rale, ils comprennent une solution intĂ©grĂ©e prĂȘte Ă l'emploi de plusieurs composants qui aide Ă accĂ©lĂ©rer le processus de mise sur le marchĂ© d'un produit IoT.
Quels composants devraient idéalement avoir une telle plateforme? Selon l'auteur de l'article
«5 choses Ă savoir sur l'Ă©cosystĂšme de la plateforme IoT» de IoT Analytics, la plateforme devrait ĂȘtre composĂ©e de 8 composants fonctionnels:
Tab. 1.

Pour le moment, toutes les plates-formes IoT n'ont pas ces composants. En rÚgle générale, l'accent est mis sur certains d'entre eux: par exemple, Amazon AWS n'est pas une base de données ordinaire dans laquelle une ombre virtuelle permanente d'un périphérique est créée, IBM Bluemix a la possibilité d'utiliser le service d'analyse Watson, et dans PTC ThingWorx, vous pouvez facilement créer une interface graphique applications.
En 2016, Samsung a lancé la famille Artik, qui comprend actuellement:
- Plateforme logicielle - Artik Cloud - ce matériel lui est dédié,

- Plateforme matérielle - micro-ordinateurs Artik.

Un point intĂ©ressant: Samsung publie sous un mĂȘme nom Ă la fois une plate-forme logicielle et une solution matĂ©rielle, et Ă diffĂ©rents niveaux: de l'Artik 0 le plus petit et le plus faible en termes de calcul, Ă l'Artik 7 puissant et productif.
Autre point intéressant: plus récemment, en 2017, Samsung a
annoncé l' unification de plusieurs technologies sous le nom commun SmartThings Cloud: Samsung Connect (routeurs spécialisés de Smart Home), SmartThings (solutions domotiques) et la famille Artik. Dans ce cas, toutes les fonctionnalités existantes seront enregistrées.
Le site officiel du produit se trouve
ici .
Si nous considérons Samsung Artik Cloud en termes de liste de composants fonctionnels (voir le tableau 1), nous obtenons ce qui suit:
Tableau 2

Parmi les composants clés, il n'y a actuellement aucun composant d'analyse et d'apprentissage automatique. Mais cette année, Samsung a
annoncé l' ouverture de 4 nouveaux centres scientifiques d'intelligence artificielle supplémentaires dans le monde. Il y a donc tout lieu de croire que les travaux dans ce domaine sont inclus dans les plans stratégiques de l'entreprise.
Les avantages
Prix ââabordable
Ici, tout est simple. Vous pouvez envoyer jusqu'Ă 100 000 messages par mois gratuitement. Contrairement Ă d'autres services similaires, vous n'avez pas besoin de joindre une carte bancaire avant de l'utiliser. Elle ne vous sera pas du tout demandĂ©e. Vous ne devrez payer que si vous dĂ©cidez d'utiliser Artik Cloud dans une tĂąche rĂ©elle oĂč le nombre de messages par jour et par mois est critique - dans ce cas, le coĂ»t d'un million de messages sera de 15 $.
C'est pourquoi Artik Cloud est idéal pour enseigner aux étudiants: si vous ne l'utilisez qu'en classe, les chances de manquer de quotas sont trÚs faibles.
Plusieurs API différentes
Pour le moment, vous pouvez interagir avec Artik Cloud de quatre maniĂšres Ă la fois:
- API REST
- Websockets
- MQTT
- Coap
Il convient de noter la prise en charge de deux protocoles à la fois, qui sont largement utilisés sur l'Internet des objets: MQTT et CoAP.
Limitations
Stade bĂȘta
Artik Cloud est encore un produit jeune (il est apparu en 2016). Certaines fonctionnalitĂ©s sont toujours en version bĂȘta. Par exemple, dans un simulateur d'appareil, vous ne pouvez pas travailler avec plusieurs appareils.
Documentation incomplĂšte
La documentation Ă©volue. Par exemple, l'API REST est dĂ©sormais trĂšs bien documentĂ©e et la documentation de l'API MQTT doit ĂȘtre amĂ©liorĂ©e.
Apprendre Ă travailler avec Artik Cloud en pratique
Et maintenant, nous vous suggérons de créer un appareil virtuel - un tracker GPS qui générera des données aléatoires. Ensuite, nous accéderons à ces données à partir de l'ordinateur.
Création de compte
Allons sur le site
https://my.artik.cloud/
Il existe plusieurs options d'inscription. Le moyen le plus simple consiste à utiliser un compte Google existant. Le spam ne sera pas envoyé! Vérifié par expérience personnelle.

Créer un nouveau type d'appareil
Vous serez redirigé vers la page utilisateur
https://artik.cloud/ .
Ici, vous pouvez ajouter des appareils Ă votre systĂšme, surveiller les journaux, dĂ©finir des rĂšgles d'interaction. Maintenant, presque rien ne peut ĂȘtre fait Ă ce sujet, car les appareils et les capteurs dont nous avons besoin ne font pas partie des options proposĂ©es. AccĂ©dez directement Ă la page dĂ©veloppeur:
https://developer.artik.cloud/
Créez un nouveau type d'appareil.

Ensuite, vous devez trouver un nom et un identifiant unique - vous en aurez besoin si vous souhaitez partager plus tard votre appareil virtuel avec la communauté.

Vous serez invité à créer un «manifeste» dans lequel les champs de l'appareil sont définis.

Vous verrez la fenĂȘtre de crĂ©ation de manifeste ouverte sur le premier onglet: Champs de pĂ©riphĂ©rique. Puisque nous faisons un exemple pour un tracker GPS, crĂ©ez deux champs pour la latitude et la longitude. Je les ai appelĂ©s
lat (latitude) et
long (longitude).

Vous pouvez définir:
- Noms des champs (dans notre cas - lat et long ),
- Unités (il existe déjà des unités standard pour cela).
Cliquez sur le bouton Suivant. Il n'est pas nécessaire de spécifier «Actions du périphérique» dans cet exemple, alors immédiatement aprÚs cela, activez le manifeste.
Création d'appareils
Vous pouvez maintenant crĂ©er un nouveau type d'appareil en revenant Ă
https://my.artik.cloud . Cliquez sur + Ajouter un autre appareil ...

Simulation d'appareil
Essayons une fonction intéressante - la simulation de données. Il est utile pour les tests.
Dans le rectangle qui indique le périphérique, cliquez sur "...", puis sur Simuler les données du périphérique.

Une fenĂȘtre apparaĂźt dans laquelle vous pouvez dĂ©finir les paramĂštres de simulation pour chaque champ. Par exemple, l'intervalle de sortie des valeurs, limites, distribution (dans notre cas, alĂ©atoire).

AprÚs cela, vous pouvez cliquer sur le bouton Démarrer la simulation.

Des données ont commencé à apparaßtre. Vous pouvez les voir sur le graphique. Pour ce faire, ouvrez l'onglet Graphiques dans le menu supérieur.

Vous verrez en temps réel les valeurs de longitude et de latitude dans la plage que vous spécifiez:

Ce programme est assez pratique Ă utiliser. Il peut ĂȘtre redimensionnĂ©, tordu en arriĂšre, changer le type de graphique. Comme vous pouvez le voir sur la capture d'Ă©cran, vous pouvez Ă©galement crĂ©er un graphique Ă barres et Ă points:

Si vous souhaitez voir les métadonnées, il est pratique d'utiliser l'onglet Journaux de données. Ici, vous verrez la date de génération, la date de réception et la représentation interne des données - c'est le format JSON familier.

Recevoir des données depuis le cloud
Essayons de sortir nos données simulées du cloud. Nous utiliserons l'API REST - c'est logique, car nous allons écrire du code pour recevoir des données en JavaScript.
Cliquez sur le nom de l'appareil dans le menu.

Dans la fenĂȘtre qui s'ouvre, vous verrez diffĂ©rentes clĂ©s de pĂ©riphĂ©rique, dont deux sont importantes: ID de pĂ©riphĂ©rique et jeton de pĂ©riphĂ©rique. Lorsqu'elles sont accessibles de l'extĂ©rieur, ces clĂ©s fonctionnent comme identifiant et mot de passe. Vous en aurez besoin trĂšs bientĂŽt.

Comment savoir quelle demande envoyer? Il existe un outil de développement trÚs pratique pour cela - la
console API . Il vous permet de regarder et d'apprendre des exemples de diverses demandes d'API. Examinons la demande GET (Get Last Normalized Messages):

Pour répondre à une telle demande, il est nécessaire de spécifier à quel appareil nous nous référons (
sdids - ici, nous devons remplacer l'identifiant d'appareil obtenu à l'étape précédente), les champs qui nous intéressent (
fieldPresense ) et le nombre de valeurs que nous voulons obtenir (
nombre ).
Remplissez les champs et cliquez sur Essayez-le! Vous recevrez des informations suffisantes pour faire une demande:

- Appel est l'adresse à laquelle la demande sera envoyée,
- En-tĂȘtes de demande - en-tĂȘtes Ă envoyer avec la demande,
- 200 - code de réponse.
Code JavaScript
Voici un exemple de code JavaScript qui recevra un message du cloud et l'affichera.
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); } };
Bien sûr, la ligne
varcall et le paramĂštre d'autorisation
Bearer doivent ĂȘtre remplacĂ©s par les vĂŽtres, obtenus Ă la derniĂšre Ă©tape.
Le résultat de ce code dans le navigateur Mozilla:

Il s'agit d'une chaßne JSON dans laquelle, entre autres, il y a les coordonnées
lat et
long requises. Il ne reste plus qu'à analyser la chaßne à l'aide de l'analyseur JSON, et vous avez les données!
Sur la base de cet exemple, vous pouvez facilement étiqueter une carte géographique à l'aide de l'API Yandex.Maps.

Conclusion
Alors qu'avons-nous mis en Ćuvre? Un exemple simple: crĂ©er un appareil dans le cloud, simuler ses donnĂ©es et recevoir ces donnĂ©es sur votre ordinateur.
En dehors des parenthĂšses sont:
- Envoi de données vers le cloud via l'API REST,
- Interaction avec le cloud via d'autres interfaces, telles que MQTT,
- Actions (Actions de l'appareil),
- RĂšgles (moteur de rĂšgles).
Ceux qui sont intĂ©ressĂ©s Ă continuer, ces questions peuvent ĂȘtre Ă©tudiĂ©es indĂ©pendamment, en utilisant la
documentation officielle.
Auteur: Tatyana Volkova
Employé du Samsung Research Center
Responsable et auteur du curriculum du projet Samsung IoT Academy