ESP32 - Sensor Infravermelho de Evitar Obstáculos
Este tutorial ensina você a usar o ESP32 com o sensor infravermelho de evitar obstáculos para detectar a presença de um obstáculo.
Hardware Necessário
Or you can buy the following kits:
| 1 | × | DIYables ESP32 Starter Kit (ESP32 included) | |
| 1 | × | DIYables ESP32 S3 Starter Kit (ESP32 S3 included) | |
| 1 | × | DIYables Sensor Kit (18 sensors/displays) |
Sobre o Sensor IR de Evitar Obstáculos
O sensor de obstáculos IR (infravermelho) é usado para saber se existe algum obstáculo na frente do módulo do sensor, usando um sinal IR. O alcance de detecção vai de 2 cm a 30 cm e pode ser ajustado por um potenciômetro embutido.
Pinagem
Um sensor IR de evitar obstáculos tem três pinos:
- Pino GND: conecte este pino ao GND (0V)
- Pino VCC: conecte este pino ao VCC (5V ou 3.3v)
- Pino OUT: é um pino de saída: LOW se houver um obstáculo, HIGH se não houver obstáculo. Este pino precisa ser conectado a um pino de entrada do ESP32.

Como Funciona
Um módulo sensor infravermelho de obstáculos é formado por um transmissor IR e um receptor IR. O transmissor IR emite o sinal IR, enquanto o receptor IR procura o sinal IR refletido para saber se o objeto está presente ou não. A presença do obstáculo aparece no pino OUT:
- Se o obstáculo estiver presente, o pino OUT do sensor fica LOW
- Se o obstáculo NÃO estiver presente, o pino OUT do sensor fica HIGH
※ Nota:
Durante o transporte, o sensor pode ficar deformado, o que pode causar mau funcionamento. Se o sensor não estiver funcionando bem, ajuste o transmissor e o receptor IR para que fiquem paralelos.
Diagrama de Ligação
- Como conectar o ESP32 e o sensor de evitar obstáculos usando uma protoboard

This image is created using Fritzing. Click to enlarge image
Se você não sabe como alimentar o ESP32 e outros componentes, veja as instruções no tutorial a seguir: Como alimentar o ESP32.
- Como conectar o ESP32 e o sensor de evitar obstáculos usando uma placa breakout com bornes de parafuso

Como Programar para o Sensor IR de Evitar Obstáculos
- Inicialize o pino do ESP32 no modo de entrada digital usando a função pinMode(). Por exemplo, o pino GPIO18
- Leia o estado do pino do ESP32 usando a função digitalRead().
Código ESP32
Existem dois casos de uso para criar uma aplicação de evitar obstáculos:
- Executar ações enquanto o obstáculo está presente ou não está presente
- Executar ações quando o obstáculo é detectado ou removido
Código ESP32 para verificar se o obstáculo está presente
Passos Rápidos
- Se esta é a primeira vez que você usa o ESP32, veja como configurar o ambiente para ESP32 no Arduino IDE.
- Copie o código acima e cole no Arduino IDE.
- Compile e faça upload do código para a placa ESP32 clicando no botão Upload do Arduino IDE
- Coloque um obstáculo na frente do sensor por um tempo e depois retire-o.
- Veja o resultado no Serial Monitor. Ele fica parecido com o abaixo:
Código ESP32 para detectar o obstáculo
Passos Rápidos
- Copie o código acima e cole no Arduino IDE.
- Compile e faça upload do código para a placa ESP32 clicando no botão Upload do Arduino IDE
- Coloque um obstáculo na frente do sensor por um tempo e depois retire-o.
- Veja o resultado no Serial Monitor. Ele fica parecido com o abaixo: