Quelques senseurs simples

Un senseur est un composant électronique parfois rudimentaire permettant à Arduino de capter une modification de son environnement. Bouton, potentiomètre, capteur de lumière, de température, de champ magnétique, en voici quelques uns.

Le montage de capteurs simples (on verra qu’il y a aussi des capteurs dits complexes) requiert peu de composants, la plupart du temps le capteur lui-même s’accompagne d’une résistance connectée au ground.

Boutons simples ou évolués

Le bouton est le plus simple des capteurs. Un flux électrique est envoyé par arduino, une des pin contrôle digitalement ce qui lui parvient en retour.

Particularités
- Un contact entre deux cables peut être un bouton, c’est donc un des capteurs les plus faciles à fabriquer
- On utilise une entrée digitale, l’information capturée est donc HIGH (oui) ou LOW (non).

Concrètement, le montage requiert tout de même l’intervention d’une résistance (généralement 10K, mais la tolérance est grande).

PNG - 25.7 ko

Le code sur le site arduino.cc

Le "debounce"
Des parasites peuvent altérer la bonne captation du bouton. Il est donc généralement recommandé de placer un peu de code supplémentaire pour faire ce qu’on appelle un "debounce". En effet, un vieux bouton peut avoir dans un espace de temps très court 3 ou 4 passages du HIGH au LOW, à cause de l’usure des composant, ou de la faible pression sur le bouton, ou un mauvais contact en général. Pour éviter que ça ne perturbe le reste de la programmation, le déclenchement et l’arrêt intempestif d’action, on ajoutera quelques lignes.

Le code et des explications sur le site arduino.cc

L’astuce consiste a attendre un temps court (paramétrable) avant de décider que le bouton a changé d’état. Par défaut, 50 millisecondes, ce qui est très rapide mais suffisant pour éviter à un parasite de se faire passer pour une action humaine.

Un potentiomètre

PNG - 27 ko

Un potentiomètre est une résistance variable, un composant qui permet de doser la quantité de flux électrique. Les potentiomètres sont identifié par leur résistance en ohms. 10K, 47K par exemple. Il existe des potentiomètres rotatifs de toutes sortes et des sliders (dit "à glissière").

Particularités
- Un potentiomètre est variable, il donne donc une information "analogique" que l’on récupère avec les entrées analogiques d’arduino
- Arduino peut récupérer 1024 paliers maximum en provenance d’un potentiomètre (valeurs de 0 à 1023)

Techniquement, le potentiomètre comporte 3 broches. La broche du milieu sera connectée à une des entrées analogiques de l’arduino. Les broches à gauche et à droite seront connectées au 5V et au ground indifféremment (l’ordre aura juste une influence sur le sens de rotation).

Voir la page avec schéma et code sur le site arduino.cc

Senseur magnétique (hall effect)

Le senseur magnétique n’est pas une boussole mais un capteur réagissant typiquement à un aimant. C’est donc un capteur de proximité, puisque l’aimant ne doit pas toucher le senseur pour que celui-ci le détecte.
Les applications sont diverses, par exemple savoir lorsqu’une boite est ouverte ou fermée. Les compteurs embarqués sur les vélos utilisent ce type de capteur.

Particularités
- C’est un capteur sans contact
- Il nécessite un aimant
- On utilise une entrée digitale, l’information capturée est donc HIGH (oui) ou LOW (non).

Le montage est classique, avec une résistance et une entrée digitale.

Une page d’info complète avec du code sur le site de MC Hobby

Un autre article sur différents types de hall effect sensor

Capteur de choc

Le piezo est un étrange capteur, puisqu’il est également employé pour émettre les sons, notamment les mélodies nasillardes des cartes de voeux musicales.

Particularités
- Un piezo récupère une information "analogique" que l’on récupère avec les entrées analogiques d’arduino
- Arduino peut récupérer 1024 paliers maximum en provenance d’un piezo (valeurs de 0 à 1023)
- L’information d’un piezo est assez versatile (des pics très forts avec des retour à zéro), la récupération de l’information demande une forme de "debounce" comme celle du bouton.

Comme capteur, le piezo necessite un montage assez standard, mais avec une résistance assez forte : 1 million de ohms dans le cas de ce schéma.

Pour tester un piezo, le même sketch que pour le potentiomètre peut être utilisé.

Exemple de sketch sur le site arduino:playground.

Capteur de lumière

Le LDR (Light Dependent Resistor) est une résistance variable, comme le potentiomètre, sauf qu’ici c’est la lumière reçue sur le capteur qui détermine la puissance du flux électrique qui le traverse. Le capteur est d’une taille variable (de quelques millimètres à un centimètre environ).

Particularités
- Un LDR est variable, il donne donc une information "analogique" que l’on récupère avec les entrées analogiques d’arduino.
- Arduino peut récupérer 1024 paliers maximum en provenance d’un ldr (valeurs de 0 à 1023), mais la plupart du temps on ne récupère pas toute cette plage de valeur. Il faut donc étalonner dans le programme les valeurs reçues
- Comme le capteur est lié à la lumière qu’il reçoit, les conditions d’utilisation sont très déterminantes.

Le montage est similaire à un bouton simple, la résistance qui sera associée dépend du capteur, entre 1 et 10k ohms suffisent généralement. La résistance influencera les valeurs récupérées.

Pour tester un ldr, le même sketch que pour le potentiomètre peut être utilisé.

Forum

  • Quelques senseurs simples par Marion17 , 7 février 2013

    C’est fort cartésien je vous dis du coup mille remerciements. Marion du blog sur le black jack sur internet