Donc je fais des tests avec les composants piezo électriques, achetés chez Evola. Il peuvent à la fois servir de capteurs de pression et d'émetteurs de sons, mais la je les utilise comme capteurs, je ferai par la suite des tests de sons.
Étant donné qu'ils créent un certain voltage quand on les touche, pressione ou tapote, on peut facilement capter ces données avec l'arduino.
Je l'ai utilisé et modifié pour avoir 2 approches différentes: le piezo comme bouton (logique on/off) et le piezo comme capteur de niveaux de pression.
Donc tout d'abord: tapoter pour allumer/éteindre une diode, rien de plus simple. Dès qu'on tapote le piezo, il crée un voltage. Il n'ya même pas besoin de tapoter fort, au simple toucher ou avec un légère pression on a deja un voltage qui apparait. Un seuil permettant de faire la différence entre un toucher volontaire et du bruit est utilisé afin d'activer ou désactiver la led.
Ensuite, je me suis dit qu'on pouvait faire un peu comme sur les manettes de jeu ou sur les claviers des telephones portables nokia d'il y a quelques années (1=abc, 2=def...): 1 tap pour allumer une led de couleur bleue, 2 tap pour allumer une led de couleur verte, 3 tap pour faire du cyan, 4 ou plus ça éteint les diodes. Évidemment il faut un compteur de tap, ainsi qu'un timer qui permet de savoir si j'ai fait 3 tap a la suite ou 3 tap a des intervales plus long.. un peu comme quand on appuie trois fois la touche 1 sur un nokia et ça fait 'c' ou 'aaa' , selon si on a appuyé dans les temps ou pas.
Après je me suis penchée sur les niveaux de pression, parce qu'effectivement, selon si j'appuie fortement ou pas, les valeurs captées par l'Arduino varient: entre 0 et 1023 (1023 ou 1024 je ne sais jamais) comme pour tout capteur branché à des pins analogiques.
Dans ce cas là, effleurer a peine le composant piezoelectrique génère un courant assez faible, et des valeurs captées sur l'Arduino qui vont entre 30 et 200 dans mon cas (mais ça depend de la résistance qu'on utilise, ainsi que du composant piezo). Ceci allume la led bleue.
Tapoter un peu pour allumer la led verte, et finalement tapoter plus fort pour activer le cyan.
Évidemment il y a du calibrage encore à faire, parceque les valeurs sont ponctuelles et variantes: c'est à dire que quand j'appuie fortement, il y a pas mal de valeurs en dessous de mon plus grand seuil (700).
Ça fait comme une sorte de courbe lorsque je tapote le piezo, donc il y a beacoup de parasites qui font que la led sera bleue puis verte puis cyan en moins d'une demie seconde et qu'elle peut eventuellement repasser au bleue après le cyan, si des valeurs inférieures viennent se coller juste après ma valeur la plus grande au dessus de 700..
Créer un tableau de valeur et calculer la moyenne des 5 ou 10 dernières valeurs peut être du coup une solution, et c'est ce que j'utilise pour l'accéléromètre par exemple.
Les trois couleurs: