Yoctopuce Yocto-IO Mode D'emploi page 120

Table des Matières

Publicité

15. Utilisation du Yocto-IO 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
$digitalio
= YDigitalIO::FindDigitalIO("YMINIIO0-123456.digitalIO");
// Pour gérer le hot-plug, on vérifie que le module est là
if($digitalio->isOnline())
{
// Utiliser digitalio->set_state()
[...]
}
Voyons maintenant en détail ce que font ces quelques lignes.
yocto_api.php et yocto_digitalio.php
Ces deux includes PHP permettent d'avoir accès aux fonctions permettant de gérer les modules
Yoctopuce.
yocto_api.php
pour gérer les modules contenant un port d'E/S digital, comme le Yocto-IO.
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.
YDigitalIO::FindDigitalIO
La fonction
YDigitalIO::FindDigitalIO
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-IO avec le numéros de série YMINIIO0-123456 que vous auriez appelé "MonModule" et dont
vous auriez nommé la fonction digitalIO "MaFonction", les cinq appels suivants seront strictement
équivalents (pour autant que MaFonction ne soit définie qu'une fois, pour éviter toute ambiguïté):
$digitalio
= YDigitalIO::FindDigitalIO("YMINIIO0-123456.digitalIO");
$digitalio
= YDigitalIO::FindDigitalIO("YMINIIO0-123456.MaFonction");
$digitalio
= YDigitalIO::FindDigitalIO("MonModule.digitalIO");
$digitalio
= YDigitalIO::FindDigitalIO("MonModule.MaFonction");
$digitalio
= YDigitalIO::FindDigitalIO("MaFonction");
YDigitalIO::FindDigitalIO
contrôler le port d'E/S digital.
isOnline
La méthode
isOnline()
savoir si le module correspondant est présent et en état de marche.
set_state
La méthode
set_portState()
chacune des sorties en une seule fois. Le paramètre est un entier représentant un bitmap: Bit 0 pour
la première sortie, bit 1 pour la deuxième, etc..
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.
114
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 port d'E/S digital en fonction
renvoie un objet que vous pouvez ensuite utiliser à loisir pour
de l'objet renvoyé par
de l'objet renvoyé par
4
, recopiez le code ci dessous, sauvez-le dans un répertoire
yocto_digitalio.php
YDigitalIO::FindDigitalIO
yFindDigitalIO
est nécessaire
(le port
4444
permet de
permet d'affecter
www.yoctopuce.com

Publicité

Table des Matières
loading

Table des Matières