[GO] J'ai essayé de créer un plug-in avec HULFT IoT Edge Streaming [Execution] (3/3)

introduction

Bonjour. Conseiller Yorozu Sugimon: miam:. Cette fois, je vais essayer de développer un composant (adaptateur) en utilisant le SDK de HULFT IoT Edge Streaming. Il est décrit de manière à être complété dans les trois parties.

Que faire cette fois

Cette fois, comme troisième étape, je vais essayer de construire et d'exécuter le plug-in développé avec le SDK HULFT IoT EdgeStreaming Plugin. Les premier et deuxième articles sont ci-dessous, veuillez donc vous y référer.

: arrow_forward: [J'ai essayé de créer un plug-in avec HULFT IoT Edge Streaming Configuration] (https://qiita.com/sugimon/items/cf7503479c6e4c46c3b3) : arrow_forward: [J'ai essayé de créer un plug-in avec HULFT IoT Edge Streaming Développement](https://qiita.com/sugimon/items/67bdd6f610e03cdfcef2) : arrow_forward: J'ai essayé de créer un plug-in avec HULFT IoT Edge Streaming Execution

Créer un plug-in

Cette fois, construisons le plug-in créé. * J'essaie d'utiliser un PC Windows. De plus, il convient de noter $ SDK_HOME pointe vers le répertoire de base du SDK EdgeStreaming. $ DATASPIDER_HOME pointe vers le répertoire de base Edge Streaming.

Construire

Pour créer le plug-in, exécutez la commande suivante à partir de $ SDK_HOME / dev / sample_adapter.

$ ant

image.png

Après avoir exécuté la commande, BUILD SUCCESSFUL est sorti, et si les fichiers suivants sont créés, la construction est réussie.

$ SDK_HOME / dev / sample_adapter / build  sample_adapter.jar ・ $ SDK_HOME / dev / sample_adapter / build / plugin / sample_plugin Aller au fichier exécutable pour chaque cible

image.png

Copier le fichier d'icône

Créez un fichier d'icône qui sera effectivement utilisé sur l'écran Edge Streaming Studio. Après une construction réussie, $ SDK_HOME / dev / sample_adapter / META-INF sera généré, donc copiez le fichier d'exemple de l'icône et renommez-le.

-Copie de l'icône pour l'opération de la source $SDK_HOME/dev/conf/operation.source.icon ⇒ $SDK_HOME/dev/sample_adapter/META-INF/operation.sample_source.icon

-Copie de l'icône de fonctionnement de l'évier $SDK_HOME/dev/conf/operation.sink.icon ⇒ $SDK_HOME/dev/sample_adapter/META-INF/operation.sample_sink.icon

-Copie de l'icône d'opération UDSF $SDK_HOME/dev/conf/operation.udsf.icon ⇒ $SDK_HOME/dev/sample_adapter/META-INF/operation.sample_udsf.icon

Vérifiez le fichier module.properties

Confirmez que le fichier $ SDK_HOME / dev / sample_adapter / META-INF / module.properties a été créé avec succès.

Ce fichier de propriétés est basé sur les propriétés définies dans le fichier $ SDK_HOME / dev / sample_adapter / config.properties. image.png

Installation du plug-in

Pour installer l'adaptateur, spécifiez la cible d'installation comme premier argument de la commande ant à partir de $ SDK_HOME / dev / sample_adapter.

$ ant install

image.png

Après avoir exécuté ant install, il sera installé comme suit. -Le module Java sera installé. Sous $ DATASPIDER_HOME / server / plugin / data_processing / modules

-Le module Golang sera installé. Sous $ DATASPIDER_HOME / server / es-agent / plugin

Courons

Maintenant, exécutons le plug-in créé.

Lancer Edge Streaming

-Démarrez Edge Streaming.

image.png

・ Vérifions le plug-in créé. Créez un projet à partir d'un nouveau projet. image.png

Créez un script. image.png

Vérification du plug-in

Assurez-vous que le plug-in créé se trouve dans la "Palette d'outils". Je pense que les plug-ins suivants sont créés sous "Sample" dans la "Tool Palette".

image.png

Créons un processus simple

** - Traitement des entrées (opération pour générer des nombres pseudo aléatoires à intervalles de temps réguliers) ** Placez le processus créé par l'opération source. Faites glisser et déposez la source de l'échantillon depuis l'échantillon sur la palette d'outils pour la déplacer vers le centre.

image.png

** - Traitement de sortie (opération pour tronquer par le nombre de chiffres décimaux valides et sortie dans le journal) ** Placez le processus créé par Sample Sink. Faites glisser et déposez le récepteur d'échantillons de Sample sur la palette d'outils pour le déplacer vers le centre.

image.png

** Processus de cartographie ** Faites glisser et déposez l'icône de traitement d'entrée pour connecter l'icône au traitement de sortie. Cliquez avec le bouton droit sur la ligne connectée et sélectionnez Ajouter un mappage. image.png

Ouvrez l'icône de mappage. image.png

-Connectez la source d'entrée "valeur" et la destination de sortie "valeur". -Placez la palette d'outils-> chaîne de caractères-> base-> chaîne de caractères constante dans la destination de sortie "formule", Spécifiez une chaîne de caractères et connectez-la à "formule". image.png

** Script entier ** Vous avez créé un script comme celui-ci. image.png

Courons

Exécutons le script créé à partir de la flèche verte dans le menu de l'écran.

image.png

Vous pouvez voir que des nombres pseudo aléatoires sont générés pour chaque intervalle spécifié et la valeur est sortie avec le nombre spécifié de décimales. image.png

En outre, en utilisant l'icône d'opération UDSF créée, vous pouvez exécuter quatre règles sur la valeur acquise. Veuillez combiner et essayer différentes choses.

finalement

En tant que dernière partie de la trilogie, cette fois j'ai essayé de créer et d'exécuter le plug-in. De cette manière, il est possible d'implémenter le traitement des plug-ins à l'aide du SDK. J'espère que cet article vous guidera dans le développement de plugins.

Dans ce blog, je voudrais continuer à présenter le contenu des consultations au "Yorozu Consultation Counter" de la technologie et les astuces qui sont nées.

Veuillez continuer à le vérifier et nous suivre si vous le souhaitez.

À la prochaine!

Recommended Posts

J'ai essayé de créer un plug-in avec HULFT IoT Edge Streaming [Execution] (3/3)
J'ai essayé de créer un plug-in avec HULFT IoT Edge Streaming [Development] (2/3)
J'ai essayé de créer un plug-in avec HULFT IoT Edge Streaming [Setup] (1/3)
J'ai essayé de créer automatiquement un rapport avec la chaîne de Markov
J'ai essayé de créer un linebot (implémentation)
J'ai essayé de créer un linebot (préparation)
J'ai essayé de créer une liste de nombres premiers avec python
J'ai essayé de créer des taureaux et des vaches avec un programme shell
J'ai essayé de mettre HULFT IoT (Edge Streaming) dans la passerelle Rooster de Sun Electronics
J'ai essayé de créer un programme qui convertit les nombres hexadécimaux en nombres décimaux avec python
Je souhaite créer un type d'implémentation pouvant être branché
[Outlook] J'ai essayé de créer automatiquement un e-mail de rapport quotidien avec Python
Quand j'ai essayé de créer un environnement virtuel avec Python, cela n'a pas fonctionné
J'ai essayé de créer un bouton pour Slack avec Raspeye + Tact Switch
J'ai essayé de créer un modèle avec l'exemple d'Amazon SageMaker Autopilot
Je souhaite créer manuellement une légende avec matplotlib
J'ai essayé de créer un environnement d'apprentissage amélioré pour Othello avec Open AI gym
[Python] J'ai essayé de créer automatiquement un rapport quotidien de YWT avec la messagerie Outlook
J'ai essayé de créer une classe pour rechercher des fichiers avec la méthode Glob de Python dans VBA
J'ai essayé de créer un cadre de données pandas en grattant les informations de rappel d'aliments avec Python
J'ai essayé d'implémenter une ligne moyenne mobile de volume avec Quantx
J'ai essayé de résoudre le problème d'optimisation des combinaisons avec Qiskit
J'ai essayé de commencer avec Hy ・ Définir une classe
J'ai essayé de trier une colonne FizzBuzz aléatoire avec un tri à bulles.
J'ai essayé de créer un bot pour annoncer un événement Wiire
J'ai essayé d'écrire dans un modèle de langage profondément appris
J'ai essayé de créer un article dans Wiki.js avec SQL Alchemy
J'ai essayé de l'activer / de le désactiver en définissant "Créer un plug-in qui met en évidence les espaces pleine largeur avec Sublime Text 2".
J'ai essayé de créer l'API Quip
[5e] J'ai essayé de créer un certain outil de type Authenticator avec python
[2nd] J'ai essayé de créer un certain outil de type Authenticator avec python
Un mémorandum lors de l'acquisition automatique avec du sélénium
Je voulais créer une présentation intelligente avec Jupyter Notebook + nb present
[3ème] J'ai essayé de créer un certain outil de type Authenticator avec python
[Python] Un mémo que j'ai essayé de démarrer avec asyncio
J'ai essayé de faire un processus d'exécution périodique avec Selenium et Python
J'ai essayé d'enregistrer une station sur la plateforme IoT "Rimotte"
J'ai essayé de créer une application de notification de publication à 2 canaux avec Python
J'ai essayé de créer une application todo en utilisant une bouteille avec python
[4th] J'ai essayé de créer un certain outil de type Authenticator avec python
[1er] J'ai essayé de créer un certain outil de type Authenticator avec python
J'ai essayé de faire une étrange citation pour Jojo avec LSTM
J'ai essayé de créer un mécanisme de contrôle exclusif avec Go
J'ai essayé de déverrouiller l'entrée 2 lock sésame d'une simple pression sur le bouton AWS IoT
J'ai essayé de créer facilement une image 3D de haute précision avec une seule photo [2]. (Essayez de traiter la profondeur avec numpy)
J'ai essayé d'implémenter Autoencoder avec TensorFlow
J'ai essayé de visualiser AutoEncoder avec TensorFlow
J'ai essayé de commencer avec Hy
J'ai essayé d'implémenter CVAE avec PyTorch
J'ai créé une API Web
J'ai essayé de résoudre TSP avec QAOA
J'ai essayé de communiquer avec un serveur distant par communication Socket avec Python.
J'ai essayé de mettre en œuvre une blockchain qui fonctionne réellement avec environ 170 lignes
J'ai essayé de créer un LINE BOT "Sakurai-san" avec API Gateway + Lambda
J'ai essayé de faire un signal avec Raspeye 4 (édition Python)