Programmation

Les codes et programmes d’Interface-Z

Accueil > Outils > Traitement des données > Analyse > Double comparateur en Processing

Double comparateur en Processing

Mis à jour le lundi 13 juillet 2020, par zandrine

Explications générales : index.

Le double comparateur est présenté ici utilisé avec un capteur pyroélectrique analogique.

Déclenchement d’une action unique

pyro_db_seuil.pde

Dans cet exemple, il y a un capteur branché sur la première entrée d’une carte "2 analogiques" ou d’une carte ZIP. La réception des données se fait grâce à la librairie RWMidi. Une fonction controllerChangeReceived() met à jour un tableau valeur[] dont la première case (valeur[0]) contient les données du capteur pyro.

Les données issues du capteur sont affichées dans la console. Les seuils choisis sont 59 et 66.

Les données sont comparées aux deux seuils avec > et < dans un if. Si la donnée est au-delà de ces seuils, c’est-à-dire inférieure à la valeur basse ou supérieure à la valeur haute, les variables compteur et onebang passent à 0. La variable compteur est utilisée ensuite pour lancer l’action à la condition qu’elle soit à 0. onebang, dont le nom est inspiré de l’objet Max, permet de gérer l’unicité de l’action. L’action n’est déclenchable que si onebang = 1, mais onebang prend la valeur 0 dès que cette action est déclenchée.

Le compteur sert à calculer un délai arbitraire après lequel la variable onebang est à nouveau à 1, c’est-à-dire que si le capteur bouge, une action sera déclenchable. Tant que onebang est à 0, les données du capteur ne sont pas prises en compte.