13. Utilisation du Yocto-PowerRelay-V2 en TypeScript
vous référenciez au moins une fois dans votre projet soit la variante
yocto_api_html.js
Notez que cet exemple importe la librairie au format CommonJS, le plus utilisé avec Node.JS à ce
jour, mais si votre projet est construit pour utiliser les modules natifs EcmaScript, il suffit de remplace
dans l'import le préfix
YAPI.RegisterHub
La méthode
RegisterHub
Yoctopuce, ou plus exactement la machine sur laquelle tourne le programme VirtualHub. Dans notre
cas l'adresse
127.0.0.1:4444
standard utilisé par Yoctopuce). Vous pouvez parfaitement changer cette adresse, et mettre
l'adresse d'une autre machine sur laquelle tournerait un autre VirtualHub, ou d'un YoctoHub. Si l'hôte
n'est pas joignable, la fonction déclanche une exception.
Comme expliqué précédemment, il n'est pas possible d'utiliser directement
en TypeScript, car la machine virtuelle JavaScript n'a pas accès directement aux
("usb")
périphériques USB. Elle doit nécessairement passer par le programme VirtualHub via une
connection par l'adresse 127.0.0.1.
YRelay.FindRelay
La méthode
FindRelay
module hôte et de son nom de fonction. Mais vous pouvez tout aussi bien utiliser des noms logiques
que vous auriez préalablement configurés. Imaginons un module Yocto-PowerRelay-V2 avec le
numéros de série RELAYHI2-123456 que vous auriez appelé "MonModule" et dont vous auriez
nommé la fonction relay1 "MaFonction", les cinq appels suivants seront strictement équivalents (pour
autant que MaFonction ne soit définie qu'une fois, pour éviter toute ambiguïté):
relay
= YRelay.FindRelay("RELAYHI2-123456.relay1")
relay
= YRelay.FindRelay("RELAYHI2-123456.MaFonction")
relay
= YRelay.FindRelay("MonModule.relay1")
relay
= YRelay.FindRelay("MonModule.MaFonction")
relay
= YRelay.FindRelay("MaFonction")
YRelay.FindRelay
relais.
isOnline
La méthode
isOnline()
correspondant est présent et en état de marche.
set_state
La méthode
set_state()
relais vers l'une ou l'autre de ses sorties. Les deux paramètres possibles sont
pour la sortie A et
YRelay.STATE_B
Un exemple concret, en Node.js
Ouvrez une fenêtre de commande (un terminal, un shell...) et allez dans le répertoire
example_nodejs/Doc-GettingStarted-Yocto-PowerRelay-V2 de la librairie Yoctopuce pour
TypeScript. Vous y trouverez un fichier nommé
reprend les fonctions expliquées précédemment, mais cette fois utilisées avec le décorum
nécessaire à en faire un petit programme d'exemple concret.
Si le Yocto-PowerRelay-V2 n'est pas branché sur la machine où fonctionne le navigateur internet,
remplacez dans l'exemple l'adresse
Yocto-PowerRelay-V2 et où vous avez lancé le VirtualHub.
/*********************************************************************
*
92
.
par
yoctolib-cjs
yoctolib-esm
permet d'indiquer sur quelle machine se trouvent les modules
indique la machine locale, en utilisant le port
permet de retrouver un relais en fonction du numéro de série de son
renvoie un objet que vous pouvez ensuite utiliser à loisir pour contrôler le
de l'objet renvoyé par
de l'objet renvoyé par
pour la sortie B.
127.0.0.1
yocto_api_nodejs.js
.
permet de savoir si le module
FindRelay
YRelay.FindRelay
avec le code d'exemple ci-dessous, qui
demo.ts
par l'adresse IP de la machine où est branché le
, soit
(le port
4444
RegisterHub
permet faire basculer le
YRelay.STATE_A
www.yoctopuce.com