Hola a todos, esta vez les presento mi arbolito de navidad hecho con luces LED (banda o tira de LEDs), componentes electrónicos y material reciclable.
Materiales Usados
Para la estructura de árbol se usó:
- Cartón Microcorrugado para la base.
- Cono de Technopor para el árbol (ramas).
- Pintura verde para pintar el cono.
- Arbustos disecados para las hojas.
- Estrella de plástico en la cima.
La construcción se efectúa de forma lógica. Primero se arma la base a libre elección de la forma, yo hice una base cuadrada y tronco octagonal, ambos huecos para que puedan contener la parte electrónica internamente.
Para la iluminación usé una banda o tira LED multicolor o RGB de 2m.
La banda esta conectada a un circuito controlador que tiene un PIC. Todo el circuito y la banda se alimenta con una fuente de 12 V con la potencia suficiente para alimentar el circuito y los LEDs.
Usé un conector con bornes a plug para conectar la fuente al circuito y los LEDs y lo puse debajo de la base cuadrada.
El circuito de control lo puse dentro del tronco octogonal el cual esta conectado a través de un Molex a la banda de LEDs.
El diagrama lógico del circuito esta a continuación
Se observa que los transistores actúan como compuertas lógicas que separan la etapa de potencia (Alimentación de la Banda LED). cuando se aplica un voltaje a la base del transistor, se cierra el circuito y se enciende la banda del respectivo color.
Como hay 3 colores se pueden realizar 2^3 combinaciones de acuerdo al siguiente esquema de colores:
Donde 1 representa el voltaje aplicado al pin. Naturalmente la combinacion 000 no encenderá ningun color (oscuridad total)
Finalmente (para ya no aburrirlos demasiado) dependiendo del programa que se encuentre en el PIC lograrán todos los efectos especiales que puedan imaginar.
Con el siguiente programa basado en PWM logro el efecto de desvanecimiento de los colores de intenso a ténue.
'****************************************************************
'* Name : UNTITLED.BAS *
'* Author : Oscar Carrion P. *
'* Notice : Copyright (c) 2016 Electrolife SAC *
'* : All Rights Reserved *
'* Date : 28/12/2016 *
'* Version : 1.0 *
'* Notes : LUCES LED DE 7 COLORES *
'* : *
'****************************************************************
'configuracion de puertos
cmcon = 7 'convierte a digitales los comparadores ANALOG en 16f628
trisa = $00 'puerto A como entrada
trisb = $00 'Puerto B como entrada
OUT_GREEN var portb.0
OUT_RED var portb.1
OUT_BLUE var portb.2
cambio var byte
duty var word
x var byte
id var bit
c con 10 'diferencial de ciclo de trabajo
'condicion inicial
portb = $00
cambio = 0 'seleccion de pines / colores
duty = 2000 'ciclo de trabajo
loop:
select case cambio 'variable de cambio de color
case 0 'VERDE
for x = 1 to 5 'cinco ciclos o pulsos del mismo tau
OUT_GREEN = 1
OUT_RED = 0
OUT_BLUE = 0
pauseus duty 'ciclo alto
OUT_GREEN = 0
OUT_RED = 0
OUT_BLUE = 0
pauseus 2000 - duty 'ciclo bajo
next x 'en total demora 5*2ms = 10ms
duty = duty - c 'incremento del ciclo de trabajo de 10 en 10
if duty <= 0 then
duty = 2000 'veces realizadas del Bucle FOR
cambio = 1
endif '2000/10 = 200 * (tiempo del FOR) = 2 seg
case 1 'ROJO
'* Name : UNTITLED.BAS *
'* Author : Oscar Carrion P. *
'* Notice : Copyright (c) 2016 Electrolife SAC *
'* : All Rights Reserved *
'* Date : 28/12/2016 *
'* Version : 1.0 *
'* Notes : LUCES LED DE 7 COLORES *
'* : *
'****************************************************************
'configuracion de puertos
cmcon = 7 'convierte a digitales los comparadores ANALOG en 16f628
trisa = $00 'puerto A como entrada
trisb = $00 'Puerto B como entrada
OUT_GREEN var portb.0
OUT_RED var portb.1
OUT_BLUE var portb.2
cambio var byte
duty var word
x var byte
id var bit
c con 10 'diferencial de ciclo de trabajo
'condicion inicial
portb = $00
cambio = 0 'seleccion de pines / colores
duty = 2000 'ciclo de trabajo
loop:
select case cambio 'variable de cambio de color
case 0 'VERDE
for x = 1 to 5 'cinco ciclos o pulsos del mismo tau
OUT_GREEN = 1
OUT_RED = 0
OUT_BLUE = 0
pauseus duty 'ciclo alto
OUT_GREEN = 0
OUT_RED = 0
OUT_BLUE = 0
pauseus 2000 - duty 'ciclo bajo
next x 'en total demora 5*2ms = 10ms
duty = duty - c 'incremento del ciclo de trabajo de 10 en 10
if duty <= 0 then
duty = 2000 'veces realizadas del Bucle FOR
cambio = 1
endif '2000/10 = 200 * (tiempo del FOR) = 2 seg
case 1 'ROJO
y así sucesivamente hasta completar todos los colores...
El árbol de navidad terminado se muestra a continuación
Y en pleno funcionamiento en el siguiente video:
Felices fiestas!!!
No hay comentarios:
Publicar un comentario