P1: El semáforo
Categorías:
Etiquetas:
El semáforo
Qué vas a repasar en este proyecto
En este proyecto repasaremos:
- Conexión entre la placa de desarrollo y el ordenador.
- Manejo del entorno de desarrollo BatSTEM Cloud.
- Control de LEDs externos desde la placa de desarrollo.
- Bloques de control de LEDs y de espera.
Requisitos previos
Este proyecto pone en práctica los conceptos aprendidos en las lecciones L1: Mi primer proyecto, L2: El diodo LED y L3: El diodo LED (2).
Enunciado
Empleando todo lo que hemos aprendido en las lecciones anteriores, vamos a construir un semáforo con diodos LED. Nuestro semáforo tendrá 3 colores: rojo, amarillo y verde. Usaremos para ello 3 LEDs, uno de cada uno de los 3 colores. Tenderemos que colocar en la placa de prototipos los tres LEDs junto con los dispositivos adicionales que creamos necesarios y desarrollaremos un programa que hará que se enciendan con la siguiente secuencia:
- Verde durante 10 segundos.
- Amarillo durante 2 segundos.
- Rojo durante 10 segundos.
Pistas
Piensa en primer lugar qué materiales vas a necesitar e intenta hacerte un esquema mental de cómo vas a conectarlos. Después piensa qué tipos de bloques vas a usar para encender y apagar LEDs y para esperar un tiempo determinado.
Consulta estas pistas sólo si te hace falta. ¡Primero inténtalo sin mirar!
Ver pistas
Solución
¡Consulta la solución sólo si ya has terminado o si no consigues avanzar! Aprenderás mucho más si consigues completar el proyecto sin mirar la solución antes de tiempo.
Ver solución
Descripción general
Para construir nuestro semáforo tendremos que conectar los 3 LEDs a la placa de desarrollo, cada uno de ellos a un pin GPIO diferente. Tendremos que conectarlos junto con una resistencia de protección de la misma manera que hicimos en las lecciones L2 y L3. Después, tendremos que usar los bloques de definición y control de LEDs y los de espera para manejarlos según la secuencia propuesta.
Puedes elegir los pines GPIO que prefieras. Para esta solución hemos elegido el GPIO18 para el LED rojo, el GPIO5 para el amarillo y el GPIO4 para el verde.
Materiales
- Placa de desarrollo.
- Placa de prototipos.
- Cable de conexión USB.
- LED rojo.
- LED amarillo.
- LED verde.
- 3x resistencias de 100 Ohms.
- Cables de conexión.
Esquema electrónico
El diagrama electrónico del circuito a realizar es el que puedes ver en la siguiente imagen.
Esquema electrónico del semáforo
Puedes ver que cada uno de los LEDs lleva su propia resistencia de protección. Vamos a colocar las resistencias entre el ánodo de los LEDs y el pin GPIO correspondiente. El cátodo de los LEDs va conectado a GND.
Diagrama de conexión
Conexión de los componentes en la placa de prototipos
Conecta los componentes siguiendo el diagrama. Presta atención a los siguientes detalles:
- Conectamos con un cable el pin GND de la placa de desarrollo con la línea azul de la placa de prototipos. La línea azul será nuestra línea de 0 voltios, referencia o GND.
- Los tres cables de colores rojo, verde y amarillo se conectan a tres líneas distintas de la placa de prototipos. En esas mismas líneas colocaremos uno de los terminales de las resistencias de protección.
- El otro terminal de las resistencias lo colocaremos en líneas del otro bloque de conexiones. En esas mismas líneas colocaremos los ánodos de los LEDs.
- Los cátodos de los LEDs los conectaremos con cables a la línea azul de GND.
¡Presta atención a la polaridad de los LEDs! Puedes recordar cómo identificar el ánodo y el cátodo de un LED repasando lo aprendido en la Lección 2.
Código
Bloques del programa del semáforo
Construye el programa siguiendo el diagrama. Presta atención a lo siguiente:
- En el bloque de configuración definimos los tres dispositivos de tipo LED, les asignamos nombres y especificamos a qué pin GPIO están conectados. Asegúrate de especificar correctamente el pin. Si necesitas recordar para qué sirve el bloque de configuración, consulta la Lección 1.
- En el bucle principal añadimos bloques para controlar la secuencia del semáforo. Esta secuencia será la siguiente:
- Encender LED verde.
- Esperar 10 segundos.
- Apagar LED verde y encender LED amarillo.
- Esperar 2 segundos.
- Apagar LED amarillo y encender LED rojo.
- Esperar 10 segundos.
- Apagar LED rojo.
- Tras apagarse el LED rojo, el bucle se ejecutará de nuevo desde el principio, encendiendo el LED verde y reiniciando la secuencia.
Pulsa en el botón Ejecutar para compilar y cargar tu programa en la placa de desarrollo. Si todo ha ido bien verás tu semáforo funcionando.
Semáforo funcionando (velocidad 2x)