Luz de discoteca – Itinerario de aprendizaje – Proyecto 1

Nuestro Itinerario de aprendizaje maker esta desarrollado para aprender todos los fundamentos y un poco más acerca de electrónica y programación.
Si completas el itinerario serás capaz de crear casi cualquier proyecto que imagines. En cada proyecto se introducen nuevos conceptos, de modo que aprenderás haciendo o creando de una manera amena y divertida.
Inicia tu viaje como maker con esta actividad donde aprenderás los primeros pasos. Verás cómo encender un LED, crear intermitencia y regular su brillo.
Descripción
Proyecto 1
LUCES DE DISCOTECA

¡Aprende a encender un led, controlar el tiempo para obtener iluminación intermitente y regular el brillo, como una verdadera luz de discoteca!

Antes de empezar
ANTES DE EMPEZAR

NIVEL DE DIFICULTAD: Principiante
DURACIÓN DE LA ACTIVIDAD: 30 min.

MATERIALES:

1
Placa Build&Code 4in1

Portapilas, cable USB y cables de conexión.

Components
1 - Componentes

El LED monocromático es un módulo que emite luz de un color fijo. Puedes utilizar módulos con el led azul, verde, amarillo, rojo o blanco para este ejercicio.

La placa de circuito 4in1 Build & Code es el cerebro, y tenemos que decirle qué hacer. ¿Cómo? Podemos hacerlo de diferentes maneras, utilizando gráficamente el lenguaje de bloques o escribiendo código en texto. En ambos casos, necesitamos descargar un software gratuito capaz de programar nuestro cerebro:

Mblock

Programación por bloques, de modo visual, similar a Scratch

Arduino IDE

Escribe código y cárgalo en tu placa 4in1 de forma fácil.

Si es tu primer proyecto o tienes problemas al cargar tu programa revisa nuestros primeros pasos

Ejercicio 1.1 - Circuito
1. Enciende un LED - Circuito

La placa 4in1 Build&Code tiene 12 puertos digitales (I/O). Cada puerto se puede definir como entrada o salida

El siguiente paso es conectar los componentes. Usaremos una fuente de alimentación de Corriente Continua (DC) con una tensión máxima de 12V. Un valor bajo y completamente seguro para nostros.
Cada componente tiene 3 pines: voltaje (V) y tierra (G) para alimentarlo, y señal (S) que puede estar con un estado "alto" (5V) o "bajo" (0V).

Conecta un cable desde los pines DIO3 de la placa 4in1 al módulo LED respetando los colores.

- Negro: Tierra o Negativo (Ground)
- Rojo: Voltaje o Positivo (V)
- Amarillo: Señal (S)

Exercise 1.1 - Programa
1.1 Programa - Encender un LED

Para encender un led, como cualquier otro actuador digital, necesitamos definir un puerto de salida y ponerlo en un estado de nivel "alto" o "bajo", configurándolo con un valor "1" o "0", "encendido" o "apagado" respectivamente.

Código por bloques

Si no has usado MBlock anteriormente , o Arduino IDE, puede echar un ojo nuestra página de primeros pasos

Código Arduino
int LED = 3;             // CONNECT LED TO DIGITAL IO 3

void setup() {
  pinMode(LED, OUTPUT);   // DEFINE AS OUTPUT
}

void loop() {
  digitalWrite(LED, HIGH);  // POWER ON LED
}
Exercise 1.2 - Luz Intermitente
1.2 LED Intermitente

Ya sabes encender un LED, ahora, ¡queremos que parpadee! Definiremos 1 seg. ENCENDIDO y 1 seg. APAGADO continuamente

Usando el mismo código anterior, añadimos:

Código por bloques
Código Arduino
 
int LED = 3; // DEFINE LED DIGITAL OUTPUT TO DIO 3

void setup() {
  pinMode(LED, OUTPUT);   // DEFINE DIO PIN AS OUTPUT
}

void loop() {
  digitalWrite(LED, HIGH);  // POWER ON LED
  delay(1000);              // WAIT ONE SECOND (1000ms = 1s)
  digitalWrite(LED, LOW);   // POWER OFF LED
  delay(1000);              // WAIT ONE SECOND (1000ms = 1s)
}

Prueba a variar la velocidad, modifica el tiempo de 1 segundo a 1/4s, 2s y 10 s.
Tal vez quieras cambiar el ritmo o cadencia, prueba definiendo distintos tiempos para los estados "ALTO" y "BAJO".

Ejercicio 1.3 - Luz intermitente - variables
1.3 LED Intermitente - Variables

Al codificar, podemos usar variables, un nombre simbólico asociado con un valor que se puede cambiar fácilmente en la definición o durante la ejecución del programa.
Necesitamos definirlo, asignar un valor inicial y usar ese nombre en lugar de números directamente en nuestras funciones. ¡Intentalo!

Código Arduino
int LED = 3; // DEFINE LED TO DIO 3
int time1 = 3000;  //DEFINE VARIABLE WITH TIME POWERED ON/OFF IN MILISECONDS
void setup() {
  pinMode(LED, OUTPUT);   // DEFINIR PIN COMO SALIDA
}

void loop() {
  digitalWrite(LED, HIGH);  // POWER ON LED
  delay(time1);             // WAIT MILISECONDS DEFINED IN TIME1 VAR
  digitalWrite(LED, LOW);   // POWER OFF LED
  delay(time1);             // WAIT MILISECONDS DEFINED IN TIME1 VAR
}

Si quieres tener un ritmo diferente, necesitarás agregar una segunda variable, por lo que el tiempo "encendido" y el tiempo "apagado" son diferentes. ¡Hazlo!

Ejercicio 1.4 - Luz intermitente - brillo
1.4 Brillo del LED - PWM

Los LED son componentes de ENCENDIDO o APAGADO, como salida digital, no se pueden alimentar a medias para obtener menos brillo. La solución es parpadear muy rápido, usando pulsos tan rápidos que nuestros ojos no pueden ver. ¡Del orden de 25000 pulsos por segundo!

Ajustando diferentes tiempos para el estado "BAJO" y "ALTO", podemos percibir diferentes brillos de led. Esto se llama modulación por ancho de pulsos (PWM) . Esto también se usa para controlar otros dispositivos, lo veremos en las próximas actividades.

La placa 4in1 también tiene salidas analógicas, donde los valores numéricos de nuestro código se convierten a un nivel de voltaje variable. En nuestro programa podemos definirlo de 0 a 255, y la salida de voltaje será de 0 a 5 voltios. Internamente, esto se hace usando PWM y algunos dispositivos electrónicos ( filtro paso bajo )

Interesante pero....
Quiero programar!
Suguiente por favor?
Brillo LED - PWM
1.4 Brillo LED - PWM
Block coding
Arduino code
int LED = 3;      // DEFINE LED DIGITAL OUTPUT TO DIO 3
int brillo = 0;   // VARIABLE TO DEFINE LED BRIGHTNESS
void setup() {
  pinMode(LED, OUTPUT);   // DEFINE DIO PIN AS OUTPUT
}

void loop() {
  analogWrite(LED, brillo);  // ADJUST PWM ACCORDING BRIGHTNESS VARIABLE
  delay(250);                // WAIT 250 MILISECONDS
  brillo = brillo + 10;      // INCREMENT VARIABLE VALUE IN 10
}

Arduino tiene una función específicamente diseñada para hacer PWM sobre cualquier salida digital. Solo necesita dos valores, pin digital y valor PWM de 0 a 255

Proyecto final - Luz de discoteca!
Proyecto Final - LUZ DE DISCOTECA

¡Ahora puedes agregar todos tus módulos led y hacer que brillen como desees! Descarga las plantillas de cartón para construirlo. A continuación dispones de un código de ejemplo. Prueba a crear diferentes combinaciones, distintos tiempos para cada led... ¡opciones sin límite!

Programación por bloques
Código Arduino
int led_blanco = 2;
int led_rojo = 3;
int led_verde = 4;
int led_amarillo = 5;
int led_azul = 6;

int velocidad = 500;

void setup() {
  pinMode(led_blanco, OUTPUT);
  pinMode(led_rojo, OUTPUT);
  pinMode(led_verde, OUTPUT);
  pinMode(led_amarillo, OUTPUT);
  pinMode(led_azul, OUTPUT);
}

void loop() {
  for (int i = 0; i < 10; i++) {
    delay(200);
    digitalWrite(led_blanco, LOW);
    delay(200);
    digitalWrite(led_blanco, HIGH); 
  }
  
  delay(velocidad);
    
  int brillo = 0;
  while (brillo > 255) {
    brillo = brillo + 5; 
    analogWrite(led_rojo, brillo); 
    delay(100);
  }

  delay(velocidad);
  digitalWrite(led_verde, HIGH);
  delay(velocidad);
  digitalWrite(led_amarillo, HIGH);
  delay(velocidad);
  digitalWrite(led_azul, HIGH);
  delay(velocidad);
  digitalWrite(led_azul, LOW);
  delay(velocidad);
  digitalWrite(led_amarillo, LOW);
  delay(velocidad);
  digitalWrite(led_verde, LOW);

  brillo = 255;
  while (brillo < 0) {
    brillo = brillo - 5;  
    analogWrite(led_rojo, brillo);
    delay(100);
  }

}
previous arrow
next arrow

El Mega Maker Kit te ofrece el todo el material que necesitas para completar el itinerario, pero si dispones de otro kit, también puedes realizar algunos proyectos. Te animamos a que los revises todos, o que compres los componentes que necesites.  Puedes verificar que actividades puedes realizar en nuestra página del Itinerario de aprendizaje.

0 0
0
¿Hablamos?
Necesitas Ayuda
¿Te ayudamos? 🙂

El horario en línea actualmente es de lunes a viernes de 10:00 a 13:30 y de 16:00 a 18:30 (hora España GTM+1). Si lo prefieres puedes enviarnos un correo a info@eboticseducation.com