Tutorial ESP32 20/55 - Módulo de Rastreamento de Linha | Kit de Aprendizado IoT ESP32 da SunFounder

Tutorial ESP32 20/55 - Módulo de Rastreamento de Linha | Kit de Aprendizado IoT ESP32 da SunFounder

Neste tutorial, aprenderemos como usar o módulo ESP32 juntamente com o módulo de rastreamento de linha para detectar linhas pretas em uma superfície branca. Essa capacidade é essencial para aplicações como carros robóticos que precisam seguir um caminho designado. Além disso, iremos integrar um buzzer que é ativado quando o módulo de rastreamento de linha detecta a linha preta, aprimorando o mecanismo de feedback do nosso projeto. Para mais esclarecimentos, consulte o vídeo (no vídeo em 0:00).

linha_pista

Hardware Explicado

Os componentes principais deste projeto incluem o módulo ESP32, um módulo de rastreamento de linha e um buzzer. O módulo ESP32 é um microcontrolador poderoso com recursos integrados de Wi-Fi e Bluetooth, permitindo uma ampla gama de aplicações de IoT. O módulo de rastreamento de linha utiliza um emissor infravermelho e uma fotorresistor para detectar diferenças na cor da superfície com base na intensidade da luz infravermelha refletida.

O módulo de rastreamento de linha opera emitindo luz infravermelha que se reflete na superfície abaixo dele. Uma superfície mais escura, como o preto, absorve mais luz, resultando em uma intensidade refletida menor, enquanto uma superfície mais clara, como o branco, reflete mais luz, produzindo uma intensidade maior. Essa diferença é processada por um amplificador operacional para determinar o estado da superfície (preto ou branco) e gerar um sinal correspondente.

Detalhes da Ficha Técnica

Fabricante SunFounder
Número da peça TCRT5000
Tensão de lógica/IO 3,3 V a 5 V
Corrente de saída (por canal) 20 mA
Corrente de pico (por canal) 50 mA
Tempo de resposta < 10 ms
Faixa de detecção 1 cm a 5 cm
Pacote Módulo com pinos de cabeçalho
Notas / variantes Comumente usado em robôs seguidor de linha

  • Assegure um fornecimento de energia adequado (3,3 V ou 5 V).
  • Mantenha o sensor limpo para leituras precisas.
  • Ajuste a sensibilidade usando o potenciômetro integrado.
  • Verifique as conexões para evitar entradas flutuantes.
  • Use resistores de pull-up, se necessário, para leituras estáveis.
  • Minimize a interferência de fontes infravermelhas ambientais.

Instruções de Fiação

ESP32-20_line-tracking-wiring

Para conectar o módulo de rastreamento de linha ao ESP32, comece ligando o pino de terra do módulo a um pino de terra no ESP32. Em seguida, conecte o pino V+ do módulo de rastreamento de linha a uma fonte de alimentação adequada, seja 3,3 V ou 5 V no ESP32. O pino de sinal (rotulado comoS) deve ser conectado ao GPIO 14 no ESP32. Certifique-se de que essas conexões estejam seguras antes de prosseguir.

Se você estiver usando um buzzer, conecte seu terminal negativo ao terra e o terminal positivo ao GPIO 27 no ESP32. Essa configuração permite que o buzzer seja ativado quando o módulo de rastreamento de linha detectar uma linha preta. Certifique-se de verificar todas as conexões para garantir que correspondam aos pinos especificados no código.

ESP32-20_diagrama-de-seguimento-de-linha

Exemplos de Código e Tutorial

Abaixo está um trecho chave do código que configura o módulo de rastreamento de linha. A variávellinePiné definido para representar o pino conectado ao módulo de rastreamento de linha.

const int linePin = 14;  // The number of the line track module pin

Esta linha inicializalinePincomo pino 14, que será usado para ler o status da linha. OlineStatea variável armazenará o resultado do sensor.

No textosetup()função, configuramos o modo do pino paralinePincomo entrada.

void setup() {
  Serial.begin(115200);  
  pinMode(linePin, INPUT);
}

Isso garante que o ESP32 possa ler o estado do módulo de rastreamento de linha. A comunicação serial é iniciada a uma taxa de transmissão de 115200 para monitorar a saída.

Finalmente, no aloop()função, lemos continuamente o estado do módulo de rastreamento de linha e imprimimos a cor detectada.

void loop() {
  lineState = digitalRead(linePin);
  if (lineState == HIGH) {
    Serial.println("Black");
    delay(100);
  } else {
    Serial.println("White");
    delay(100);
  }
}

Este loop verifica se olineStateestá ALTA (indicando preto) ou BAIXA (indicando branco) e imprime o resultado no monitor serial. O código completo está carregado abaixo do artigo para sua referência.

Demonstração / O que Esperar

Uma vez que a fiação esteja completa e o código esteja carregado, você deve observar o ESP32 imprimindo "Preto" quando o módulo de rastreamento de linha estiver sobre uma superfície preta, e "Branco" quando estiver sobre uma superfície branca. Além disso, o buzzer soará quando o módulo detectar a linha preta, fornecendo um alerta audível. Tenha cuidado com as configurações do potenciômetro, pois configurações excessivamente sensíveis podem levar a comportamentos erráticos (no vídeo às 10:00).

Marcas de Tempo do Vídeo

  • 00:00 Início
  • 2:22 Introdução ao módulo de rastreamento de linhas
  • 5:10 Página de documentação
  • 9:20 Explicação da fiação
  • 10:49 Código Arduino explicado
  • 13:36 Selecionando placa ESP32 e porta COM no Arduino IDE
  • 15:18 Demonstração
  • 18:15 Projeto: Rastreamento de linha com buzzer
  • 19:52 Código Arduino para rastreamento de linha e buzina
  • 20:52 Demonstração

Imagens

ESP32-20_line-tracking-schemtaic
ESP32-20_line-tracking-schemtaic
ESP32-20_line-tracking-wiring
ESP32-20_line-tracking-wiring
line_track
line_track
819-ESP32 Tutorial 20/55- Arduino code line tracking
Idioma: C++
Copiado!

Recursos e referências

Arquivos📁

Nenhum arquivo disponível.