Semáforo (Sinal de trânsito) com arduino SR 4 – projeto fácil de robótica

Leonardo Campbell
Um semáforo ou sinal como você prefere que chame, feito com o arduino uno, muito fácil de fazer e de compreender o programa, veja o tutorial ensinando a fazer os 3 sinais, isso mesmo são 3 sinais ou seja 9 leds como sinal, não só um simples de mais, são três no vídeo eu explico o por que...

Compartilhe esse post

Share on whatsapp
Share on telegram
Share on facebook
Share on twitter
Share on email

Esquema de ligações

Código fonte

/*
  -----------Semáforo (Sinal de Transito) SR 4------------------------------------------------
  Versão do Software: 1.0 SR 4 //não apague essa linha, para futuras consultas
  Software open source, favor citar o autor: Seu Robô https://SeuRobo.com.br/
  Criado por: Leonardo Campbell - Seu Robô  
*/

//Definindo os pinos dos LEDs como a porta para cada um
#define ledVerde1    13 //Av Arduino lado "direita"
#define ledAmarelo1  12 //Av Arduino lado "direita"
#define ledVermelho1 11 //Av Arduino lado "direita"
#define ledVerde2    10 //Av Arduino lado "esquerdo"
#define ledAmarelo2  9  //Av Arduino lado "esquerdo"
#define ledVermelho2 8  //Av Arduino lado "esquerdo"
#define ledVerde3    7  //Rua Italia
#define ledAmarelo3  6  //Rua Italia
#define ledVermelho3 5  //Rua Italia

//função para configurar os LEDs
void setup() {
  //colocando o semáforo da Avenida Arduino "direita" como saida
  pinMode(ledVerde1, OUTPUT);
  pinMode(ledAmarelo1, OUTPUT);
  pinMode(ledVermelho1, OUTPUT);
  //colocando o semáforo da Avenida Arduino "esquerdo" como saida
  pinMode(ledVerde2, OUTPUT);
  pinMode(ledAmarelo2, OUTPUT);
  pinMode(ledVermelho2, OUTPUT);
  //colocando o semáforo da Rua Italia como saida
  pinMode(ledVerde3, OUTPUT);
  pinMode(ledAmarelo3, OUTPUT);
  pinMode(ledVermelho3, OUTPUT);

}
void loop() {
  //Avenida Arduino com sinal verde e Rua Italia com sinal vermelho
  digitalWrite(ledVermelho1, LOW);
  digitalWrite(ledVermelho2, LOW);
  digitalWrite(ledVerde1, HIGH);
  digitalWrite(ledVerde2, HIGH);
  digitalWrite(ledVermelho3, HIGH);
  delay(5000); //aguarda 5 segundos

  
  //Avenida Arduino com sinal amerelo e depois vermelho e Rua Italia com sinal verde
  digitalWrite(ledVerde1, LOW);
  digitalWrite(ledVerde2, LOW);
  sinalAmeloAv(); //função para piscar a luz amarela da Avenida 
  digitalWrite(ledVermelho3, LOW);
  digitalWrite(ledVermelho1, HIGH);
  digitalWrite(ledVermelho2, HIGH); 
  digitalWrite(ledVerde3, HIGH);
  delay(5000); //aguarda 5 segundos
  //SeuRobo.com.br/sr4

  //desliga a luz verde da Rua Italia e pisca a luz amarela da rua e acende a vermelha
  digitalWrite(ledVerde3, LOW);
  delay(100);
  sinalAmeloRua ();
  digitalWrite(ledVermelho3, HIGH);   
  delay(100);
}

//função para piscar o led amarelo da Rua
void sinalAmeloRua (){
  digitalWrite(ledAmarelo3, HIGH);
  delay(700); 
  digitalWrite(ledAmarelo3, LOW);
  delay(100);
  digitalWrite(ledAmarelo3, HIGH);
  delay(700); 
  digitalWrite(ledAmarelo3, LOW);
  delay(100);
  digitalWrite(ledAmarelo3, HIGH);
  delay(700); 
  digitalWrite(ledAmarelo3, LOW);
  delay(100);
  digitalWrite(ledAmarelo3, HIGH);
  delay(700); 
  digitalWrite(ledAmarelo3, LOW);
  delay(100);  
}

//função para piscar o led amarelo da Avenida
void sinalAmeloAv (){
  digitalWrite(ledAmarelo1, HIGH);
  digitalWrite(ledAmarelo2, HIGH);
  delay(700); 
  digitalWrite(ledAmarelo1,LOW);
  digitalWrite(ledAmarelo2,LOW);
  delay(100);
  digitalWrite(ledAmarelo1, HIGH);
  digitalWrite(ledAmarelo2, HIGH);
  delay(700); 
  digitalWrite(ledAmarelo1, LOW);
  digitalWrite(ledAmarelo2, LOW);
  delay(100);
  digitalWrite(ledAmarelo1, HIGH);
  digitalWrite(ledAmarelo2, HIGH);
  delay(700); 
  digitalWrite(ledAmarelo1, LOW);
  digitalWrite(ledAmarelo2, LOW);
  delay(100);
  digitalWrite(ledAmarelo1, HIGH);
  digitalWrite(ledAmarelo2, HIGH);
  delay(700); 
  digitalWrite(ledAmarelo1, LOW);
  digitalWrite(ledAmarelo2, LOW);
  delay(100);
}

//Fim
//Versão do Software: 1.0 SR 4 SeuRobo.com.br //não apague essa linha, para futuras consultas

Deixe seu comentário no final da pagina!

Patrocinadores

Compartilhe esse post

Share on whatsapp
Share on telegram
Share on facebook
Share on twitter
Share on skype

Receba avisos de novos posts e novidades

Conteúdo extra e contato mas próximo com você

Outros Posts que talvez você goste

Que Saber Mais Sobre Robótica?

Venha Fazer Um Curso Online E Aprender Muito Mais

blank