APRENDE A HACER UN SEMÁFORO CON ARDUINO
En una de nuestras publicaciones anteriores en el blog de SAR SOLUTIONS, vimos que eran las protoboard; en este blog, haremos uso de una de estas para hacer un semáforo.
Ademas de la protoboard, necesitaremos de mas elementos para la construcción de este:
-1x Protoboard
-1x Arduino UNO
-1x LED rojo
-1x LED amarillo
-1x LED verde
-3x resistencias de 220ohm
– Cables suficientes para conectarlo todo (en este ejemplo con 4 cables tendremos suficiente)
Este proyecto esta dividido en dos partes: en el montaje del circuito con los componentes especificados anteriormente, y la parte de la programación
Empecemos con la programación:
Ya que vamos a realizar el proyecto con una placa Arduino, utilizaremos la misma aplicación Arudino para hacer la programación.
Para poder realizar un código Arduino debemos tener las herramientas con las que decirle a nuestro microcontrolador que es lo que debe hacer en cada momento. Estas herramientas son las sentencias y funciones .
En el caso del semáforo la programación sera muy sencilla:
/* SEMAFORO */
/*** SAR SOLUTIONS ***/
//** Definiciones **//
int rojo=2; //definimos el valor del pin para el led rojo
int amarillo=4; //definimos el valor del pin para el led amarillo
int verde=7; //definimos el valor del pin para el led verde
//** Programa **//
void setup() {
pinMode(verde,OUTPUT); //declaramos el pin verde como salida
pinMode(amarillo,OUTPUT);//declaramos el pin amarillo como salida
pinMode(rojo,OUTPUT); //declaramos el pin rojo como salida
}
void loop() {
digitalWrite(verde,HIGH); //encendemos el led rojo
delay(2000); //esperamos 2 segundos
digitalWrite(verde,LOW); //apagamos el led rojo
delay(500); //esperamos medio segundo
digitalWrite(amarillo,HIGH); //encendemos el led amarillo
delay(2000); //esperamos 2 segundos
digitalWrite(amarillo,LOW); //apagamos el led amarillo
delay(500); //esperamos medio segundo
digitalWrite(rojo,HIGH); //encendemos el led verde
delay(2000); //esperamos 2 segundos
digitalWrite(rojo,LOW); //apagamos el led verde
delay(500); //esperamos medio segundo
}
Ahora vayamos por partes:
En la primera sección indicamos al programa los pines para cada led de los diferentes colores; el numero indica el pin en la placa Arduino.
//** Definiciones **//
int rojo=2; //definimos el valor del pin para el led rojo
int amarillo=4; //definimos el valor del pin para el led amarillo
int verde=7; //definimos el valor del pin para el led verde
Por otro lado tenemos el programa, que también esta dividido en dos partes:
En la primera definimos que todos los pines son de salida, es decir, slae información.
void setup() {
pinMode(verde,OUTPUT); //declaramos el pin verde como salida
pinMode(amarillo,OUTPUT);//declaramos el pin amarillo como salida
pinMode(rojo,OUTPUT); //declaramos el pin rojo como salida
}
Y en la segunda led decimos al programa lo que ha de hacer.
Definimos los tiempos en los que el LED ha de estar encendido o apagado, y ya que el programa es sencillo, entrará en bucle:
void loop() {
digitalWrite(verde,HIGH); //encendemos el led verde
delay(2000); //esperamos 2 segundos
digitalWrite(verde,LOW); //apagamos el led verde
delay(500); //esperamos medio segundo
digitalWrite(amarillo,HIGH); //encendemos el led amarillo
delay(2000); //esperamos 2 segundos
digitalWrite(amarillo,LOW); //apagamos el led amarillo
delay(500); //esperamos medio segundo
digitalWrite(rojo,HIGH); //encendemos el led rojo
delay(2000); //esperamos 2 segundos
digitalWrite(rojo,LOW); //apagamos el led rojo
delay(500); //esperamos medio segundo
}
Ahora vayamos a la otra parte de nuestro proyecto:
Deberemos montar el semáforo.
Con este sencillo esquema podremos hacerlo:
Una vez tenemos montado nuestro semáforo, deberemos subir nuestra programación a la Placa Arduino, y ya podremos ver nuestro proyecto en funcionamiento.
Si quieres aprender muchisimas cosas mas sobre la electronica no dudes en venir a SAR SOLUTIONS, estamos en Sant Boi de Llobregat, Maria Fortuny, 20, local 1.