miércoles, 29 de abril de 2020

Semáforo

Como primer proyecto, realizaremos un semáforo con unos Leds. 
Es ideal para iniciarnos en la programación y el montaje de circuitos porque, como se vera, es muy fácil.
Los elementos que vamos a necesitar son
  •  1 x ESP8266 NodeMCU LoLin (La cual usaremos para todos nuestros experimentos)
  •  1 x Protoboard
  •  1 x Led rojo 3mm
  •  1 x Led amarillo 3mm
  •  1 x Led verde 3mm
  •  3 x resistencias de 220Ω.
  •  Cables para conectar todo.
Una vez que tenemos todo, hacemos nuestro montaje siguiendo el siguiente esquema.

Esquema de montaje del semáforo

Utilizaremos los pines digitales D3 - GPIO 0 (rojo), D2 - GPIO 4 (amarillo) y D1 - GPIO 5 (verde). Al conectar los Leds debéis tener en cuenta que tienen polaridad, por lo que tenéis que colocarlos bien para que funcionen. En los Leds la patilla corta, o el lado que está achatado, es el negativo e irá conectado a tierra (GND en la placa) a través de una resistencia. La patilla larga, o lado redondeado, es el positivo y se conectará al pin de la placa correspondiente.


Una vez montado, abriremos nuestro IDE Arduino y escribiremos el programa (sketch).
/*************/
/*  SEMAFORO */
/*************/
//** Definiciones **//
int rojo = 0;    //definimos el valor del pin para el led rojo
int amarillo = 4; //definimos el valor del pin para el led amarillo
int verde = 5;   //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
}

Con la sentencia int estamos declarando una variable numérica entera, para poderla usar después en nuestro código.

El comando delay hace que el programa pare un tiempo determinado. Éste lo definiremos, en milisegundos, dentro de los paréntesis.




No hay comentarios.:

Publicar un comentario