🤖 RoboFeed
Explorar aulas Entrar Comece grátis
🤖 Robótica

Medindo Distância com Sensor Ultrassônico HC-SR04

Sensores · Entrada de dados · Serial Monitor · Ondas sonoras

👤 Weslley Barros 🏫 Plataforma RoboFeed 7º ano8º ano9º ano 🕐 1h 30min ⚡ Plugada ❤️ 2
🔧 Modo Bancada · passo a passo, pro aluno no tablet

🎯 Objetivos de aprendizagem

  • 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.

📚 Objetos de conhecimento

Sensores como entrada · Velocidade do som no ar · Cálculo de distância pelo tempo · Função pulseIn · Comunicação Serial · Conversão de unidades (µs → cm)

🧭 Habilidades BNCC Computação (13)
🧠 Pensamento Computacional
EF67CO01 Aplicar técnicas de decomposição, abstração e reconhecimento de padrões na resolução de problemas computacionais e cotidianos.
EF67CO02 Elaborar e implementar algoritmos com estruturas de controle (sequência, seleção e repetição), utilizando variáveis e operadores lógicos.
EF67CO03 Representar dados e estados de um sistema usando fluxogramas, tabelas-verdade e diagramas de estado.
EF89CO01 Desenvolver projetos computacionais que integrem decomposição, abstração, generalização e avaliação crítica da solução proposta.
EF89CO02 Implementar algoritmos com funções/sub-rotinas, listas/arrays e leitura de sensores, em linguagens de blocos ou textuais (C++, Python).
💻 Mundo Digital
EF67CO04 Construir protótipos eletrônicos usando placas programáveis (Arduino, ESP32, micro:bit), sensores (ultrassônico, LDR, DHT) e atuadores (LED, servo, buzzer).
EF67CO05 Compreender como dados são representados no computador (binário, ASCII, imagem, áudio) e como circulam por redes (LAN, Wi-Fi, internet).
EF89CO03 Projetar e construir sistemas integrados que combinem hardware (placa, sensores, atuadores) e software (algoritmo) para resolver problemas reais.
EF89CO04 Avaliar arquiteturas de hardware (processador, memória, periféricos) e modelos de comunicação (cliente-servidor, IoT) em soluções tecnológicas.
🌐 Cultura Digital
EF67CO06 Analisar criticamente o uso das tecnologias digitais e sua influência no comportamento social, no consumo de informação e na privacidade.
EF67CO07 Identificar fontes confiáveis de informação em ambientes digitais, reconhecendo desinformação (fake news), deepfakes e manipulação algorítmica.
EF89CO05 Discutir aspectos éticos do uso de inteligência artificial (viés algorítmico, automação, direitos autorais, deepfakes) e propor princípios de uso responsável.
EF89CO06 Compreender legislações de proteção de dados (LGPD) e aplicar boas práticas de segurança digital, autoria e propriedade intelectual em produções escolares.

Habilidades dos anos selecionados (7º ano, 8º ano, 9º ano) — Resolução CNE/CP nº 1/2022. Em turmas de Ensino Médio, mapear para EM13CO.

🧰 Materiais e componentes

Arduino Uno + cabo USB
Arduino Uno + cabo USB
Sensor ultrassônico HC-SR04
Sensor ultrassônico HC-SR04
Protoboard
Protoboard
Jumpers macho-fêmea (pra conectar sensor à protoboard)
Jumpers macho-fêmea (pra conectar sensor à protoboard)
Régua de 30cm
Régua de 30cm
Computador com Arduino IDE
Computador com Arduino IDE
🪜 Desenvolvimento da aula
Introdução / Contextualizaçã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 do Circuito / Hardware

1. Encaixe o sensor HC-SR04 na protoboard (4 pinos pra baixo). 2. VCC do sensor → 5V do Arduino (jumper). 3. GND do sensor → GND do Arduino. 4. TRIG do sensor → pino 9. 5. ECHO do sensor → pino 10. 6. Conecte Arduino ao computador.

Programação / Codificação

1. Copie o código do card 'Código da Aula'. 2. Envie pro Arduino. 3. Abra Ferramentas → Monitor Serial (Ctrl+Shift+M). Configure baud rate em 9600. 4. Os números começam a aparecer — coloque a mão na frente do sensor pra ver mudar.

Teste, Depuração e Ajustes

Compare 5 medidas com a régua: 1. Aproxime objeto a 5 cm → veja no monitor. 2. Afaste pra 15 cm → confira. 3. Distância máxima esperada: ~400 cm (4 m). 4. Erros: cabos errados (TRIG/ECHO trocados), VCC no GND.

Encerramento / Socialização

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.

🔌 Montagem do robô

Placa: Arduino Nano

⬇ baixar SVG
🧰 Montagem do robôPlaca: Arduino Nano · 1 componentes · 2 ligações detectadas do códigoNANO133V3AREFA0A1A2A3A4A5A6A75VRSTGNDVIN12111098765432GNDRST10Arduino NanoD9 (TRIG) · emissão de pulsoD10 (ECHO) · recepção de ecoSensor Ultrassônico(HC-SR04)— cmLEGENDA DOS FIOSOutro / dados
🧰 Montagem do robôArduino Nanoplaca controladoraSensor Ultrassônico…D9 (TRIG)D10 (ECHO)
as peças reagem: LED acende, botão é clicável, serial abaixo
🖥️ Monitor serial

📋 Tabela de ligações (fio a fio)
Sensores
Sensor Ultrassônico (HC-SR04)
fio D9 (TRIG) emissão de pulso
fio D10 (ECHO) recepção de eco

💻 Código

aula.ino
// 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
}

🔀 Fluxograma do algoritmo

flowchart TD A(["Início"]) --> B["Disparar pulso ultrassônico"] B --> C["Medir tempo de retorno do eco"] C --> D["Calcular distância em cm"] D --> E["Enviar dados para o Serial Monitor"] E --> F["Esperar 0,5 segundos"] F --> B

🧱 Algoritmo em blocos

quando @greenFlag for clicado
sempre
  disparar pulso ultrassônico
  medir tempo de retorno do eco
  calcular distância em centímetros
  mostrar distância no monitor serial
  esperar 0,5 segundos
end

🎥 Vídeo de demonstração

🔗 Abrir o vídeo em nova aba

🔗 Recursos e simuladores

Onda em uma Corda

✅ Avaliação

Observe se o aluno entende a CADEIA física: emissão → eco → tempo → distância. Quem só copia código sem entender precisa retomar o conceito de eco com palmas. Avalie também o uso do Serial Monitor — quem consegue interpretar os números.

🤖 Quer essa aula do SEU jeito?

O Co-professor adapta esta aula pro seu ano e contexto — ou a estica numa sequência didática de 2 a 4 encontros — e gera um PDF pronto pra você. A estrutura da aula é preservada. Cadastre-se grátis pra usar.

✨ Adaptar e gerar PDF

💬 Comentários

Entre na sua conta ou crie uma grátis pra comentar.

Seja o primeiro a comentar.

Gostou desta aula?

Monte aulas como esta em minutos, com ajuda da IA — e compartilhe com professores do Brasil todo. É grátis.

Criar minha conta grátis
📲 Compartilhar no WhatsApp

Explorar mais aulas · RoboFeed — robótica e computação na escola, alinhado à BNCC.