[Agregar un gift de vídeo del proyecto aquí.]
[Insertar foto del proyecto aquí.]
Descripción:
Esta práctica de Arduino implica la creación de un circuito con cuatro LEDs y programación para generar una secuencia aleatoria de encendido y apagado de estos LEDs. La secuencia se basa en la generación de números aleatorios para seleccionar qué LED se encenderá en cada ciclo.
[Insertar vídeo de YT del proyecto aquí.]
Materiales:
(Si no conoces el funcionamiento de algún componente da click aquí)
Arduino Uno R3
· 1 Protoboard
· 5 Leds (cualquier color)
· 5 Resistencias 220 Ohm
· 6 Cables jumpers de conexión
Procedimiento:
1. Realizar la conexión que se muestra en la ilustración 1.
Ilustración 1.
Pinout:
Conexiones que debes realizar.
LED 1: Conecta el LED rojo al pin digital 2.
LED 2: Conecta el LED amarillo al pin digital 3.
LED 3: Conecta el LED verde al pin digital 4.
LED 4: Conecta el LED azul al pin digital 5.
LED 5: Conecta el LED blanco al pin digital 6.
Asegúrate de conectar el ánodo (lado largo) del LED al pin especificado y el cátodo (lado corto) a través de una resistencia (aproximadamente 220 ohmios) a tierra (GND) para cada LED.
Recuerda que es importante usar resistencias para limitar la corriente que pasa a través de los LEDs y evitar dañarlos.
Código:
Además de eso, el código establece los tiempos para cada estado del de la serie aleatoria:
/*Programa: Semáforo.
Curso: Arduino UNO
Autor: Expacio STEAM
*/
// Definición de los pines de los LED
const int leds[] = {2, 3, 4, 5, 6}; // Definimos un arreglo para los pines de los LEDs
const int numLeds = sizeof(leds) / sizeof(leds[0]); // Calculamos la cantidad de LEDs en el arreglo
void setup() {
// Configurar los pines como salidas
for (int i = 0; i < numLeds; i++) { // Iteramos sobre todos los LEDs
pinMode(leds[i], OUTPUT); // Configuramos cada pin como salida
}
// Iniciar la generación de números aleatorios
randomSeed(analogRead(0)); // Inicializamos la generación de números aleatorios con una entrada analógica
}
void loop() {
// Encender un LED aleatorio
int randomLed = random(0, numLeds); // Seleccionamos un LED aleatorio
digitalWrite(leds[randomLed], HIGH); // Encendemos el LED seleccionado
// Esperar un tiempo
delay(100); // Esperamos 1 segundo
// Apagar todos los LEDs
for (int i = 0; i < numLeds; i++) { // Iteramos sobre todos los LEDs
digitalWrite(leds[i], LOW); // Apagamos cada LED
}
// Esperar un tiempo
delay(100); // Esperamos medio segundo antes de comenzar el siguiente ciclo
}
Hacer 2 semáforos que se cordinen para permitirse el paso.