15. Utilisation du Yocto-0-10V-Tx en Python
Il suffit de quelques lignes de code pour piloter un Yocto-0-10V-Tx. Voici le squelette d'un fragment
de code Python qui utilise la fonction VoltageOutput.
[...]
# 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
voltageoutput
= YVoltageOutput.FindVoltageOutput("TX010V01-123456.voltageOutput1")
# Pour gérer le hot-plug, on vérifie que le module est là
if
voltageoutput.isOnline():
# use voltageoutput.set_currentVoltage()
[...]
[...]
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
YVoltageOutput.FindVoltageOutput
La fonction
YVoltageOutput.FindVoltageOutput
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-0-10V-Tx avec le numéros de série TX010V01-123456 que vous auriez appelé
"MonModule" et dont vous auriez nommé la fonction voltageOutput1 "MaFonction", les cinq appels
suivants seront strictement équivalents (pour autant que MaFonction ne soit définie qu'une fois, pour
éviter toute ambiguïté):
voltageoutput
= YVoltageOutput.FindVoltageOutput("TX010V01-123456.voltageOutput1")
voltageoutput
= YVoltageOutput.FindVoltageOutput("TX010V01-123456.MaFonction")
voltageoutput
= YVoltageOutput.FindVoltageOutput("MonModule.voltageOutput1")
voltageoutput
= YVoltageOutput.FindVoltageOutput("MonModule.MaFonction")
voltageoutput
= YVoltageOutput.FindVoltageOutput("MaFonction")
YVoltageOutput.FindVoltageOutput
loisir pour contrôler la sortie de tension.
isOnline
La méthode
isOnline()
permet de savoir si le module correspondant est présent et en état de marche.
set_currentVoltage
La
méthode
set_currentVoltage()
VoltageOutput.FindVoltageOutput
sur le bornier de sortie. La paramètre est la tension, exprimée en volts.
voltageMove
La méthode
voltageMove()
la valeur choisie. Le deuxième paramètre est la durée de la transition, en millisecondes.
Un exemple réel
Lancez votre interpréteur Python et ouvrez le script correspondant, fourni dans le répertoire
Examples/Doc-GettingStarted-Yocto-0-10V-Tx de la librairie Yoctopuce.
98
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 à
de l'objet renvoyé par
permet de changer instantanément la tension produite
permet de d'ajuster progressivement la tension (transition linéaire) à
, elle permet de travailler avec les modules
une explication du problème.
errmsg
permet de retrouver une sortie de tension
YVoltageOutput.FindVoltageOutput
de
l'objet
retourné
par
la
fonction
www.yoctopuce.com