Como criar um semáforo programando com Arduino
Criar um semáforo utilizando um Arduino é um projeto educativo fascinante, perfeito para iniciantes na programação e eletrônica. Esse tutorial vai te guiar passo a passo, desde os materiais necessários até a programação do Arduino, garantindo que você consiga montar um semáforo funcional e aprender muito sobre eletrônica e programação no processo.
Materiais Necessários
Para começar, você vai precisar de alguns materiais básicos:
- 1 placa Arduino Uno
- 1 protoboard
- 3 LEDs (vermelho, amarelo e verde)
- 3 resistores de 220 ohms
- Fios de conexão
Esses componentes são facilmente encontrados em lojas de eletrônica ou online. Certifique-se de que todos os componentes estejam em boas condições antes de iniciar o projeto.
Montagem do Circuito
A montagem do circuito é uma das partes mais importantes deste projeto. Siga o esquema abaixo para conectar os LEDs e resistores ao Arduino e ao protoboard.
Passo a Passo:
- Conecte o terminal negativo de cada LED ao GND do Arduino através de resistores de 220 ohms.
- Conecte o terminal positivo do LED vermelho ao pino digital 13 do Arduino.
- Conecte o terminal positivo do LED amarelo ao pino digital 12 do Arduino.
- Conecte o terminal positivo do LED verde ao pino digital 11 do Arduino.
*Dica: Utilize o protoboard para facilitar as conexões e manter o circuito organizado.*
Programando o Arduino
Agora que o circuito está montado, é hora de programar o Arduino. O código a seguir controla os LEDs para simular o funcionamento de um semáforo.
Código Arduino:
int ledVermelho = 13;
int ledAmarelo = 12;
int ledVerde = 11;
void setup() {
pinMode(ledVermelho, OUTPUT);
pinMode(ledAmarelo, OUTPUT);
pinMode(ledVerde, OUTPUT);
}
void loop() {
digitalWrite(ledVerde, HIGH); // Acende o LED verde
delay(5000); // Aguarda 5 segundos
digitalWrite(ledVerde, LOW); // Apaga o LED verde
digitalWrite(ledAmarelo, HIGH);// Acende o LED amarelo
delay(2000); // Aguarda 2 segundos
digitalWrite(ledAmarelo, LOW); // Apaga o LED amarelo
digitalWrite(ledVermelho, HIGH);// Acende o LED vermelho
delay(5000); // Aguarda 5 segundos
digitalWrite(ledVermelho, LOW);// Apaga o LED vermelho
}
Esse código é bastante simples e utiliza as funções básicas do Arduino para controlar os LEDs. Ele faz com que cada LED acenda e apague em uma sequência que simula um semáforo real.
Explicação do Código
pinMode()
: Define os pinos como saída.digitalWrite()
: Envia um sinal HIGH ou LOW para o pino especificado, acendendo ou apagando o LED.delay()
: Aguarda por um determinado tempo em milissegundos antes de continuar a execução do código.
Com esses conceitos, você já consegue entender e modificar o código para personalizar o comportamento do seu semáforo.
Testando e Ajustando
Após carregar o código no Arduino, observe o comportamento dos LEDs. Eles devem acender e apagar seguindo a ordem típica de um semáforo:
- LED verde aceso por 5 segundos.
- LED amarelo aceso por 2 segundos.
- LED vermelho aceso por 5 segundos.
Se algo não estiver funcionando corretamente, revise as conexões e o código. Erros comuns incluem LEDs conectados ao pino errado ou resistores não instalados corretamente.
Dicas e Extensões
- Adicionar Botões: Para tornar o projeto mais interativo, adicione botões para simular a pressão de pedestres.
- Usar um Display: Utilize um display de 7 segmentos para adicionar um contador regressivo. Saiba mais sobre semáforo contador regressivo.
Tabela de Pinos
LED | Pino Arduino |
---|---|
Vermelho | 13 |
Amarelo | 12 |
Verde | 11 |
Citação Inspiradora
“A programação não é sobre o que você sabe; é sobre o que você pode descobrir.” – Chris Pine
Conclusão
Criar um semáforo com Arduino é uma excelente maneira de aprender sobre eletrônica e programação. Este projeto básico pode ser expandido de várias formas para aumentar sua complexidade e funcionalidade. Experimente adicionar novos componentes e funcionalidades para continuar aprendendo e se desafiando.