Os sensores Hall são sensores que produzem um sinal elétrico em sua saída quando entra em contato com um campo magnético. O valor analógico do sinal elétrico na saída do sensor é uma função da força do campo magnético. Os sensores Hall estão por toda parte hoje em dia, eles estão sendo usados por diferentes motivos e em todos os tipos de dispositivos, de telefones celulares a interruptores, para medição de velocidade, posição e distância em carros e em outros produtos baseados na indústria automotiva. Essa versatilidade do sensor Hall os torna indispensáveis para fabricantes e engenheiros elétricos, por isso, hoje, mostrarei como usar um sensor Hall em um projeto baseado em Raspberry Pi.
Você pode verificar a qualquer momento nossos outros projetos baseados no sensor Hall, incluindo a interface do sensor Hall com o Arduino.
Componentes necessários
Os seguintes componentes / peças são necessários para construir este projeto;
- Framboesa pi 2 ou 3
- Cartão SD (mínimo de 8 GB)
- Sensor de efeito Hall
- Fios de ligação
- Tábuas de pão
- Cabo LAN
- Fonte de energia
Algumas partes opcionais que podem ser usadas incluem:
- Monitor
- Teclado e mouse
- cabo HDMI
- Dongle Wi-Fi
Este tutorial será baseado no sistema operacional Raspbian stretch, portanto, para continuar como de costume, presumirei que você esteja familiarizado com a configuração do Raspberry Pi com o sistema operacional Raspbian stretch e saiba como fazer SSH no raspberry pi usando um software de terminal como o putty. Se você tiver problemas com qualquer um desses, há muitos Tutoriais do Raspberry Pi neste site que podem ajudar.
Para aqueles que irão instalar o sistema operacional Raspbian stretch pela primeira vez, um problema que descobri, a maioria das pessoas descobriu, é entrar no Raspberry Pi via ssh. Deve-se notar que o ssh está originalmente desabilitado no sistema operacional e você precisará de um monitor para habilitá-lo, ou nas opções de configuração do raspberry pi, ou criar um arquivo em branco chamado ssh usando seu computador Windows ou Linux e copiar o arquivo em branco para o diretório raiz do cartão SD. Você precisará inserir o carrinho SD no slot de cartão SDd do seu computador para copiar para ele.
Usar o segundo método é mais adequado para aqueles que executam o pi no modo sem cabeça. Com todas as peças prontas, podemos prosseguir para a construção.
Diagrama de circuito:
Para usar o sensor de efeito Hall com Raspberry Pi, conecte os componentes de acordo com o esquema abaixo.
O sensor Hall usado para este tutorial pode fornecer valores analógicos e digitais na saída. Mas para simplificar o tutorial, decidi usar o valor digital porque usar a saída analógica vai exigir a conexão de um ADC ao Raspberry Pi.
Código Python e explicação de trabalho:
O código Python para este projeto de sensor Hall é muito simples, tudo o que precisamos fazer é ler a saída do sensor Hall e ligar ou desligar o LED de acordo. O LED deve ser ligado se o ímã for detectado e, caso contrário, desligado.
Ligue o Raspberry Pi e SSH nele usando massa (se conectado no modo sem cabeça como eu). Como de costume na maioria dos meus projetos, crio um diretório dentro do diretório inicial onde tudo sobre cada projeto é armazenado, portanto, para este projeto, criaremos um diretório chamado hall . Observe que esta é apenas uma preferência pessoal para manter as coisas organizadas.
Crie o diretório usando;
mkdir hallsensor
Mude o diretório para o novo diretório recém-criado e abra um editor para criar o script python usando;
sensor hall de cd
Seguido por;
nano hallsensorcode.py
Assim que o editor for aberto, digitamos o código do projeto. Farei uma breve análise do código para mostrar os principais conceitos, e o código Python completo será disponibilizado depois disso.
Começamos o código importando a biblioteca RPI.GPIO que nos permite escrever scripts python para interagir com os pinos GPIO do raspberry pi.
importar RPi.GPIO como gpio
Em seguida, definimos a configuração de numeração para o GPIO da Rpi que gostaríamos de usar e desabilitaremos os avisos GPIO para permitir a execução de fluxo livre do código.
gpio.setmode (gpio.BCM) gpio.setwarnings (Falso)
Em seguida, definimos os pinos GPIO aos quais o LED e a saída digital do sensor Hall são conectados de acordo com a numeração BCM selecionada.
hallpin = 2 ledpin = 3
Em seguida, configuramos os pinos GPIO como entrada ou saída. O pino com o qual o LED está conectado definido como saída e aquele ao qual o sensor Hall está conectado definido como entrada.
gpio.setup (hallpin, gpio.IN) gpio.setup (ledpin, gpio.OUT)
Com isso feito, escrevemos a parte principal do código, que é um enquanto loop que constantemente avalia a saída do sensor Hall e liga o LED se um ímã é detectado e desliga o LED quando um ímã não é detectado.
enquanto True: if (gpio.input (hallpin) == False): gpio.output (ledpin, True) print ("magneto detectado") else: gpio.output (ledpin, False) print ("campo magnético não detectado")
O código Python completo com vídeo de demonstração é fornecido no final do projeto.
Copie e salve o código e saia do editor após digitá-lo usando;
CTRL + X seguido por y .
Depois de salvar, examine suas conexões mais uma vez e execute o script python usando;
sudo python hallsensorcode.py
Com o script em execução, sempre que um ímã ou qualquer coisa magnética é aproximado do sensor hall, o LED acende como mostrado na imagem abaixo.
De interruptores de palheta para uma casa inteligente a velocímetros para uma bicicleta, existem vários itens super legais que podem ser construídos com este tutorial na base. Sinta-se à vontade para compartilhar qualquer projeto que você planeja construir na seção de comentários abaixo.
Todos verificam nossos projetos anteriores baseados em sensores hall:
- Velocímetro DIY usando Arduino e aplicativo de processamento para Android
- Velocímetro digital e circuito de odômetro usando microcontrolador PIC
- Realidade virtual usando Arduino e processamento
- Medição de intensidade de campo magnético usando Arduino