17. Utilisation du Yocto-Meteo avec Android
17.5. Contrôle de la fonction Humidity
Il suffit de quelques lignes de code pour piloter un Yocto-Meteo. Voici le squelette d'un fragment de
code Java qui utilise la fonction Humidity.
[...]
// On récupère l'objet représentant le module (ici connecté en local sur USB)
YAPI.EnableUSBHost(this);
YAPI.RegisterHub("usb");
humidity
= YHumidity.FindHumidity("METEOMK1-123456.humidity");
//Pour gérer le hot-plug, on vérifie que le module est là
if (humidity.isOnline())
{
//Use humidity.get_currentValue()
...
}
[...]
Voyons maintenant en détail ce que font ces quelques lignes.
YAPI.EnableUSBHost
La fonction
YAPI.EnableUSBHost
fonction prend en argument un objet de la classe
classe). Si vous comptez uniquement vous connecter à d'autres machines par IP vous cette fonction
est factultative.
YAPI.RegisterHub
La fonction
YAPI.RegisterHub
être recherchés. Le paramètre est l'adresse du virtual hub capable de voir les modules. Si l'on passe
la chaine de caractère
machine. Si l'initialisation se passe mal, une exception sera générée.
YHumidity.FindHumidity
La fonction
YHumidity.FindHumidity
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-
Meteo avec le numéros de série METEOMK1-123456 que vous auriez appelé "MonModule" et dont
vous auriez nommé la fonction humidity "MaFonction", les cinq appels suivants seront strictement
équivalents (pour autant que MaFonction ne soit définie qu'une fois, pour éviter toute ambiguïté):
humidity
= YHumidity.FindHumidity("METEOMK1-123456.humidity")
humidity
= YHumidity.FindHumidity("METEOMK1-123456.MaFonction")
humidity
= YHumidity.FindHumidity("MonModule.humidity")
humidity
= YHumidity.FindHumidity("MonModule.MaFonction")
humidity
= YHumidity.FindHumidity("MaFonction")
YHumidity.FindHumidity
contrôler le capteur d'humidité.
isOnline
La méthode
YHumidity.isOnline()
si le module correspondant est présent et en état de marche.
get_currentValue
La méthode
get_currentValue()
permet d'obtenir l'humidité relative actuelle mesurée par le capteur. La valeur de retour est un
nombre flottant, représentant directement le nombre de %RH.
120
initialise l'API avec le Context de l'application courante. Cette
initialise l'API de Yoctopuce en indiquant où les modules doivent
, l'API va travailler avec les modules connectés localement à la
"usb"
permet de retrouver un capteur d'humidité en fonction du
renvoie un objet que vous pouvez ensuite utiliser à loisir pour
de l'objet renvoyé par
de l'objet renvoyé par
android.content.Context
FindHumidity
YHumidity.FindHumidity
(ou d'une sous-
permet de savoir
www.yoctopuce.com