Skip to content
logo9minuti120x48
Menu
  • Home
  • Tutorial
    • Zaini
    • Stampa 3d
    • ebook
    • Informatica
  • Scritti
    • Racconti
    • Articoli
    • Temi
    • Storia
  • Video
  • Progetti
    • Progetto Carcere
    • Progetto Istruzione
    • Progetto Acque pulite
    • Progetto Tecnologia
  • Chi siamo
    • LinkTree
  • Privacy Policy
    • Cookie Policy (EU)
  • Blog
  • Donazioni
Menu
Arduino Uno r3 e un interruttore reed switch di vetro

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

Posted on 6 Luglio 201815 Settembre 2019 by Alessandro Oppo

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

Dammi un 5 virtuale, clicca like e condividi.

  • Fai clic qui per condividere su LinkedIn (Si apre in una nuova finestra)
  • Fai clic per condividere su Facebook (Si apre in una nuova finestra)
  • Fai clic qui per condividere su Twitter (Si apre in una nuova finestra)
  • Fai clic qui per condividere su Reddit (Si apre in una nuova finestra)
  • Fai clic per condividere su WhatsApp (Si apre in una nuova finestra)
  • Fai clic per condividere su Telegram (Si apre in una nuova finestra)
  • Fai clic per inviare un link a un amico via e-mail (Si apre in una nuova finestra)

Related

4 thoughts on “Interruttori reed switch e Arduino (usati per contachilometri e allarmi)”

  1. renato gaudioso ha detto:
    17 Settembre 2020 alle 8:24 pm

    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à

    Rispondi
    1. Alessandro Oppo ha detto:
      18 Settembre 2020 alle 12:15 am

      Ciao Renato, non saprei se usano dei reed. Potrebbero anche avere dei sensori a pulsante nella parte superiore o inferiore. Dovresti riuscire a vederlo nel caso. Fammi sapere.

      Rispondi
  2. sandro ha detto:
    2 Febbraio 2022 alle 9:13 pm

    Ciao vorrei sapere se su questo progetto interruttore reed magnetico è possibile far scattare il relè dopo che abbia contatto un x numero di volte il magnete?
    esempio su un asse rotante con un magnete ,attivare il relè dopo 10 giri?
    e se possibile avere un esempio di codice?
    grazie…

    Rispondi
    1. Alessandro Oppo ha detto:
      3 Febbraio 2022 alle 4:45 pm

      Ciao Sandro, certo che è possibile! Purtroppo al momento non riesco ad aiutarti scrivendo il codice… a grandi linee dovresti creare una variabile che aumenti di uno ad ogni passaggio, ad ogni ciclo effetti un controllo sulla variabile e quando è a 10 attivi il relay.

      Rispondi

Cosa ne pensi? Fammelo sapere con un messaggio Annulla risposta

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

Scoprici sui social

  • YouTube
  • Telegram
  • Facebook
  • RSS Feed

    Ultimi post

    • Buzzurretto e la scuola – Racconto breve
    • Il mio punto di vista sul progetto scuola
    • Di nuovo nuvole – Racconto breve
    • L’intelligenza artificiale, la forza della logica e la morale – ChatGPT
    • Videogrep, how to extract a certain word from a video (or more)
    • Brucerò tutto non appena è stato scritto – Racconto breve
    • C’è del lavoro da fare – Racconto breve

    Newsletter

    ©2023 9minuti | Design: Newspaperly WordPress Theme
    Manage Cookie Consent
    Usiamo cookie per ottimizzare il nostro sito web ed i nostri servizi.
    Cookie funzionali Sempre attivo
    The technical storage or access is strictly necessary for the legitimate purpose of enabling the use of a specific service explicitly requested by the subscriber or user, or for the sole purpose of carrying out the transmission of a communication over an electronic communications network.
    Preferences
    The technical storage or access is necessary for the legitimate purpose of storing preferences that are not requested by the subscriber or user.
    Statistics
    The technical storage or access that is used exclusively for statistical purposes. The technical storage or access that is used exclusively for anonymous statistical purposes. Without a subpoena, voluntary compliance on the part of your Internet Service Provider, or additional records from a third party, information stored or retrieved for this purpose alone cannot usually be used to identify you.
    Marketing
    The technical storage or access is required to create user profiles to send advertising, or to track the user on a website or across several websites for similar marketing purposes.
    Gestisci opzioni Gestisci servizi Gestisci fornitori Per saperne di più su questi scopi
    Visualizza preference
    {title} {title} {title}
     

    Caricamento commenti...