Sensore ad effetto Hall: tutto ciò che devi sapere per i tuoi progetti Arduino

Sensore ad effetto Hall

Potresti essere alla ricerca di un dispositivo che ti consenta di rilevare i campi magnetici nelle vicinanze o di utilizzarlo come interruttore senza contatto, per applicazioni che richiedono protezione dall'acqua, ecc. In tal caso, puoi usare Sensori ad effetto HalQuello di cui ti mostrerò tutto ciò che devi sapere per integrarlo con i tuoi progetti futuri con Arduino. Infatti, se intendi utilizzarli insieme a magneti al neodimio, le applicazioni che puoi ottenere da essi sono molteplici.

Il collegamento di questo tipo di dispositivo è molto semplice, come puoi vedere. Inoltre, sono componenti elettronici  molto a buon mercato e che puoi trovare facilmente in molti negozi specializzati o online. Se vuoi saperne di più, puoi continuare a leggere ...

L'effetto Hall

Diagramma effetto Hall

Il suo nome deriva dal primo scopritore, il fisico americano Edwin Herbert Hall. Il effetto Hall È il fenomeno fisico che si verifica quando compare un campo elettrico dovuto alla separazione delle cariche elettriche all'interno di un conduttore attraverso il quale circola un campo magnetico. Questo campo elettrico (campo di Hall) avrà una componente perpendicolare al movimento delle cariche e alla componente perpendicolare del campo magnetico applicato. In questo modo, tra l'altro, è possibile rilevare la presenza di campi magnetici.

In altre parole, quando una corrente scorre attraverso un conduttore o semiconduttore e c'è un campo magnetico vicino, si verifica che un forza magnetica nei portapacchi che li raggruppa all'interno del materiale. Cioè, i portatori di carica si devieranno e si raggrupperanno su un lato del conduttore / semiconduttore. Come puoi immaginare, questo provoca una variazione del potenziale elettrico in questo conduttore / semiconduttore, producendo quel campo elettrico perpendicolare al campo magnetico.

Cos'è un sensore ad effetto Hall?

Sensore ad effetto Hall

Pertanto, una volta che sai come funziona l'effetto Hall, puoi parlare dei componenti o Sensori ad effetto Hall che sono in grado di sfruttare questo fenomeno per alcune applicazioni pratiche. Ad esempio, con loro puoi effettuare misurazioni di un campo magnetico.

Questi elementi sono ampiamente utilizzati in molti progetti elettronici e dispositivi di uso frequente. Ad esempio, nei veicoli puoi trovarli in alcuni sistemi di sicurezza, per misurare la posizione dell'albero a camme nel motore, per misurare la velocità del fluido, rilevare metalli e un lungo ecc.

La cosa buona di questo tipo di sensori ad effetto Hall, a differenza di altri, è che non è necessario il contatto. Cioè, possono svolgere queste attività da remoto, oltre ad essere totalmente immuni al rumore elettronico, alla polvere, ecc., Quindi sono abbastanza resistenti e affidabili nelle loro misurazioni. Tuttavia, la loro portata è limitata, poiché devono trovarsi a una certa distanza dal campo generato per poterlo catturare.

Tipo

All'interno dei sensori ad effetto Hall puoi trovare due tipi di base:

  • analogico: sono dispositivi molto semplici, con un pin o un'uscita che fornirà un segnale proporzionale all'intensità del campo magnetico che stanno catturando. Cioè, sono simili a sensore di temperatura, alla tensionee altri sensori che abbiamo descritto in dettaglio in questo blog.
  • digitale: nel caso di quelli digitali, sono molto più basilari di quelli analogici. Dal momento che non forniscono un'uscita proporzionale al campo, ma danno un valore di alta tensione se c'è un campo magnetico e basso se non c'è campo magnetico. Cioè, non possono essere utilizzati per misurare campi magnetici come quelli analogici, semplicemente per rilevare la loro presenza. Inoltre, questi digitali possono essere suddivisi in due ulteriori sottocategorie:
    • Scrocco: quelli di questo tipo si attivano all'avvicinarsi e mantengono il loro valore all'uscita fino all'avvicinarsi del polo opposto.
    • Switch: in questi altri l'uscita non verrà mantenuta, si disattivano quando il polo viene rimosso. Non è necessario avvicinare il polo opposto perché l'uscita cambi ...

Ti consiglio di usare magneti al neodimio, sono i migliori per il buon funzionamento di questi sensori ad effetto Hall.

Se stai cercando un sensore di tipo analogico, potrebbe essere una buona opzione Sensore Hall 49E. Con esso puoi rilevare la presenza di campi magnetici e anche misurarli. Ad esempio, puoi misurare i campi magnetici vicini, creare un tachimetro utilizzando un magnete per misurare i giri al minuto di un asse o velocità, rilevare quando una porta si apre o si chiude con un magnete, ecc. Questo sensore si trova in diversi negozi per pochi centesimi, o per qualcos'altro se lo si vuole montato su un PCB con tutto il necessario in un modulo pronto all'uso con Arduino:

  • Nessun prodotto trovato.
  • Nessun prodotto trovato.

Inoltre, se quello che cerchi è digitale, quindi puoi acquistare Sensore di Hall A3144, che è anche del tipo a interruttore, cioè non sarà necessario cambiare il polo. In questo modo sarai in grado di rilevare la presenza di un oggetto metallico, o se c'è o meno un campo magnetico, e persino creare un contatore RPM come nel caso precedente. Anche questo è facile da trovare, ed è altrettanto economico o più del precedente, sia sciolto che in modulo:

Nel caso dell'analogico, devi consultare la scheda tecnica del modello che hai acquistato. Per esempio, nel 49E Troverai un grafico su come misurare il campo magnetico e ti aiuterà a creare la formula che dovrai poi implementare nel codice sorgente di Arduino per calcolare la densità del flusso magnetico rilevato (mT). Nel caso del 49E sarebbe: B = 53.33V-133.3, a causa del campo magnetico e della tensione che può erogare alla sua uscita ...

Ciò che è comune per il digitale e l'analogico è il numero di pin che ha (pinout), in entrambi i casi è 3. Se metti il ​​sensore di Hall con la faccia rivolta verso di te, cioè con la faccia dove ha le scritte verso di te, allora il pin a sinistra sarà 1, quello centrale sarà 2 e quello alla tua destra sarà 3:

  • 1: sia sul 49E che sull'A3144 è presente il pin di alimentazione a 5V.
  • 2: la centralina è collegata in entrambi i casi a GND o massa.
  • 3: in entrambi i casi è l'uscita, cioè quella che misura o rileva il campo magnetico, generando una tensione attraverso di essa. Ricorda che in digitale ci vorranno solo due valori, alto o basso, mentre in analogico puoi applicare la formula precedente per sapere come viene rilevato quel campo ...

Integrazione del sensore ad effetto Hall con Arduino

Schema di collegamento del sensore ad effetto Hall con Arduino

Una volta visto come funziona e cosa c'è da sapere su questo sensore ad effetto Hall, con il pinout descritto, dovresti già sapere com'è connettiti alla tua scheda Arduino. In questo caso, si collegherà in questo modo:

  • Sai già che il pin 1 deve essere collegato all'uscita di tensione 5V di Arduino in modo che possa alimentarlo, sia nel caso del digitale che dell'analogico.
  • Il pin centrale o 2, devi collegarlo a GND o massa della tua scheda Arduino.
  • Nel caso del pin 3, varia a seconda che si tratti di uno analogico o digitale:
    • Analogico: collega direttamente il pin 3 del sensore Hall a uno degli ingressi analogici della tua scheda Arduino.
    • Digitale: è necessario collegare i pin 1 e 3 con una resistenza di pull-up, ad esempio 10K, affinché il circuito funzioni correttamente con l'A3144. Altri modelli potrebbero richiedere valori di resistenza diversi ... Una volta preso in considerazione, puoi collegare il pin 3 a un ingresso digitale sulla tua scheda Arduino.

Non importa il numero dell'ingresso della scheda a cui lo avete collegato, ricordate semplicemente il numero e poi create correttamente il codice sorgente per far funzionare il tuo progetto. In questo caso, ci saranno anche differenze tra se hai optato per analogico o digitale:

  • Il semplice codice per il analogico è:
const int pinHall = A0;
 
void setup() {
  pinMode(pinHall, INPUT);
  Serial.begin(9600);
}
 
void loop() {
 
  //Filtro para ruido con 10 medidas
  long measure = 0;
  for(int i = 0; i < 10; i++){
      int value = 
      measure += analogRead(pinHall);
  }
  measure /= 10;
  
  //Calcular el voltaje en mV que da la salida del sensor Hall
  float outputV = measure * 5000.0 / 1023;
  Serial.print("Voltaje de salida = ");
  Serial.print(outputV);
  Serial.print(" mV   ");
  
  //Interpolación a densidad del campo magnético (fórmula)
  float magneticFlux =  outputV * 53.33 - 133.3;
  Serial.print("La densidad del flujo magnético del campo es = ");
  Serial.print(magneticFlux);
  Serial.print(" mT");
  
  delay(2000);
}

  • Il semplice codice per il digitale voluto:
const int HALLPin = 2;
const int LEDPin = 13;
//El pin 13 en el esquema de nuestro ejemplo no pinta nada, pero se podría agregar un LED a dicho pin para que se encienda si detecta campo magnetico
 
void setup() {
  pinMode(LEDPin, OUTPUT);
  pinMode(HALLPin, INPUT);
}
 
void loop() {
  if(digitalRead(HALLPin)==HIGH)
  {
    digitalWrite(LEDPin, HIGH);   
  }
  else
  {
    digitalWrite(LEDPin, LOW);
  }
}

Spero che questa guida ti abbia aiutato ...


Puoi essere il primo a lasciare un commento

Lascia un tuo commento

L'indirizzo email non verrà pubblicato. I campi obbligatori sono contrassegnati con *

*

*

  1. Responsabile dei dati: Miguel Ángel Gatón
  2. Scopo dei dati: controllo SPAM, gestione commenti.
  3. Legittimazione: il tuo consenso
  4. Comunicazione dei dati: I dati non saranno oggetto di comunicazione a terzi se non per obbligo di legge.
  5. Archiviazione dati: database ospitato da Occentus Networks (UE)
  6. Diritti: in qualsiasi momento puoi limitare, recuperare ed eliminare le tue informazioni.