Voici un détecteur simple réalisé à partir d'une simple barrière infrarouge.

Detecteur_de_passage_IR.png

Les composants sont classiques (les transistors qui trainent dans mes tiroirs depuis longtemps ont enfin trouvé leur utilisation !!).

Détecteur IR-1

J'en ai réalisé plusieurs à partir de plaques pastillées.

Je n'ai pas câblé le second transistor et la led rouge, mais seulement l'émetteur et récepteur IR, ainsi que le premier transistor.

3 fils sont reliés à l'Arduino : le +5V, la masse 0V et le signal S qui va sur une entrée de l'Arduino.

La petite diode qui s'allume quand un train passe, n'est pas indispensable. Je l'ai testée sur un prototype seulement.


Le circuit est assez long pour se loger sous les rails et permettre à chaque diode IR de se trouver de chaque coté des rails. Le mieux est de s'arranger pour mettre ce circuit en biais par rapport à la perpendiculaire aux rails, de façon à limiter le "flash" qui se produirait dans l'interval entre deux wagons.

C'est ce que j'ai fait, mais en réalité, cet espace entre wagons est plus ou moins grand selon les trains et cela ne suffit pas complètement. On verra plus loin (avec le TCO) qu'un logiciel de "debouncing" approprié permet de masquer complètement les espaces entre wagons. Car ce qui compte c'est de détecter la tête et la queue du train seulement.

Astuce :

J'utilise une entrée analogique de l'Arduino. Ainsi, je peux faire, par logiciel, soit une mesure analogique (0..1023), soit une mesure digitale (0 ou 1) de la sortie du détecteur.

En effet, comme les diodes émettrices sont équipées d'une lentille convergente qui donne un faisceau très étroit, et comme on ne voit rien à l'oeil nu, il est difficile de réaliser un bon alignement de la led IR et du capteur. En faisant une lecture analogique, on obtient une valeur qui dépend de l'alignement. Cette valeur doit être la plus faible possible quand les 2 diodes se voient. Cela doit correspondre au niveau 0 logique.

Quand la lumière ne passe pas, la valeur est maximum, ou alors une lumière parasite vient perturber le capteur !

Dans ma réalisation, j'ai divisé la valeur analogique (0..1023) par 100 et je l'affiche sur un afficheur à 7 segments dans un mode "calibrage". Je bouge alors la diode émettrice pour trouver une valeur inférieure ou égale à 2. Ainsi, je suis certain que la lecture digitale ensuite sera correcte.

Cette astuce va s'avérer très utile car les diodes sont parfois chahutées pendant la construction du décor et il faut permettre une maintenance facile des capteurs.

Suivant : Un détecteur de passage RFID

Précédent : Construction de la mini-centrale