- Descrição: O Módulo Transceptor Wireless NRF24L01 2.4GHz é um dispositivo produzido…
Como usar com Arduino – Sensor Indutivo NPN de Proximidade SN04-N
– Descrição:
O sensor indutivo tem características que o fazem ser bastante viável e vantajoso para ser aplicado em indústrias ou em um projeto pessoal. Por não ter partes móveis, o sensor indutivo tem sua vida útil estendida se comparado aos sensores que possuem contatos mecânicos.
O Sensor Indutivo NPN de Proximidade SN04-N é um componente eletrônico capaz de detectar a aproximação / presença de objetos metálicos (ferro, aço, alumínio e outros). Este sensor possui excelente confiabilidade em relação a outros sensores disponíveis no mercado. Além disso, este modelo de sensor é comumente aplicado na construção de impressoras 3D.
– Especificações e características:
– Modelo: SN04-N
– Tensão de operação: 10 a 30VDC
– Corrente de operação: 5mA
– Corrente de saída: 200mA
– Conexão: 3 fios
– Polaridade: NPN
– Estado da saída: NA (normalmente aberto)
– Distância de detecção: 4mm (±10%)
– Aplicações:
Em indústrias ou em projetos com Arduino ou outras plataformas microcontroladas em que seja necessário fazer a detecção de materiais metálicos.
– Proposta da prática:
Utilizar o Sensor Indutivo NPN de Proximidade SN04-N em conjunto com o Arduino e quando houver detecção de metal o LED irá acender.
– Lista dos itens necessários:
01 – Arduino com Cabo USB
01 – Sensor Indutivo NPN de Proximidade SN04-N
01 – Fonte DC 12V 1A Bivolt Chaveada
01 – LED Difuso 5mm Vermelho
01 – Resistor de 150Ω
01 – Resistor de 6,8KΩ (R1 do divisor de tensão)
01 – Resistor de 4,7KΩ (R2 do divisor de tensão)
01 – Diodo Retificador 1N4148 (caso não queira utilizar divisor de tensão)
01 – Protoboard
05 – Cabos Jumper macho-macho
– Esquema de ligação da prática (com divisor de tensão):
1) Este sensor exige tensão mínima de 10VDC para funcionamento, portanto, os 5VDC fornecidos pelo Arduino não irá atender.
2) Para alimentação do sensor, utilize uma fonte externa de pelo menos 10VDC. Para esta postagem, utilizei uma fonte de 12VDC.
3) Veja que no esquema de ligação há um divisor de tensão (R1 = 6,8KΩ e R2 = 4,7KΩ) para o pino de sinal do sensor (OUT). A tensão produzida na saída do sensor é igual a tensão de alimentação, logo, é necessário o uso do divisor de tensão para reduzir os 12V do pino de sinal para um valor próximo dos 5V suportados pelo Arduino. Caso você pretenda alimentar o sensor com uma fonte que não seja de 12V, você deverá utilizar ESTA calculadora online e calcular os valores de R1 e R2 para o seu divisor de tensão.
4) Caso você não possua os resistores de 6,8K e 4,7K, você pode utilizar a associação de resistores em série ou em paralelo para obter um valor igual ou próximo dos que vai precisar.
5) Não se esqueça de comutar o GND da fonte externa com o GND do Arduino.
– Esquema de ligação da prática (com diodo 1N4148):
OBS: fique extremamente atento na ligação do diodo, pois se ligar ele de forma errada você irá danificar o seu Arduino devido aos 12V que vai estar presente no pino digital 8. O catodo do diodo (barra preta ou cinza) deve ser conectado ao pino de sinal (OUT) do sensor e o anodo do diodo é conectado diretamente ao pino digital 8 do Arduino. Além disso, é necessário ativar o PULLUP interno do Arduino através de código. Com o diodo e PULLUP interno ativado, o Arduino estará protegido dos 12V do pino de sinal, pois quando o sensor não detectar nenhum objeto metálico, o pino digital 8 irá ler um valor próximo de 5V, e quando o sensor fizer alguma detecção de objeto metálico, a tensão no pino digital 8 será de 0V. Lembre-se de comutar o GND da fonte externa com o GND do Arduino.
– Tutorial de instalação e configuração do ambiente de programação do Arduino:
Arduino – Instalação e Configuração da IDE no Windows
– Código (para o esquema com divisor de tensão):
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 |
const int pinoSinal = 8; //PINO DIGITAL UTILIZADO PELO SENSOR const int pinoLed = 12; //PINO DIGITAL UTILIZADO PELO LED void setup(){ pinMode(pinoSinal, INPUT); //DEFINE O PINO COMO ENTRADA pinMode(pinoLed, OUTPUT); //DEFINE O PINO COMO SAÍDA digitalWrite(pinoLed, LOW); //LED INICIA DESLIGADO } void loop(){ if(digitalRead(pinoSinal) == LOW){ //SE A LEITURA DO PINO FOR IGUAL A LOW, FAZ digitalWrite(pinoLed, HIGH); //ACENDE O LED }else{ //SENÃO, FAZ digitalWrite(pinoLed, LOW); //APAGA O LED } } |
– Código (para o esquema com diodo 1N4148):
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 |
const int pinoSinal = 8; //PINO DIGITAL UTILIZADO PELO SENSOR const int pinoLed = 12; //PINO DIGITAL UTILIZADO PELO LED void setup(){ pinMode(pinoSinal, INPUT_PULLUP); //DEFINE O PINO COMO ENTRADA / "_PULLUP" É PARA ATIVAR O RESISTOR INTERNO //DO ARDUINO PARA GARANTIR QUE NÃO EXISTA FLUTUAÇÃO ENTRE 0 (LOW) E 1 (HIGH) pinMode(pinoLed, OUTPUT); //DEFINE O PINO COMO SAÍDA digitalWrite(pinoLed, LOW); //LED INICIA DESLIGADO } void loop(){ if(digitalRead(pinoSinal) == LOW){ //SE A LEITURA DO PINO FOR IGUAL A LOW, FAZ digitalWrite(pinoLed, HIGH); //ACENDE O LED }else{ //SENÃO, FAZ digitalWrite(pinoLed, LOW); //APAGA O LED } } |
– Resultado final:
Gostou desta prática? Então deixa seu comentário, dúvida ou sugestão aí embaixo!
Loja online: https://www.masterwalkershop.com.br
Fan page no Facebook: https://www.facebook.com/masterwalkershop
Página no Instagram: https://www.instagram.com/masterwalkershop/
Nos ajude a espalhar conhecimento clicando no botão de compartilhar (f Like) que está mais abaixo.
Obrigado e até a próxima!
Seu feedback é muito importante! Que tal dar uma nota para esta postagem?! Faça sua avaliação aqui embaixo.
Postagem anterior: Como usar com Arduino – Shield Módulo Relé 5V de 4 Canais
Próxima postagem: Conhecendo a Placa WiFi LoRa ESP32 (433MHz / 868MHz / 915MHz)