Código Arduino e Vídeo: Sensor de Obstáculos Infravermelho de 4 Canais para Carro Inteligente Arduino

Código Arduino e Vídeo: Sensor de Obstáculos Infravermelho de 4 Canais para Carro Inteligente Arduino

Neste tutorial, exploraremos como usar um módulo sensor infravermelho de 4 canais para desvio de obstáculos e criar um carro inteligente. Este módulo é composto por quatro sensores infravermelhos que podem detectar obstáculos em várias direções, permitindo que seu veículo robótico reaja adequadamente. Cada sensor fornece feedback sobre a proximidade, permitindo que você programe respostas com base nos obstáculos detectados.

À medida que avançamos neste projeto, abordaremos os componentes de hardware, as instruções de fiação e o código necessário para operar os sensores de forma eficaz. Você pode encontrar esclarecimentos adicionais no vídeo (em 00:00).

Hardware Explicado

O componente principal deste projeto é o módulo de desvio de obstáculos por infravermelho de 4 canais, que utiliza o comparador diferencial quádruplo LM339. Este CI é capaz de operar entre 2 e 36 volts, mas no nosso caso usaremos 5 volts para compatibilidade com o Arduino. Cada sensor do módulo possui uma entrada inversora e uma entrada não inversora, permitindo comparar a luz infravermelha refletida pelos obstáculos e emitir um sinal correspondente.

O módulo é projetado com resistores de pull-up que mantêm a saída em nível alto quando nenhum obstáculo é detectado. Quando um objeto é detectado, a saída vai para nível baixo, fornecendo um sinal claro ao Arduino. Além disso, o módulo possui LEDs que indicam quando um obstáculo é detectado, melhorando o feedback ao usuário durante a operação.

Detalhes da ficha técnica

FabricanteDesconhecido
Número da peçaEvitamento de Obstáculos por Infravermelho de 4 Canais
Tensão lógica/E/S5 V
Tensão de alimentação2-36 V
Corrente de saída (por canal)10 mA (típ.)
Corrente de pico (por canal)20 mA (máx.)
Orientação sobre a frequência do PWMNão aplicável
Limiares de entrada lógicaBAIXO < 0.8 V, ALTO > 2.0 V
Queda de tensão / RDF(ligado) / saturação0.2 V (típ.)
Limites térmicosTemperatura de operação: -40 a 125 °C
PacoteMódulo
Notas / variantesInclui 4 sensores com sensibilidade ajustável.

  • Use uma massa comum para todos os componentes para evitar entradas flutuantes.
  • Ajuste o potenciômetro de sensibilidade para obter o alcance de detecção ideal.
  • Garanta a tensão adequada da fonte de alimentação para evitar danificar os sensores.
  • Verifique as conexões de fiação para evitar leituras incorretas dos sensores.
  • Use capacitores de desacoplamento para estabilizar a alimentação dos sensores.
  • Teste cada sensor individualmente antes de integrá-lo ao sistema principal.

Instruções de fiação

Para ligar o módulo de evitamento de obstáculos infravermelho de 4 canais ao Arduino, comece conectando a alimentação e o terra. Conecte o pino VCC do módulo sensor à saída 5V do Arduino. Em seguida, conecte o pino GND do módulo ao terra (GND) do Arduino. Isso fornecerá a energia necessária para que os sensores funcionem.

Em seguida, conecte os pinos de saída dos sensores aos pinos de entrada digitais do Arduino. Por exemplo, conecte a saída do sensor dianteiro-esquerdo (identificado comoN1) para o pino digital 2, o sensor frontal direito (N2) para o pino 3, o sensor traseiro esquerdo (N3) para o pino 4, e o sensor traseiro direito (N4) ao pino 5. Além disso, você pode conectar a saída do freio ao pino 8, o indicador de obstáculo dianteiro ao pino 9 e o indicador de obstáculo traseiro ao pino 10. Certifique-se de que todas as conexões estejam firmes para um funcionamento confiável.

Exemplos de Código e Guia Passo a Passo

O código Arduino começa definindo constantes para cada pino de sensor, para facilitar a referência ao longo do programa. Por exemplo,FRONT_LEFTé definido como pino 2, deixando claro qual sensor corresponde a qual pino.

#define FRONT_LEFT 2 // pin 2 for front-left sensor
#define FRONT_RIGHT 3 // pin 3 for front-right sensor
#define REAR_LEFT 4 // pin 4 for rear-left sensor
#define REAR_RIGHT 5 // pin 5 for rear-right sensor

Nosetup()função, cada pino do sensor é configurado como uma entrada usandopinMode(). Esta configuração permite ao Arduino ler os estados dos sensores durante a operação.

void setup() {
  Serial.begin(9600);
  pinMode(FRONT_LEFT, INPUT);
  pinMode(FRONT_RIGHT, INPUT);
  pinMode(REAR_LEFT, INPUT);
  pinMode(REAR_RIGHT, INPUT);
}

No loop principal, o estado de cada sensor é lido usandodigitalRead(). Se um obstáculo for detectado (indicado por um sinal LOW), o LED correspondente é ativado e uma mensagem é impressa no monitor serial.

void loop() {
  int FR = digitalRead(FRONT_RIGHT);
  int FL = digitalRead(FRONT_LEFT);
  
  if( FR == LOW || FL == LOW) {
    digitalWrite(FRONT_OB,HIGH);
    Serial.println("Front obstacle");
  } else {
    digitalWrite(FRONT_OB,LOW);
  }
}

Esta estrutura de código permite fácil expansão e modificação, possibilitando que você adapte as respostas conforme as necessidades específicas da sua aplicação. Para o código completo, consulte a seção de carregamento abaixo.

Demonstração / O que esperar

Depois que tudo estiver conectado e o código carregado, você deve esperar que os LEDs do módulo acendam sempre que um obstáculo for detectado por qualquer um dos sensores. O monitor serial também exibirá mensagens indicando a presença de obstáculos na frente ou na traseira. Se os sensores estiverem posicionados corretamente, o carro inteligente reagirá parando ou mudando de direção conforme programado (no vídeo em 02:30).

Armadilhas comuns incluem fiação incorreta, que pode levar a entradas flutuantes ou leituras incorretas. Certifique-se de que os sensores estejam devidamente calibrados e que o potenciômetro esteja ajustado para a sensibilidade desejada. Testar cada sensor independentemente pode ajudar a identificar problemas antes da integração completa.

Marcas de tempo do vídeo

  • 00:00- Introdução ao projeto
  • 01:30- Explicação do hardware
  • 02:30- Revisão de código
  • 03:45- Instruções de fiação
  • 04:50- Demonstração ao vivo

Imagens

4 channel infrared sensor module-6
4 channel infrared sensor module-6
4 channel infrared sensor module-1
4 channel infrared sensor module-1
4 channel infrared sensor module-3
4 channel infrared sensor module-3
4 channel infrared sensor module-
4 channel infrared sensor module-4
4 channel infrared sensor module-
4 channel infrared sensor module-5
60-This is the Arduino code for a 4-channel infrared obstacle sensor.
Idioma: C++
Copiado!

Coisas que você pode precisar

Recursos e referências

Ainda não há recursos.

Arquivos📁

Nenhum arquivo disponível.