15. Utilisation du Yocto-PowerRelay-V2 en PHP
[...]
// On active l'accès aux modules locaux à travers le VirtualHub
YAPI::RegisterHub('http://127.0.0.1:4444/',$errmsg);
[...]
// On récupère l'objet permettant d'intéragir avec le module
$relay
= YRelay::FindRelay("RELAYHI2-123456.relay1");
// Pour gérer le hot-plug, on vérifie que le module est là
if($relay->isOnline())
{
// Utiliser relay->set_state()
[...]
}
Voyons maintenant en détail ce que font ces quelques lignes.
yocto_api.php et yocto_relay.php
Ces deux includes PHP permettent d'avoir accès aux fonctions permettant de gérer les modules
Yoctopuce.
yocto_api.php
gérer les modules contenant un relais, comme le Yocto-PowerRelay-V2.
YAPI::RegisterHub
La fonction
YAPI::RegisterHub
Yoctopuce, ou plus exactemenent sur quelle machine 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.
YRelay::FindRelay
La fonction
YRelay::FindRelay
son 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()
module correspondant est présent et en état de marche.
set_state
La méthode
set_state()
l'une ou l'autre de ses sorties. Les deux paramètres possibles sont
pour la sortie B.
Y_STATE_B
Un exemple réel
Ouvrez votre éditeur de texte préféré
accessible par votre serveur web/PHP avec les fichiers de la librairie, et ouvrez-la page avec votre
4
Si vous n'avez pas d'éditeur de texte, utilisez Notepad plutôt que Microsoft Word.
112
doit toujours être inclus,
permet d'indiquer sur quelle machine se trouve les modules
indique la machine locale, en utilisant le port
permet de retrouver un relais en fonction du numéro de série de
renvoie un objet que vous pouvez ensuite utiliser à loisir pour contrôler le
de l'objet renvoyé par
de l'objet renvoyé par
4
, recopiez le code ci dessous, sauvez-le dans un répertoire
yocto_relay.php
YRelay::FindRelay
permet faire basculer le relais vers
yFindRelay
Y_STATE_A
est nécessaire pour
(le port
4444
permet de savoir si le
pour la sortie A et
www.yoctopuce.com