🤖 RoboFeed
Explorar aulas Entrar Comece grátis
🧠 Pensamento Computacional

Construindo um Semáforo de Trânsito com LEDs e Arduino

O Semáforo Inteligente — Programando Cores com Arduino

👤 Arthur de Oliveira Silva 🏫 E.M. Paulo Renato Souza 4º ano5º ano6º ano7º ano8º ano 🕐 50 minutos ⚡ Plugada ❤️ 2
🔧 Modo Bancada · passo a passo, pro aluno no tablet

🎯 Objetivos de aprendizagem

  • Compreender como um semáforo controla o trânsito por meio de sequências programadas.
  • Identificar os componentes básicos de um circuito eletrônico (LEDs, resistores, jumpers, protoboard).
  • Programar um Arduino para acender LEDs vermelho, amarelo e verde respeitando tempos definidos.
  • Simular o circuito no Tinkercad antes da montagem física.
  • Reconhecer a importância dos semáforos para a segurança no trânsito e a cidadania.
🧭 Habilidades BNCC Computação (25)
🧠 Pensamento Computacional
EF15CO01 Descrever rotinas do cotidiano por meio de representações como desenhos, fluxos e sequências de passos (algoritmos).
EF15CO02 Construir e simular algoritmos simples (com ou sem o uso de computador) para resolver problemas e tarefas do dia a dia.
EF35CO01 Decompor um problema em partes menores e identificar padrões para propor soluções algorítmicas passo a passo.
EF35CO02 Empregar estruturas de repetição e decisão (laços e condicionais) em algoritmos para resolver problemas escolares.
EF35CO03 Representar algoritmos em fluxogramas e pseudocódigo, justificando escolhas de etapas e condições.
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
EF15CO03 Reconhecer dispositivos digitais (computador, tablet, celular, sensores, robôs) presentes no entorno e suas funções básicas.
EF15CO04 Identificar e nomear componentes básicos de um circuito eletrônico (fonte, condutor, LED, resistor) e seu comportamento.
EF35CO04 Construir circuitos elétricos simples em protoboard, conectando componentes a uma placa programável (Arduino, micro:bit) para acender LEDs e acionar atuadores.
EF35CO05 Programar dispositivos digitais em linguagem de blocos (Scratch, mBlock) para resolver tarefas envolvendo movimento, som e luz.
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
EF15CO05 Reconhecer-se como usuário das tecnologias digitais, identificando comportamentos seguros e respeitosos em ambientes digitais.
EF35CO06 Discutir o impacto das tecnologias digitais (jogos, redes sociais, IA) no cotidiano, identificando usos positivos e riscos.
EF35CO07 Aplicar princípios de proteção da identidade digital (senhas, dados pessoais, privacidade) em situações cotidianas.
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 (4º ano, 5º ano, 6º ano, 7º ano, 8º ano) — Resolução CNE/CP nº 1/2022. Em turmas de Ensino Médio, mapear para EM13CO.

🧰 Materiais e componentes

Placa Arduino (Uno / Nano / Mega)
Placa Arduino (Uno / Nano / Mega)
Cabo USB
Cabo USB
Protoboard
Protoboard
LEDs (cores variadas)
LEDs (cores variadas)
Resistores
Resistores
Jumpers (M/M e M/F)
Jumpers (M/M e M/F)
Computador / Laptop
Computador / Laptop

💻 Softwares

Arduino IDE
Arduino IDE
Tinkercad (Circuits)
Tinkercad (Circuits)
🪜 Desenvolvimento da aula
Introdução / Contextualização

Inicie a aula projetando uma foto de um cruzamento de trânsito com semáforo. Pergunte: "Quem controla o semáforo? Como ele sabe a hora certa de mudar de cor?" Conduza os alunos à conclusão de que o semáforo segue uma SEQUÊNCIA programada (algoritmo) — exatamente como vamos programar nosso Arduino. Mostre o circuito montado e explique a função de cada componente (LED, resistor, protoboard, Arduino).

Montagem do Circuito / Hardware

Em duplas, na protoboard: 1. Conecte o LED VERMELHO ao pino digital 11 com resistor de 220Ω. 2. Conecte o LED AMARELO ao pino digital 10 com resistor de 220Ω. 3. Conecte o LED VERDE ao pino digital 9 com resistor de 220Ω. 4. Ligue todos os GND ao trilho negativo da protoboard, que vai ao GND do Arduino. 5. Conecte o Arduino ao computador via cabo USB. Antes de montar fisicamente, simule o circuito no Tinkercad para validar as ligações.

Programação / Codificação

Abra a Arduino IDE. Explique cada parte do código: • const int — guarda o número do pino (memória que não muda). • setup() — roda 1 vez ao ligar; serve para configurar pinos como SAÍDA. • loop() — roda PARA SEMPRE, repetindo a sequência do semáforo. • digitalWrite(pino, HIGH) — manda 5V → o LED acende. • delay(ms) — pausa em milissegundos (6000 = 6 segundos). Mostre o código completo no datashow (bloco "Código da Aula" abaixo).

Teste, Depuração e Ajustes

Faça upload (botão →) para o Arduino. Observe a sequência: VERMELHO (6s) → VERDE (6s) → AMARELO (2s) → repete. Desafie cada dupla a alterar APENAS os valores de delay() para simular: • Semáforo de rodovia (verde mais longo, vermelho curto). • Semáforo de escola (amarelo piscando lentamente). Se não acender, peça pra checar: polaridade do LED (perna longa = +), resistor presente, fio no GND certo.

Encerramento / Socialização

Cada dupla apresenta seu semáforo modificado em 1 minuto. Pergunte: • "Por que o amarelo dura menos que o verde e o vermelho?" • "O que aconteceria se trocássemos a ordem das cores?" • "Onde mais existem 'algoritmos' no nosso dia a dia?" Encerre lembrando que programar é dar instruções claras e em ordem — exatamente o que fizemos hoje.

🔌 Montagem do robô

Placa: Arduino Nano

⬇ baixar SVG
🧰 Montagem do robôPlaca: Arduino Nano · 3 componentes · 3 ligações detectadas do códigoNANO133V3AREFA0A1A2A3A4A5A6A75VRSTGNDVIN12111098765432GNDRST10Arduino NanoD9 · sinalização de pr…LED VerdeD11 · sinalização de pa…LED VermelhoD10 · sinalização de at…LED AmareloLEGENDA DOS FIOSDigital
🧰 Montagem do robôArduino Nanoplaca controladoraLED VermelhoD11LED AmareloD10LED VerdeD9
as peças reagem: LED acende, botão é clicável, serial abaixo
🖥️ Monitor serial

📋 Tabela de ligações (fio a fio)
Saídas
LED Vermelho
fio D11 sinalização de parada
LED Amarelo
fio D10 sinalização de atenção
LED Verde
fio D9 sinalização de prosseguimento

💻 Código

aula.ino
// === SEMÁFORO INTELIGENTE — Arduino ===
// Prof. Arthur de Oliveira Silva
// E.M. Paulo Renato Souza — 4º/5º ano

const int LED_VERMELHO = 11;
const int LED_AMARELO  = 10;
const int LED_VERDE    = 9;

void setup() {
  pinMode(LED_VERMELHO, OUTPUT);
  pinMode(LED_AMARELO,  OUTPUT);
  pinMode(LED_VERDE,    OUTPUT);
}

void loop() {
  // 🛑 VERMELHO — pare!
  digitalWrite(LED_VERMELHO, HIGH);
  delay(2000);
  digitalWrite(LED_VERMELHO, LOW);

  // ✅ VERDE — pode seguir
  digitalWrite(LED_VERDE, HIGH);
  delay(2000);
  digitalWrite(LED_VERDE, LOW);

  // ⚠️ AMARELO — atenção
  digitalWrite(LED_AMARELO, HIGH);
  delay(2000);
  digitalWrite(LED_AMARELO, LOW);
}

🔀 Fluxograma do algoritmo

flowchart TD A(["Início"]) --> B["Acender LED vermelho"] B --> C["Esperar 2 segundos"] C --> D["Apagar LED vermelho"] D --> E["Acender LED verde"] E --> F["Esperar 2 segundos"] F --> G["Apagar LED verde"] G --> H["Acender LED amarelo"] H --> I["Esperar 2 segundos"] I --> J["Apagar LED amarelo"] J --> A

🧱 Algoritmo em blocos

quando @greenFlag for clicado
sempre
  acender LED vermelho
  esperar 2 seg
  apagar LED vermelho
  acender LED verde
  esperar 2 seg
  apagar LED verde
  acender LED amarelo
  esperar 2 seg
  apagar LED amarelo
end

🖨️ Modelo 3D para impressão

Toque para ver em 3D · gire com o dedo.

aula_12_20260516033504_b0ec50c6.stl
📥 Baixar STL 👁️ Tela cheia

🎥 Vídeo de demonstração

🔗 Abrir o vídeo em nova aba

✅ Avaliação

Instrumentos

Observação direta / Registro do professorRoda de conversa / Discussão oralApresentação / Socialização do projetoRubrica de avaliação

Critérios / Competências observadas

  • Raciocínio lógico / Pensamento computacional
  • Trabalho em equipe e colaboração
  • Criatividade e resolução de problemas
  • Participação e engajamento
  • Domínio técnico (montagem / programação)

A avaliação será PROCESSUAL e LÚDICA — não há prova escrita. Cada dupla recebe nota A (atingiu) / B (parcial) / C (precisa retomar) baseada em

1. Conseguiu montar o circuito sem inverter polaridade?

2. Identificou no código onde alterar os tempos?

3. Soube explicar oralmente o que o programa faz?

Alunos em "C" terão reforço em pequenos grupos na próxima aula.

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