Interruttori reed switch e Arduino (usati per contachilometri e allarmi)

Arduino Uno r3 e un interruttore reed switch di vetro
Arduino Uno r3 e un interruttore reed switch di vetro
0
(0)

Vediamo come usare un interruttore reed, meglio conosciuti con il temine inglese reed switches. Sono dei minuscoli interruttori che si attivano (e chiudono quindi il circuito) con un campo magnetico nelle vicinanze.

In questo articolo vedremo come collegare gli interruttori reed switch ad Arduino e ad accendere un led.

Vediamo subito un breve video sul funzionamento.

A cosa servono?

Questi interruttori reed sono molto economici e vengono utilizzati in diversi ambiti, i più comuni sono appunto gli allarmi da finestra e i contachilometri per le biciclette.

Nel primo caso l’interruttore reed è collegato ad un circuito dell’antifurto ed è posizionato sullo stipite della finestra, il magnete è invece incollato sul vetro. Se il magnete viene spostato (ad esempio aprendo la finestra), ecco che anche il circuito viene aperto e scatta l’allarme.

Nei contachilometri della bicicletta invece viene posizionato un magnete su uno dei raggi della ruota anteriore mentre sulla forcella un interruttore di tipo reed conta i giri che la ruota compie.

Gli interruttori reed si trovano sia in forma di vetro con due steli metallici alle estremità, sia completamente avvolti in un case plastico (vedere il video), il ché garantisce ovviamente più resistenza.

Se siete dei curiosoni vi rimando alla pagine di Wikipedia.

Necessario:

  • Arduino Uno o simili
  • breadboard
  • interruttore reed
  • resistenza da 10k ohm

I collegamenti.

Il circuito, Arduino, interruttore reed e resistenza

Il circuito, l’interruttore reed è l’ampolla sopra la resistenza

N.B. Potete usare la 5v o la 3.3v indifferentemente.

Lo sketch

Ecco lo sketch da caricare. Passando un magnete vicino all’interruttore reed questo si chiuderà e il nostro Arduino illuminerà il led interno posto in corrispondenza del pin 13.
Vediamo ora, riga per riga, il nostro sketch.

#define reedPin 8
#define led 13

int reedState = 0;

void setup()
{
  pinMode(led, OUTPUT);
  pinMode(reedPin, INPUT);

  Serial.begin(9600);
}

void loop() {

  reedState = digitalRead(reedPin);

  if (reedState == HIGH){
    Serial.println("reed ON");
    digitalWrite(led, HIGH);
  }
  else{
    Serial.println("reed OFF");
    digitalWrite(led, LOW);
  }

  delay(500);
}
1 – Definiamo che ogni volta che la parola reedPin equivalga pari pari al numero 8
2 – Facciamo la stessa cosa per la parola led e il numero 13
3 – Dichiariamo una variabile intera di nome reedState e la inizializziamo a zero
8 – Attraverso la funzione pinMode indichiamo che il pin del led sarà un pin di output
9 – Indichiamo che il reedPin sarà invece un pin di input
11 – Metodo dell’oggetto Serial necessario per avviare una comunicazione via seriale
16 – Leggiamo lo stato del reedPin e lo salviamo all’interno della variabile reedState
18 – Se la variabile reedState è HIGH (e quindi l’interruttore reed è attivato) esegui i codice fra le graffe
19 – Stampa a monitor del messaggio reed ON tramite il metodo println dell’oggetto Serial
20 – Accensione del led interno
22 – Se la condizione della riga 18 non è vera allora viene eseguito il codice fra queste graffe
23 – Stampa a monitor del messaggio reed OFF tramite il metodo println dell’oggetto Serial
24 – Spegnimento del led interno
27 – Piccolo ritardo di mezzo secondo tra un ciclo e il successivo

Come al solito spero che anche questo tutorial sia stato d’aiuto a qualcuno, grazie per avermi letto. Rimango a disposizione per domande o chiarimenti.

Grazie,
Alessandro

Votalo e aiutami a migliorare!

Rating medio 0 / 5. Numero di voti 0

Nessun voto per il momento, vuoi essere il primo?

Clicca sul tuo social preferito.

Cosa ho sbagliato?

Hai qualche consiglio per migliorare la qualità?

Alessandro Oppo

Alessandro è un milanese che vorrebbe scappare da Milano, è appassionato di informatica ma vorrebbe vivere senza telefono, è un artigiano eppure vorrebbe robotizzare tutto, impara una cosa e già vorrebbe studiare dell’altro. Autodidatta da sempre, gli piace sbattere la testa finché tutto non funziona come vuole lui, spesso ci riesce anche! Il motto che si ripete dentro la testa è: “Se ci sono riusciti gli altri ci posso riuscire anche io”.

Potrebbero interessarti anche...

2 risposte

  1. renato gaudioso ha detto:

    Ho il frigo con la luce a led ma nn si accende più sarà il Reed sul bordo porta nn vi sono interruttori cosa sarà

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *

Questo sito usa Akismet per ridurre lo spam. Scopri come i tuoi dati vengono elaborati.