Hi, bem-vindos ao tutorial de hoje. Hoje vamos ver como usar um sensor de efeito hall com Arduino.

Um sensor de efeito hall é um sensor que varia sua saída com base na presença ou ausência de um campo magnético. Isto significa que o sinal de saída produzido por um sensor de efeito Hall é uma função da densidade do campo magnético ao seu redor. Quando a densidade do fluxo magnético ao seu redor excede um determinado valor limite pré-definido, o sensor detecta-o e gera uma voltagem de saída por vezes chamada voltagem hall para indicar a presença do campo magnético.

Sensor de efeito Hall

Sensores de efeito Hall estão a tornar-se muito populares devido à sua versatilidade e são utilizados em muitas aplicações diferentes. Uma das aplicações populares dos sensores de efeito hall é em sistemas automotivos onde são usados para detectar posição, medir distância e velocidade. Também são usados em dispositivos modernos como smartphones e computadores e também são usados em diferentes tipos de interruptores onde a presença de um campo magnético é usada para ativar ou desativar um circuito.

Sensores Hall produzem uma saída analógica ou digital dependendo do sensor em particular. Qualquer que seja o tipo, eles normalmente vêm em um pacote de três pinos com um pino para representar o sinal e os outros dois para fornecer energia para o sensor. Isto facilita a ligação a qualquer microcontrolador.

Para o tutorial de hoje, vamos demonstrar como funciona o sensor de efeito hall ligando-o ao lado de um LED a um Arduino. O Arduino será programado de tal forma que quando um íman é trazido para perto do sensor de efeito hall, o LED acende e quando o íman é removido, ele apaga.

Componentes requeridos

Os seguintes componentes são necessários para construir este projecto.

  1. Sensor de efeito alto
  2. Cheap Arduino Uno
  3. Breadboard mini
  4. LED
  5. Fios
  6. Magnets

Como de costume, os componentes exatos usados para este tutorial podem ser comprados através dos links anexados a cada um dos componentes listados acima.

Esquemática

O esquema para este projeto é simples, pois basta conectar os três pinos do sensor do hall e um LED ao Arduino. Conecte os componentes como mostrado no esquema abaixo.

Esquemática

A conexão é descrita mais adiante para facilitar o seu seguimento.

Sensor Alto – Arduino

VCC - 5VGND - GNDSIG - D2

O LED pode ser ligado directamente ao Arduino com a perna positiva no pino Arduino 13 e a outra perna ligada ao pino de terra sem resistência porque o Arduino tem uma resistência interna ligada ao pino 13.

Com os esquemas feitos, podemos proceder ao código para este projecto.

Código

O código para este projecto é realmente simples, tudo o que queremos fazer como mencionado anteriormente é verificar se um campo magnético está a ser detectado e se sim, ligar o LED se não, desligamos o LED.

Para fazer uma breve explicação do código para este projecto, a primeira coisa que fazemos é declarar os pinos do Arduino ao qual o nosso sensor e LED está ligado, após o que criamos um “estado” variável que irá armazenar o valor do sensor do hall.

 ////////////////////////////////////////////// // HALL EFFECT SENSOR DEMO // // Author: Nick Koumaris //// http://www.educ8s.tv ///////////////////////////////////////////////int hallSensorPin = 2; int ledPin = 13; int state = 0;

Próximo, passamos à função de configuração void, onde declaramos o modo de pinos para os pinos do Arduino ao qual o LED e o sensor Hall estão ligados.

void setup() { pinMode(ledPin, OUTPUT); pinMode(hallSensorPin, INPUT); }

Próximo é a função void loop, a tarefa aqui é a mesma como se quiséssemos usar um botão de pressão para controlar um LED com um Arduino no meio. Nós lemos a saída do sensor do corredor e armazenamos em um estado com nome variável. Quando o valor é BAIXO, giramos o LED, ALTO e quando o valor é alto, giramos o LED Baixo. A configuração do seu sensor de corredor pode ser diferente, pois o sensor pode ficar alto quando um campo magnético é detectado. Isto deve ser confirmado na folha de dados do sensor.

void loop(){ state = digitalRead(hallSensorPin); if (state == LOW) { digitalWrite(ledPin, HIGH); } else { digitalWrite(ledPin, LOW); }}

O código completo para este projecto é mostrado abaixo e também disponível para download na secção de download no final deste tutorial.

 ////////////////////////////////////////////// // HALL EFFECT SENSOR DEMO // // //// http://www.educ8s.tv ///////////////////////////////////////////////int hallSensorPin = 2; int ledPin = 13; int state = 0; void setup() { pinMode(ledPin, OUTPUT); pinMode(hallSensorPin, INPUT); }void loop(){ state = digitalRead(hallSensorPin); if (state == LOW) { digitalWrite(ledPin, HIGH); } else { digitalWrite(ledPin, LOW); }}

Demo

Copie o código e carregue para a sua placa Arduino. Você deve ver a chave LED quando um ímã é trazido para perto dele, como mostrado na imagem abaixo.

Demo

Articles

Deixe uma resposta

O seu endereço de email não será publicado.