8. Utilisation du Yocto-4-20mA-Tx 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
$currentloopoutput
("TX420MA1-123456.currentLoopOutput");
// Pour gérer le hot-plug, on vérifie que le module est là
if($currentloopoutput->isOnline())
{
// Utiliser currentloopoutput->set_current()
[...]
}
Voyons maintenant en détail ce que font ces quelques lignes.
yocto_api.php et yocto_currentloopoutput.php
Ces deux includes PHP permettent d'avoir accès aux fonctions permettant de gérer les modules
Yoctopuce.
yocto_api.php
nécessaire pour gérer les modules contenant une sortie 4-20mA, comme le Yocto-4-20mA-Tx.
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.
YCurrentLoopOutput::FindCurrentLoopOutput
La fonction
YCurrentLoopOutput::FindCurrentLoopOutput
sortie 4-20mA en fonction du numéro de série de 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-4-20mA-Tx avec le numéros de série TX420MA1-123456 que vous
auriez appelé "MonModule" et dont vous auriez nommé la fonction currentLoopOutput "MaFonction",
les cinq appels suivants seront strictement équivalents (pour autant que MaFonction ne soit définie
qu'une fois, pour éviter toute ambiguïté):
$currentloopoutput
("TX420MA1-123456.currentLoopOutput");
$currentloopoutput
);
$currentloopoutput
("MonModule.currentLoopOutput");
$currentloopoutput
$currentloopoutput
YCurrentLoopOutput::FindCurrentLoopOutput
ensuite utiliser à loisir pour contrôler la sortie sortie 4-20mA.
isOnline
La
méthode
YCurrentLoopOutput::FindCurrentLoopOutput
correspondant est présent et en état de marche.
get_loopPower
La méthode
get_loopPower()
permet de connaitre l'état de l'alimentation de la boucle de courant.
set_current
La méthode
set_current()
boucle. Le paramètre est une valeur entre 3.0 et 21.0 mA.
44
=
YCurrentLoopOutput::FindCurrentLoopOutput
doit toujours être inclus,
permet d'indiquer sur quelle machine se trouve les modules
indique la machine locale, en utilisant le port
=
YCurrentLoopOutput::FindCurrentLoopOutput
=
YCurrentLoopOutput::FindCurrentLoopOutput("TX420MA1-123456.MaFonction"
=
YCurrentLoopOutput::FindCurrentLoopOutput
= YCurrentLoopOutput::FindCurrentLoopOutput("MonModule.MaFonction");
= YCurrentLoopOutput::FindCurrentLoopOutput("MaFonction");
isOnline()
de l'objet retourné par la fonction
permet de d'ajuster la quantité de courant qui doit circuler dans le
yocto_currentloopoutput.php
permet de retrouver une
renvoie un objet que vous pouvez
de
l'objet
permet
de
YFindCurrentLoopOutput
est
(le port
4444
renvoyé
par
savoir
si
le
module
www.yoctopuce.com