Nota

¡Hola, bienvenido a la comunidad de entusiastas de SunFounder Raspberry Pi & Arduino & ESP32 en Facebook! Profundiza en Raspberry Pi, Arduino y ESP32 con otros aficionados.

Why Join?

  • Expert Support: Resuelve problemas posventa y desafíos técnicos con la ayuda de nuestra comunidad y equipo.

  • Learn & Share: Intercambia consejos y tutoriales para mejorar tus habilidades.

  • Exclusive Previews: Obtén acceso anticipado a anuncios de nuevos productos y avances exclusivos.

  • Special Discounts: Disfruta de descuentos exclusivos en nuestros productos más recientes.

  • Festive Promotions and Giveaways: Participa en sorteos y promociones festivas.

👉 ¿Listo para explorar y crear con nosotros? Haz clic en [aquí] y únete hoy mismo!

Lección 29: Módulo de Semáforo

En esta lección, aprenderás a usar Arduino para controlar un pequeño semáforo LED. Cubriremos la programación de Arduino Uno para ciclar a través de las luces verde, amarilla y roja, simulando una señal de tráfico real. Este proyecto es ideal para principiantes ya que proporciona experiencia práctica en la codificación de secuencias de luces y controles de tiempo en la plataforma Arduino.

Componentes Necesarios

Para este proyecto, necesitaremos los siguientes componentes.

Es definitivamente conveniente comprar un kit completo, aquí está el enlace:

Nombre

ELEMENTOS EN ESTE KIT

ENLACE

Kit Universal de Sensores para Creadores

94

BUY

También puedes comprarlos por separado en los siguientes enlaces.

Introducción del Componente

Enlace de Compra

Arduino UNO R3 o R4

Comprar

Módulo de Semáforo

Comprar

Conexiones

../_images/Lesson_29_traffic_light_circuit_uno_bb.png

Código

Análisis del Código

  1. Antes de cualquier operación, definimos constantes para los pines donde están conectados los LEDs. Esto hace que nuestro código sea más fácil de leer y modificar.

const int rledPin = 9;  // rojo
const int yledPin = 8;  // amarillo
const int gledPin = 7;  // verde
  1. Aquí, especificamos los modos de pin para nuestros pines LED. Todos se configuran como OUTPUT porque tenemos la intención de enviar voltaje a ellos.

void setup() {
  pinMode(rledPin, OUTPUT);
  pinMode(yledPin, OUTPUT);
  pinMode(gledPin, OUTPUT);
}
  1. Aquí es donde se implementa la lógica del ciclo de semáforo. La secuencia de operaciones es:

    • Encender el LED verde durante 5 segundos.

    • Parpadear el LED amarillo tres veces (cada parpadeo dura 0.5 segundos).

    • Encender el LED rojo durante 5 segundos.

void loop() {
  digitalWrite(gledPin, HIGH);
  delay(5000);
  digitalWrite(gledPin, LOW);

  digitalWrite(yledPin, HIGH);
  delay(500);
  digitalWrite(yledPin, LOW);
  delay(500);
  digitalWrite(yledPin, HIGH);
  delay(500);
  digitalWrite(yledPin, LOW);
  delay(500);
  digitalWrite(yledPin, HIGH);
  delay(500);
  digitalWrite(yledPin, LOW);
  delay(500);

  digitalWrite(rledPin, HIGH);
  delay(5000);
  digitalWrite(rledPin, LOW);
}