Voici un petit composant très rigolo : il est composé d’une petite ampoule en verre contenant deux lames souples (d’où le nom ILS) qui réagissent lorsqu’elles sont soumises à un champ magnétique :
– en faisant contact immédiatement lorsque le champ est présent, faisant un court-circuit entre les deux pattes
– en relâchant le contact tout aussi vite, ouvrant le circuit des deux pattes
Pour cette propriété, les usages d’un "reed switch" sont nombreux : impulsions de passage d’un petit aimant pour un compte-tour, ouverture d’une porte pour une alarme, etc...
Le code
Il n’y a pas vraiment de code spécifique pour un reed switch : il se comporte comme un interrupteur temporaire classique. Si vous voulez le tester, voici un exemple très simple :
/**
* Interrupteur magnétique ("reed switch")
*
* Simple utilisation : changement de la led.
*
* (c) 2010 - Julien Holtzer pour Pobot
*/
// la led déjà placée sur une Arduino classique (DIGITAL 13)
int ledPin = 13 ;
// la patte de connexion de l’interrupteur (DIGITAL 2 car 0 et 1 sont utilisés par la série)
int inputPin = 2 ;
// statut de l’interrupteur
int val = 0 ;
void setup()
pinMode(ledPin, OUTPUT) ;
pinMode(inputPin, INPUT) ;
void loop()
// lire l’entrée
val = digitalRead(inputPin) ;
//
if (val == HIGH)
// si l’interrupteur est ouvert, éteindre la led
digitalWrite(ledPin, LOW) ;
else
// s’il est fermé, allumer la led
digitalWrite(ledPin, HIGH) ;