Medindo Distância com Sensor Ultrassônico HC-SR04
Sensores · Entrada de dados · Serial Monitor · Ondas sonoras
O que vamos conseguir fazer
Compreender o princípio físico do sensor ultrassônico (eco de onda sonora).
Programar o Arduino para emitir e receber sinais usando os pinos TRIG e ECHO.
Calcular a distância a partir do tempo de retorno do som.
Usar o Serial Monitor pra visualizar dados em tempo real.
Peças e materiais
Arduino Uno + cabo USB
1×
Sensor ultrassônico HC-SR04
1×
Protoboard
1×
Jumpers macho-fêmea (pra conectar sensor à protoboard)
4×
Régua de 30cm
1×
Computador com Arduino IDE
O mapa do nosso robô
cada fio colorido é uma ligação de verdade — o diagrama completo está na página da aula
Introdução
Provoque com a pergunta do morcego. Bata palmas no fundo da sala e peça pros alunos escutarem o eco. Explique que o som viaja a 340 m/s no ar e que, sabendo o tempo de ida-e-volta, dá pra calcular a distância. Mostre fotos de aplicações: sensor de ré em carros, robôs aspiradores, carros autônomos.
Apresente o sensor HC-SR04: dois 'olhos' (TRIG emite, ECHO recebe). Mostre os 4 pinos: VCC (5V), GND, TRIG e ECHO. Explique a função pulseIn() — espera o pino ficar HIGH e mede quanto tempo demora. Faça a conta junto: 'Se demorou 1000µs ida-e-volta, quanto é a distância?' (≈ 17 cm).
Montagem / Hardware
Encaixe o sensor HC-SR04 na protoboard (4 pinos pra baixo).
VCC do sensor → 5V do Arduino (jumper).
GND do sensor → GND do Arduino.
TRIG do sensor → pino 9.
Montagem / Hardware
ECHO do sensor → pino 10.
Conecte Arduino ao computador.
Programação
Copie o código do card 'Código da Aula'.
Envie pro Arduino.
Abra Ferramentas → Monitor Serial (Ctrl+Shift+M). Configure baud rate em 9600.
Os números começam a aparecer — coloque a mão na frente do sensor pra ver mudar.
Teste e ajustes
Compare 5 medidas com a régua:
Aproxime objeto a 5 cm → veja no monitor.
Afaste pra 15 cm → confira.
Distância máxima esperada: ~400 cm (4 m).
Teste e ajustes
Erros: cabos errados (TRIG/ECHO trocados), VCC no GND.
Encerramento
Pergunta final pra debate: 'O que esse sensor PODE e o que NÃO PODE detectar?'. (Não detecta vidro fino, materiais que absorvem som como espuma). Anotem no caderno: sensor = entrada, atuador = saída, programa = mediação.
Como ele decide o que fazer
O código da aula
// Sensor ultrassônico HC-SR04 — medindo distância
// TRIG = pino 9 (saída — emite pulso)
// ECHO = pino 10 (entrada — recebe eco)
const int TRIG = 9;
const int ECHO = 10;
void setup() {
pinMode(TRIG, OUTPUT);
pinMode(ECHO, INPUT);
Serial.begin(9600); // Inicia comunicação serial
}
void loop() {
// 1. Dispara pulso ultrassônico de 10 microssegundos
digitalWrite(TRIG, LOW);
delayMicroseconds(2);
digitalWrite(TRIG, HIGH);
delayMicroseconds(10);
digitalWrite(TRIG, LOW);
// 2. Mede tempo de retorno do eco
long duracao = pulseIn(ECHO, HIGH);
// 3. Calcula distância em cm
// Som viaja 340 m/s = 0,034 cm/µs.
// Tempo é ida + volta, então divide por 2.
float distancia_cm = duracao * 0.034 / 2;
Serial.print("Distancia: ");
Serial.print(distancia_cm);
Serial.println(" cm");
delay(500); // Mede a cada 0,5s
}
role dentro da caixa · o código completo está na página da aula
Abram a ferramenta
professor: deixe este slide no telão enquanto a turma trabalha
🥊
Bora construir!
dúvidas? a página completa da aula tem tudo: montagem, código e materiais.