Projeto Arduino: Monte um Semáforo com Botão de Pedestres

Criar um semáforo com ArduinoO que é Arduino: Conceito e AplicaçõesO que é Arduino: Conceito e AplicaçõesDescubra como o Arduino transforma ideias em projetos inovadores com exemplos práticos de códigos, sensores e LEDs para iniciantes e makers. é um projeto ideal para dominar lógica de programaçãoDesafios de programação para praticar lógica com ArduinoDesafios de programação para praticar lógica com ArduinoExplore desafios de lógica com Arduino e pratique a programação através de exercícios reais que estimulam criatividade e habilidades em eletrônica., controle de LEDsPrimeiras comunicações com o hardwarePrimeiras comunicações com o hardwareAprenda a configurar e testar conexões no Arduino com dicas práticas para depuração via Serial e controle de dispositivos simples. e interação com sensoresO que é Arduino: Conceito e AplicaçõesO que é Arduino: Conceito e AplicaçõesDescubra como o Arduino transforma ideias em projetos inovadores com exemplos práticos de códigos, sensores e LEDs para iniciantes e makers.. Este guia completo ensinará a montar um semáforo que:

Usando componentes acessíveis e código comentado, você aprenderá desde a montagem física até a programaçãoKit de experimentos científicos para estudantes usando ArduinoKit de experimentos científicos para estudantes usando ArduinoDescubra 10 projetos interdisciplinares com Arduino, kits acessíveis e aplicações em ciências, desenvolvendo habilidades e promovendo a educação inovadora. de recursos avançados.

Conteúdo do Artigo🔗

1. Materiais Necessários

2. Montagem do CircuitoComo controlar um motor DC usando um transistor e ArduinoComo controlar um motor DC usando um transistor e ArduinoAprenda a controlar motores DC com Arduino usando TIP120, diodo e PWM. Descubra montagem, programação e soluções práticas para projetos maker.

3. Programação BásicaCriando uma rede LoRa para comunicação de longa distânciaCriando uma rede LoRa para comunicação de longa distânciaAprenda a criar redes LoRa com Arduino, explorando alcance, baixa potência e aplicações práticas através de exemplos e dicas para projetos reais.

4. Adicionando BotãoPrimeiras comunicações com o hardwarePrimeiras comunicações com o hardwareAprenda a configurar e testar conexões no Arduino com dicas práticas para depuração via Serial e controle de dispositivos simples. para Pedestres

5. Teste e Solução de Problemas

6. Ideias para Aprimoramento

Materiais Necessários🔗

ComponenteQuantidadeObservações
Arduino Uno/Nano/Mega1Qualquer modelo compatível
LEDs (Vermelho, Amarelo, Verde)3 cadaCom resistores de 220Ω
Botão tactile1Para modo pedestre (opcional)
Protoboard1Tamanho médio (400 pontos)
Jumpers10+Macho-macho
Sensor LDR ou PIR1Opcional para funcionalidades extras

Dica: Use resistoresO que são Resistores, Capacitores e Diodos?O que são Resistores, Capacitores e Diodos?Explore os fundamentos dos resistores, capacitores e diodos. Aprenda como selecionar, dimensionar e proteger seus circuitos para projetos com Arduino. de 220Ω para proteger os LEDs. Improvise com clipes de papel se não tiver botões!

Montagem do Circuito🔗

Passo a Passo:

1. Conecte os LEDsPrimeiras comunicações com o hardwarePrimeiras comunicações com o hardwareAprenda a configurar e testar conexões no Arduino com dicas práticas para depuração via Serial e controle de dispositivos simples.:

2. Adicione o botãoPrimeiras comunicações com o hardwarePrimeiras comunicações com o hardwareAprenda a configurar e testar conexões no Arduino com dicas práticas para depuração via Serial e controle de dispositivos simples. de pedestre (opcional):

Tabela de PinosPrimeiras comunicações com o hardwarePrimeiras comunicações com o hardwareAprenda a configurar e testar conexões no Arduino com dicas práticas para depuração via Serial e controle de dispositivos simples.:

ComponentePino ArduinoTipo
LED Verm12Digital OUT
LED Amar11Digital OUT
LED Verde10Digital OUT
Botão2Digital IN

Programação Básica🔗

// Definindo os pinos dos LEDs
const int vermelho = 12;
const int amarelo = 11;
const int verde = 10;
void setup() {
  pinMode(vermelho, OUTPUT);
  pinMode(amarelo, OUTPUT);
  pinMode(verde, OUTPUT);
}
void loop() {
  digitalWrite(verde, HIGH);
  delay(5000);                // Verde por 5s
  digitalWrite(verde, LOW);
  digitalWrite(amarelo, HIGH);
  delay(2000);                // Amarelo por 2s
  digitalWrite(amarelo, LOW);
  digitalWrite(vermelho, HIGH);
  delay(5000);                // Vermelho por 5s
  digitalWrite(vermelho, LOW);
}

Funcionamento:

Adicionando Botão para Pedestres🔗

const int botaoPedestre = 2;
bool pedestreAtivo = false;
void setup() {
  // ... (configurações anteriores)
  pinMode(botaoPedestre, INPUT);
}
void loop() {
  if(digitalRead(botaoPedestre)) {
    pedestreAtivo = true;
  }
  pedestreAtivo ? atenderPedestre() : cicloNormal();
}
void atenderPedestre() {
  digitalWrite(verde, LOW);
  digitalWrite(amarelo, HIGH);
  delay(2000);
  digitalWrite(amarelo, LOW);
  digitalWrite(vermelho, HIGH);
  delay(10000);  // Tempo para travessia
  digitalWrite(vermelho, LOW);
  pedestreAtivo = false;
}
void cicloNormal() {
  // ... (código do ciclo básico)
}

Melhorias:

Teste e Solução de Problemas🔗

SintomaCausa ProvávelSolução
LEDs não acendemPolaridade invertidaVerificar conexão do GND
Botão não funcionaFalta resistor pull-downAdicionar resistor de 10kΩ
Ciclo muito rápidoDelays muito baixosAjustar valores em delay()

Dica de Debugging:

void setup() {
  Serial.begin(9600);  // Inicia comunicação serial
}
void loop() {
  Serial.println(digitalRead(botaoPedestre));  // Monitora o botão
}

Ideias para Aprimoramento🔗

1. Modo Noturno com LDRKit de experimentos científicos para estudantes usando ArduinoKit de experimentos científicos para estudantes usando ArduinoDescubra 10 projetos interdisciplinares com Arduino, kits acessíveis e aplicações em ciências, desenvolvendo habilidades e promovendo a educação inovadora.:

const int LDR = A0;
int luminosidade;
void loop() {
  luminosidade = analogRead(LDR);
  if(luminosidade < 300) {  // Ambiente escuro
    piscarAmarelo();
  } else {
    cicloNormal();
  }
}

2. Contador de Tempo com Display 7 Segmentos:

Mostre segundos restantes para cada fase.

3. Prioridade para Emergências (Sensor IRConstruindo um robô seguidor de linhaConstruindo um robô seguidor de linhaAprenda a montar e programar um robô seguidor de linha com nosso guia completo, integrando eletrônica, mecânica e controle PID de forma eficaz.):

Detecte veículos de emergência e libere a via.

4. Controle RemotoControle remoto via Bluetooth com Arduino e HC-05Controle remoto via Bluetooth com Arduino e HC-05Domine a conexão sem fio com nosso tutorial de HC-05 e Arduino. Aprenda a criar projetos de IoT, automação residencial e robótica com dicas essenciais. via Bluetooth:

Use um módulo HC-05Controle remoto via Bluetooth com Arduino e HC-05Controle remoto via Bluetooth com Arduino e HC-05Domine a conexão sem fio com nosso tutorial de HC-05 e Arduino. Aprenda a criar projetos de IoT, automação residencial e robótica com dicas essenciais. para ajustar tempos via smartphone.

Conclusão🔗

Você construiu um semáforo que combina o essencial com funcionalidades inteligentes. Para ir além:

Desafio: Modifique o código para piscar o amarelo entre meia-noite e 6h usando um RTC. Compartilhe seu projeto na comunidadeO que é Arduino: Conceito e AplicaçõesO que é Arduino: Conceito e AplicaçõesDescubra como o Arduino transforma ideias em projetos inovadores com exemplos práticos de códigos, sensores e LEDs para iniciantes e makers. Arduino! 🚦

Autor: Marcelo V. Souza - Engenheiro de Sistemas e Entusiasta em IoT e Desenvolvimento de Software, com foco em inovação tecnológica.

Referências🔗

Compartilhar artigo

Artigos Relacionados