Apprenez comment commencer à développer et à faire évoluer votre pilote Tulip Edge.
Introduction
- Ce que vous apprendrez
- Comment développer votre premier projet de pilote de bord
- Construire un projet
- Mettre à jour les fichiers manifest et index
- Comment développer votre premier projet de pilote de bord
- Ce dont vous aurez besoin (pré-requis)
- Avoir suivi toutes les étapes de SDK Create
Commencer
Une fois que vous avez créé votre nouveau pilote Edge à l'aide de l'outil create-edge-driver
, vous êtes prêt à mettre en œuvre votre propre code de pilote !
Mise à jour de manifest.json
Tout d'abord, nous devons définir les événements et les fonctions mis en œuvre par notre pilote. Les événements de l'appareil peuvent être utilisés comme déclencheurs de logique dans Tulip Apps. Par exemple, vous pouvez mettre en place un déclencheur d'application comme :
"Lorsque mon capteur déclenche un événement de mesure, stocker les données de température dans la variable 'Température de l'atelier'.
Les pilotes peuvent également mettre en œuvre des fonctions d'appareil, qui peuvent être exécutées en réponse à des déclencheurs dans une application. Par exemple : "Lorsque je clique sur ce bouton, appeler la variable 'température de l'atelier'" :
"Lorsque je clique sur ce bouton, j'appelle la fonction 'Toggle Light' de mon appareil."
Dans cet exemple, notre pilote n'aura pas de fonctions, mais déclenchera un événement appelé "data" lorsque notre capteur prendra une mesure. Mettez à jour la section functions dans votre fichier src/manifest.json en la laissant vide ou en la supprimant complètement :
json... "functions" :``[],...
Ensuite, mettez à jour la section events pour définir la forme de l'événement "data". Cet événement sera un objet avec deux propriétés flottantes, "temperature" et "humidity":json... "events" : [ { "name" : "data", "schema" : { "type" : "object", "properties" : { "temperature" : { "type" : "float" }, "humidity" : { "type" : "float" }, "humidité" : { "type" : "float" } : "float" } } } } ],...
Mise à jour de index.ts
Nous allons maintenant écrire le code du pilote qui utilise le SDK Edge Driver pour trouver un port série et s'y connecter, lire les données série entrantes, analyser les messages JSON et déclencher l'événement "data" à l'aide de fireEvent(). Remplacez le code de l'exemple dans votre fichier src/index.ts par ce nouveau code :
serial.onData((data) => { try { const decoder = new TextDecoder() ; const stringData = decoder.decode(new Uint8Array(data)) ; const espData = JSON.parse(stringData.split("ESP : ")[1]) ; edgeDriverSdk.fireEvent("data", espData) ; } catch (error) { console.error(error) ; }. }) ;
serial.open();});``Il s'agit d'un exemple très simple qui tente automatiquement de trouver le périphérique à l'aide de l'identifiant de produit du périphérique USB, une seule fois au démarrage du pilote. Le SDK Edge Driver prend également en charge l'enregistrement des pilotes à lancer lorsque de nouveaux périphériques sont détectés par le système, ce qui permet de créer des pilotes de production plus robustes.
#### Création du pilote
Après avoir mis à jour le code du pilote et le manifest.json, compilez à nouveau le pilote`:npm run build`
Cela générera le fichier JavaScript compilé et regroupé ainsi qu'une copie du manifeste validé dans le répertoire dist.{height="" width=""}