In questa lezione impareremo ad utilizzare un sensore che fornirà uno stato 0 oppure 1, in relazione ad un evento esterno, come la presenza di un campo magnetico.

La lezione è propedeutica alle successive due lezioni (lezione 18 e 19) dove svilupperemo un progetto didattico ad ampio respiro.

Cos’è un reed switch

Gli interruttori Reed sono disponibili in una varietà di forme e dimensioni (posso essere aperti o chiusi da un involucro esterno )ed il loro funzionamento è abbastanza semplice.

Immaginiamo di avere due fili di materiale ferromagnetico che sono posti ad una piccola distanza tra loro, ma non a contatto (circuito aperto) .

Se avviciniamo ad essi un campo magnetico, i due fili si avvicineranno chiudendo il circuito. Il circuito si chiude con un opportuno campo magnetico (i due fili normalmente sono già magnetizzati, sia dal campo magnetico terrestre, sia dalla corrente che li attraversa…e quindi si respingono debolmente).

Gli interruttori Reed vengono utilizzati in una varietà di prodotti, tra cui interruttori di prossimità, interruttori a galleggiante e relè Reed.

Più in generale, I sensori magnetici più utilizzati sono la riluttanza variabile, l’effetto Hall e il sensore di reed switch. I sistemi di sicurezza di crash automobilistico utilizzano sensori basati su un meccanismo di bloccaggio che può essere chiuso o aperto con corrente elettrica.

I sensori magnetici indirettamente misurano proprietà come direzione, posizione, rotazione, angolo e corrente rilevando il campo magnetico e le sue modifiche. La prima applicazione del magnete permanente è stata una bussola cinese del III secolo aC, che è un sensore di direzione. Rispetto ad altri metodi diretti come il sensore ottico o meccanico, la maggior parte dei sensori magnetici richiede un certo trattamento del segnale per ottenere la proprietà di interesse. Tuttavia, essi forniscono dati affidabili senza contatti fisici anche in condizioni avverse come sporcizia, vibrazione, umidità, gas e petrolio pericolosi ecc.

L’interruttore reed utilizzato nella nostra lezione è normalmente aperto: quando l’interruttore non è influenzato da un campo magnetico, l’interruttore è aperto e non conduce elettricità. Quando un magnete si avvicina abbastanza per attivare l’interruttore, i contatti si chiudono e la corrente può fluire.

Attivazione magnetica del sensore

Proprio come il vostro magnete può avere due poli, la coppia di contatti ferrosi dell’interruttore reed è anche polarizzata. La posizione, la distanza e l’orientamento del vostro magnete svolgono un ruolo nella determinazione dell’attivazione dell’interruttore.

Questi grafici di esempio, da App Hamlin App AN104, chiariscono  come la posizione del magnete influenza l’attivazione dell’interruttore.

Grafici di attivazione dell'interruttore Reed

Il grafico a sinistra mostra un’area di attivazione che si ha quando il magnete viene tenuto in parallelo all’interruttore a lamella. Questa zona, come previsto, è un campo principalmente parabolico. Il grafico a destra mostra ciò che si può aspettare quando il magnete è perpendicolare all’interruttore. In questo orientamento, di solito c’è una zona morta al centro dell’interruttore. Se è in mezzo al corpo, potrebbe non essere attivata, anche quando il magnete tocca l’interruttore a canna.

La polarità e la posizione del magnete svolgono un ruolo importante nel modo in cui il vostro reed switch si attiva. Se il vostro interruttore non sembra sensibile come si desidera, provate a mettere il magnete da un lato o dall’altro .

PROGRAMMAZIONE CON SCRATCH E RASPBERRY

La connessione del sensore a Raspberry è molto semplice, io ho utilizzato un sensore già pronto a 3 uscite, una va sulla tensione a 5V, una su GND e l’altra sul sgenale (che nel mio caso sarà il pin10).

Esistono anche sensori a 4 uscite, che utilizzeremo in prossime lezioni, ma una di queste uscite è di tipo analogico e legge dati da 0 a 1023, in pratica è un sensore magnetico che misura parametri quale intensità/distanza.

Colleghiamo il sensore direttamente a Raspberry:

Una volta collegati i piedini GND e VCC una luce blu si accende per segnalare che il sensore è attivo, inseriamo il terzo cavo sul pin 10.

In Scratch abilitiamo, su sensori, la lettura del pin10.

Quando avviciniamo dei magneti molto intensi (ho utilizzato 4 magneti sferici al neodimio) già ad una distanza di 8cm il sensore fornisce valore 0.

Abbiamo costruito un sistema che fornisce uno stato alto basso al passaggio di un magnete.

Gli scopi sono molteplici: sensore di prossimità, rilevazione di un campo magnetico.

Immaginiamo di costruire un pendolo con all’estremità un magnete, un sensore di questo tipo rileverà il passaggio del magnete, ogni qualvolta esso passa per la posizione verticale , misurando il tempo del semi periodo.

Lo script per misurare i tempi di passaggio/presenza del magnete è il seguente:

In pratica ho creato una lista chiamata passaggi, ogni qualvolta il sensore rileva la presenza del campo magnetico, ovvero sgenerà un valore 0, si aggiunge alla lista il tempo parziale del cronometro. E’ utile fornire anche un tempo di attesa, ho messo 0.1 secondi, per evitare scritture multiple, ma questo tempo dipende dalla velocità del fenomeno.

Ecco un video che spiega il suo funzionamento:

Vai alla barra degli strumenti