Como HACER un SEMÁFORO DOBLE VÍA en ARDUINO


p3.jpg

Video

En esta práctica programaremos el cambio y el parpadeo de la luz verde de dos semáforos utilizando LEDs.

- Materiales:


Para realizar el circuito necesitas:

• 1 Arduino UNO,
• 2 LEDs rojos,
• 2 LEDs amarillos,
• 2 LEDs verdes,
• 6 Resistencia de 220 ohms,
• 1 Protoboard y Jumpers.

- Código


Comenzamos el desarrollo del programa definiendo los pines digitales de los LEDs. Para identificar el color de los leds dentro del código, las variables las llamaremos conforme al color y en que semáforo pertenece.

int Rojo1 = 5;
int Ambar1 = 6;
int Verde1 = 7;
int Rojo2 = 8;
int Ambar2 = 9;
int Verde2 = 10;


En la función void setup() pondremos todos los pines digitales como salida.

void setup() {
pinMode(Rojo1,OUTPUT);
pinMode(Ambar1,OUTPUT);
pinMode(Verde1,OUTPUT);
pinMode(Rojo2,OUTPUT);
pinMode(Ambar2,OUTPUT);
pinMode(Verde2,OUTPUT);
}

En void loop() programaremos la lógica de ambos semáforos. Separaremos los cambios por secciones utilizando comentarios para no repetir algún cambio durante el proceso.

En la primera sección será el semaforo1 estando en rojo y el semaforo2 en verde, listo para comenzar con su ciclo de cambio. Durará 3 segundos prendido el LED verde.

void loop() {
//Ciclo semaforo2
digitalWrite(Rojo1,HIGH);
digitalWrite(Ambar1,LOW);
digitalWrite(Verde1,LOW);

digitalWrite(Rojo2,LOW);
digitalWrite(Ambar2,LOW);
digitalWrite(Verde2,HIGH);
delay(3000);

Para el parpadeo abrimos otra sección solo para manipular el pin digital de LED verde. Se hará 2 parpadeo y cada uno durará 1 segundo.

//Parpadeo semaforo2
digitalWrite(Verde2,LOW);
delay(1000);
digitalWrite(Verde2,HIGH);
delay(1000);
digitalWrite(Verde2,LOW);
delay(1000);
digitalWrite(Verde2,HIGH);
delay(1000);

Para finalizar el ciclo del semaforo2, prenderemos el LED ambar para poder pasar al ciclo del semaforo1, esté cambio solo durará 1 segundo.

//Cambio semaforo2
digitalWrite(Ambar2,HIGH);
digitalWrite(Verde2,LOW);
delay(1000);

Para la programación del semaforo1 es igual al del semaforo2 solo debemos cambiar los pines de los LEDs, asi quedaría completo:

void loop() {
//Ciclo semaforo2
digitalWrite(Rojo1,HIGH);
digitalWrite(Ambar1,LOW);
digitalWrite(Verde1,LOW);

digitalWrite(Rojo2,LOW);
digitalWrite(Ambar2,LOW);
digitalWrite(Verde2,HIGH);
delay(3000);

//Parpadeo semaforo2
digitalWrite(Verde2,LOW);
delay(1000);
digitalWrite(Verde2,HIGH);
delay(1000);
digitalWrite(Verde2,LOW);
delay(1000);
digitalWrite(Verde2,HIGH);
delay(1000);

//Cambio semaforo2
digitalWrite(Ambar2,HIGH);
digitalWrite(Verde2,LOW);
delay(1000);

//Ciclo semaforo1
digitalWrite(Rojo1,LOW);
digitalWrite(Ambar1,LOW);
digitalWrite(Verde1,HIGH);

digitalWrite(Rojo2,HIGH);
digitalWrite(Ambar2,LOW);
digitalWrite(Verde2,LOW);
delay(3000);

//Parpadeo semaforo1
digitalWrite(Verde1,LOW);
delay(1000);
digitalWrite(Verde1,HIGH);
delay(1000);
digitalWrite(Verde1,LOW);
delay(1000);
digitalWrite(Verde1,HIGH);
delay(1000);

//Cambio semaforo1
digitalWrite(Ambar1,HIGH);
digitalWrite(Verde1,LOW);
delay(1000);

}

- Instrumentación


Para realizar el circuito necesitas: 1 Arduino UNO, 2 LEDs rojos, 2 LEDs amarillos, 2 LEDs verdes, 6 Resistencias de 220 ohms, 1 Protoboard y Jumpers.

Colocaremos todos los LEDs haciendo una línea, separaremos los semáforos para identificar los cambios. Conectamos los ánodos con las resistencias y está conectada a los pines digitales de la placa y los cátodos conectados a la tierra del Arduino. Compilamos y subimos programa para ver resultados.

DESCARGAS


LINK DE DESCARGA

Imágenes

p3.jpg
p3_2.jpg
p3_3.jpg

APRENDE LO QUE NECESITAS

NUESTROS CURSOS


cursoarduinoyandroid.jpg

Creación de un HMI en Android Studio y Arduino

Nivel: Básico 2 horas y 30 min (146 min.)

Diseña, maqueta y programa un HMI completo en Android Studio vinculado a un Arduino mediante Bluetooth.

cursodispensadorautomatico.jpg

CONSTRUYE un DISPENSADOR AUTOMÁTICO CASERO sin ARDUINO desde CERO

Nivel: Básico 27 minutos

Construye desde cero un dispensador automático casero sin Arduino desde cero, utilizando pura electrónica.

cursocarritorobot4wd.jpg

Creación de carrito robot desde cero usando mando de PS4

Nivel: Básico 2 horas y 19 min (139 min.)

Construye desde cero un carrito robot con arduino manipulado por un control de PS4 y un teléfono Android.