Table des Matières

Publicité

8. Utilisation du Yocto-RangeFinder en Python
Il suffit de quelques lignes de code pour piloter un Yocto-RangeFinder. Voici le squelette d'un
fragment de code Python qui utilise la fonction RangeFinder.
[...]
# On active la détection des modules sur USB
errmsg=YRefParam()
YAPI.RegisterHub("usb",errmsg)
[...]
# On récupère l'objet permettant d'intéragir avec le module
rangefinder
= YRangeFinder.FindRangeFinder("YRNGFND1-123456.rangeFinder")
# Pour gérer le hot-plug, on vérifie que le module est là
if
rangefinder.isOnline():
# use rangefinder.get_currentValue()
[...]
[...]
Voyons maintenant en détail ce que font ces quelques lignes.
YAPI.RegisterHub
La fonction
YAPI.RegisterHub
être recherchés. Utilisée avec le paramètre
connectés localement à la machine. Si l'initialisation se passe mal, cette fonction renverra une valeur
différente de
YAPI.SUCCESS
YRangeFinder.FindRangeFinder
La fonction
YRangeFinder.FindRangeFinder
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-RangeFinder avec le numéros de série YRNGFND1-123456 que vous auriez appelé
"MonModule" et dont vous auriez nommé la fonction rangeFinder "MaFonction", les cinq appels
suivants seront strictement équivalents (pour autant que MaFonction ne soit définie qu'une fois, pour
éviter toute ambiguïté):
rangefinder
= YRangeFinder.FindRangeFinder("YRNGFND1-123456.rangeFinder")
rangefinder
= YRangeFinder.FindRangeFinder("YRNGFND1-123456.MaFonction")
rangefinder
= YRangeFinder.FindRangeFinder("MonModule.rangeFinder")
rangefinder
= YRangeFinder.FindRangeFinder("MonModule.MaFonction")
rangefinder
= YRangeFinder.FindRangeFinder("MaFonction")
YRangeFinder.FindRangeFinder
pour contrôler le capteur de distance.
isOnline
La méthode
isOnline()
de savoir si le module correspondant est présent et en état de marche.
get_currentValue
La
méthode
YRangeFinder.FindRangeFinder
Un exemple réel
Lancez votre interpréteur Python et ouvrez le script correspondant, fourni dans le répertoire
Examples/Doc-GettingStarted-Yocto-RangeFinder de la librairie Yoctopuce.
Vous reconnaîtrez dans cet exemple l'utilisation des fonctions expliquées ci-dessus, cette fois
utilisées avec le décorum nécessaire à en faire un petit programme d'exemple concret.
#!/usr/bin/python
# -*- coding: utf-8 -*-
42
initialise l'API de Yoctopuce en indiquant où les modules doivent
"usb"
, et retournera via l'objet
renvoie un objet que vous pouvez ensuite utiliser à loisir
de l'objet renvoyé par
get_currentValue()
permet d'obtenir la distance en mm mesurée par le capteur.
, elle permet de travailler avec les modules
une explication du problème.
errmsg
permet de retrouver un capteur de distance en
YRangeFinder.FindRangeFinder
de
l'objet
permet
renvoyé
par
www.yoctopuce.com

Publicité

Table des Matières
loading

Table des Matières