Select Page

En este tutorial realizaremos la simulación de la secuencia de luces de un semáforo con Arduino, lo que nos servirá para practicar con las sentencias de salidas digitales y retardos.

Este proyecto es clásico durante la iniciación en Arduino y los microcontroladores en general, por lo que no puede faltar en nuestra colección de tutoriales relacionados con Arduino.

¿Cómo hacer un semáforo con Arduino?

Armaremos el circuito mostrado más abajo en esta página y utilizaremos 3 pines digitales de la tarjeta Arduino para general la siguiente secuencia de luces:

  • LED verde enciende por 5 segundos
  • Verde parpadea 3 veces y se apaga
  • LED Amarillo enciende 2 segundos y luego se apaga
  • LED rojo enciende por 5 segundos y luego se apaga
  • Una vez terminada esta secuencia todo debe volver a repetirse

Basados en este enunciado realizaremos la programación correspondiente desde el Arduino IDE.

Materiales requeridos

De manera alternativa podemos utilizar el módulo de semáforo con LEDs que facilita la conexión del circuito al incluir las resistencias necesarias dentro del circuito impreso.

Y opcional Fuente de alimentación eliminador adaptador AC-DC 1A (5V – 9V), para alimentar nuestra placa Arduino sin conexión USB a la computadora.

Circuito para semáforo con Arduino

Podemos utilizar el siguiente diagrama para realizar el armado de el circuito para semáforo con Arduino en un protoboard.

Diagrama de conexiones para realizar un semáforo con Arduino.

También podemos colocar el módulo de semáforo miniatura con LEDs directamente en los pines GND, D13, D12 y D11 tal como se muestra en la siguiente imagen:

Las resistencias en este caso están incluidas dentro del módulo de semáforo.

Programando el código para semáforo con Arduino

Utilizando el planteamiento que realizamos más arriba en esta página traduciremos la secuencia al código que se muestra a continuación.

Hemos comentado el código bastante para que sea fácil de entender.

Video tutorial

Puedes ver nuestro video tutorial en nuestras redes sociales y canal de youtube.

Información relacionada

Conclusión

Esta sencilla práctica nos permite ejercitar nuestras habilidades para manipular salidas digitales mediante las funciones pinMode() y digitalWrite(). También sirve como ejercicio para trabajar con retardos en la ejecución del programa usando la función delay().

Reforzamos nuestro conocimiento de las funciones setup() y loop(). Observamos que el código en la primera solamente se ejecuta una vez al encender el Arduino o reiniciarlo; Mientras que loop() se ejecuta una y otra vez mientras el Arduino permanece encendido.

Basados en este código podemos crear secuencias de luces a nuestro gusto modificando los tiempos y combinaciones de pines a nuestro gusto.

Solicitar notificaciones sobre este producto Te informaremos cuando este producto se encuentre en disponible. Por favor introduce un correo electrónico valido, solo será usado para notificarte cuando tengamos stock.