Il y a quelques temps nous avions publié un nœud Node-RED qui permettait d'utiliser un senseur Yoctopuce dans un schéma Node-RED. Cette semaine, nous publions d'autres nœuds qui permettent d'utiliser les modules Yoctopuce qui ne sont pas des senseurs, comme les Yocto-Relay, les Yocto-Buzzer, etc..
Dans un précédent article nous avions montré comment installer et utiliser le nœud YSensor dans un schéma Node-RED. Cette solution a cependant deux problèmes. D'une part le code n'était pas très bien optimisé, ce qui provoquait des déconnexions lorsque plusieurs nœuds YSensor étaient utilisés sur le même schéma. D'autre part, il n'était pas possible d'utiliser un de nos modules de commande (Yocto-Relay, Yocto-Buzzer, etc).
Notre nouveau package node-red-contrib-yoctopuce comble ces deux problèmes.
Étant donné que l’installation et l'utilisation de ce package est très similaire, nous allons nous concentrer sur les nouveautés. Si vous ne savez pas comment installer un package Node-RED vous pouvez relire notre article sur Node-RED, la procédure est identique, il faut simplement utiliser le nouveau package node-red-contrib-yoctopuce.
Configuration des connexions
Dans ce package, les informations de connexion au YoctoHub ne sont pas stockée directement dans le nœud Node-RED mais sont regroupées dans un "Configuration Node". Ce "Configuration Node" n'est pas visible sur le schéma et est partagé par tous les autres nœuds. De cette manière, une seule connexion avec le YoctoHub est établie par schéma, alors qu’auparavant chaque Nœud créait une nouvelle connexion.
Concrètement lorsque vous ajouter le premier nœud Yoctopuce, il faut entrer les informations de connexions. Pour les suivants, il suffit de sélectionner la même configuration.
Les informations de connexion sont partagées entre tous les nœuds
Les paramètre d'un nœud Yoctopuce
Note: Si vous n'êtes pas familier avec la structure logique des modules Yoctopuce nous vous conseillions de commencer par cet article.
Les nœuds Yoctopuce correspondent à une fonctionnalité d'un module. En conséquence pour chaque nœud Yoctopuce il faut renseigner les informations suivantes:
- le YoctoHub (ou VirtualHub) sur lequel le module est connecté
- l'identifiant matériel ou le nom logique de la fonctionnalité à utiliser
Il est aussi possible d’attribuer un nom qui sera affiché dans le schéma. Ce nom n'a rien à voir avec le nom logique des modules Yoctopuce, il est utilisé uniquement par Node-RED pour rendre le schéma plus lisible.
La fenêtre de configuration d'un nœud ysensor
Les nouveaux nœuds Yoctopuce
Le nœud YFunction
C'est le nœud le plus simple du package. Il permet d'injecter dans le schéma la valeur publiée de la fonctionnalité dès que celle ci change. Le payload du message est une chaîne de caractère.
Le nœud YFunction
Le nœud YSensor
Ce nœud est équivalent au nœud qui était utilisé dans notre précédent package. Le nœud YSensor n'a qu'une seule sortie qui publie la valeur du senseur Yoctopuce correspondant. Ce nœud est utilisable uniquement avec les fonctionnalités qui héritent de la classe YSensor (YTemperature, YVoltage, etc) et le payload du message est un nombre flottant.
Nous avons ajouté la possibilité d'utiliser d'utiliser les notifications périodiques, au lieu d'utiliser la valeur immédiate.
Le nœud YSensor
YBuzzer
Ce nœud permet de contrôler le volume et fréquence courante du buzzer. Il est aussi possible d'envoyer directement une suite de notes qui seront jouée par le buzzer.
Le nœud YBuzzer
YColorLed
Ce nœud permet de changer la couleur des LEDs RGB des Yocto-Color.
Le nœud YColorLed
YColorLedCluster
Ce nœud permet de changer la couleur des LEDs Neopixel qui sont branché au Yocto-Color-V2. Il permet aussi de démarrer une animation préprogrammée.
Le nœud YColorLedCluster
YCurrentLoopOutput
Ce nœud permet de modifier le courant dans une boucle 4-20mA gérée par le Yocto-4-20mA-Tx.
Le nœud YCurrentLoopOutput
YDigitalIO
Ce nœud permet de modifier l'état du port d'E/S digital. Seuls les bits configurés en sortie dans portDirection sont affectés.
Le nœud YDigitalIO
YDisplay
Ce nœud permet d'afficher le contenu d'un message sur un Yocto-MiniDisplay, Yocto-Display ou Yocto-MaxiDisplay. Il permet aussi de démarrer une séquence d'affichage préalablement enregistrée.
Le nœud YDisplay
YLed
Ce nœud permet de changer d'état d'une LED de signalement, par exemples celles qui sont disponibles sur le Yocto-Buzzer.
Le nœud YLed
YPwmOutput
Ce nœud permet de contrôler une sortie PWM d'un Yocto-PWM-Tx. Il possible de changer la fréquence ou le duty-cycle.
Le nœud YPwmOutput
YRelay
Ce nœud permet de changer l'état d'un relais. Ce nœud accepte les commandes "A", "B", "ON" et "OFF". Il est aussi possible de commuter le relais dans un état uniquement pour une durée spécifiée.
Le nœud YRelay
YSerialPort
Ce nœud permet d'envoyer des données sur un port série à l'aide un Yocto-RS485, Yocto-RS232 ou un Yocto-Serial.
Le nœud YSerialPort
YServo
Ce nœud permet de contrôler position d'un servomoteur.
Le nœud YServo
YVoltageOutput
Ce nœud permet de contrôler la tension de sortie d'un Yocto-0-10V-Tx.
Le nœud YVoltageOutput
YWatchdog
Ce nœud permet de réarmer l'état du Yocto-WatchdogDC.
Le nœud YWatchdog
Remarques
La plus parts de nœuds de sortie peuvent être configurés pour modifier différents attributs d'une fonctionnalité, par exemple le nœud YBuzzer permet de changer le volume ou la fréquence du buzzer. Mais un nœud ne peut modifier qu'un seul attribut à la fois. Par conséquent, si l'on a besoin de modifier le volume et la fréquence sur un schéma, il faut ajouter deux nœuds et spécifier le même hardware ID pour les deux nœuds.
Un nœud ne peut modifier qu'un seul attribut
De la même manière il est possible d'utiliser un nœud d'entrée et un nœud de sortie pour la même fonctionnalité. Par exemple, si l'on utilise un relais, il est possible de commander l'état du relais à l'aide d'un nœud YRelay et d'obtenir son état actuel à l'aide d'un nœud YFunction. C'est, par exemple, très utile avec un Yocto-LatchedRelay dont l'état peut être overridé par l’interrupteur présent sur le module.
Il est possible d'utilise deux nœuds de types différents pour une fonction
Conclusion
Ce nouveau package Node-RED est disponible directement dans votre menu "Manage palette", mais si vous désirez l'installer manuellement vous pouvez toujours l'obtenir sur le site de Node-RED : https://flows.nodered.org/node/node-red-contrib-yoctopuce