ARDUINO 021. CRUCE DE SEMÁFOROS

CRUCE DE SEMÁFOROS
Se trata de de controlar un cruce de calles mediante dos semáforos, que están conectados a los siguientes pines:
  • Semáforo 1:
    • Led Rojo – Pin 3
    • Led Ámbar – Pin 4
    • Led Verde – Pin 5
  • Semáforo 2:
    • Led Rojo – Pin 6
    • Led Ámbar – Pin 7
    • Led Verde – Pin 8
La secuencia de funcionamiento es la siguiente:
  • Rojo 1 – Verde 2 (durante 6 segundos)
  • Rojo 1 – Ámbar 2 (durante 2 segundos)
  • Verde 1 – Rojo 2 (durante 6 segundos)
  • Ámbar 1 – Rojo 2  (durante 2 segundos)
  • …. y así sucesivamente

MATERIAL NECESARIO
  • 1 Placa Arduino
  • 1 Placa protoboard
  • 6 Leds ( 2 Rojo – 2 Ámbar- 2 Verde)
  • 6 Resistencias 120 Ω
  • Cables

ESQUEMAS
 13754643_1083448155073417_5291789643804466295_n

CÓDIGO ARDUINO
/* CRUCE SEMAFOROS*/
// Definimos los pines de salida para cada led
int Rojo1 = 3;
int Ambar1 = 4;
int Verde1 = 5;
int Rojo2 = 6;
int Ambar2 = 7;
int Verde2 = 8;
// Definimos los tiempos de espera
int tiempo1 = 6000;
int tiempo2 = 2000;
// Configuración de Arduino
void setup ()
{
pinMode(Rojo1,OUTPUT); // Configuramos las salidas de los leds
pinMode(Ambar1,OUTPUT);
pinMode(Verde1,OUTPUT);
pinMode(Rojo2,OUTPUT);
pinMode(Ambar2,OUTPUT);
pinMode(Verde2,OUTPUT);
}
// Programación
void loop ()
{
digitalWrite(Rojo1,HIGH);
digitalWrite(Ambar1,LOW);
digitalWrite(Verde1,LOW);
digitalWrite(Rojo2,LOW);
digitalWrite(Ambar2,LOW);
digitalWrite(Verde2,HIGH);
delay(tiempo1);
digitalWrite(Rojo1,HIGH);
digitalWrite(Ambar1,LOW);
digitalWrite(Verde1,LOW);
digitalWrite(Rojo2,LOW);
digitalWrite(Ambar2,HIGH);
digitalWrite(Verde2,LOW);
delay(tiempo2);
digitalWrite(Rojo1,LOW);
digitalWrite(Ambar1,LOW);
digitalWrite(Verde1,HIGH);
digitalWrite(Rojo2,HIGH);
digitalWrite(Ambar2,LOW);
digitalWrite(Verde2,LOW);
delay(tiempo1);
digitalWrite(Rojo1,LOW);
digitalWrite(Ambar1,HIGH);
digitalWrite(Verde1,LOW);
digitalWrite(Rojo2,HIGH);
digitalWrite(Ambar2,LOW);
digitalWrite(Verde2,LOW);
delay(tiempo2);
}





No hay comentarios:

Publicar un comentario