En este tutorial quiero mostraros como se desarrolla de la forma más simple un "mensaje mágico". Y
lo primero es saber
¿Qué es un mensaje mágico?
Habrán visto alguna vez un mecanismo por el cual un rotor gira un circuito con una columna de leds.
Si no vean este vídeo.
http://www.youtube.com/watch?v=-6JnAxTXApw
El artefacto se emplea como medio publicitario en tiendas con, cada vez, más frecuencia. Esto es
debido a:
-Un coste más reducido que el de las pantallas de leds aun conservando la funcionalidad que
desempeñan estas.
-Una mayor atracción al cliente, mayor impresión.
¿Como funciona?
Estos aparatos son diseñados aprovechando la POV (Persistencia ocular visible). La cualidad del ser
humano de almacenar temporalmente las imágenes asta la captación de otra nueva imagen permite
engañar al cerebro en casos en los que los eventos transcurran más rápido que dicha actuación.
Aplicado esto en el conjunto de un foco y movimientos se denomina efecto estroboscópico.
En la imagen podréis como según va acelerando el movimiento se va viendo el mensaje. Como se
aprecia el circuito enciende la columna de led barriendo las columnas de nuestras letras y formando
en mensaje.
De esta manera podemos conseguir dos efectos en nuestros mensajes:
[fig.1]- El modo es encender las columnas seguidamente asi se formaran franjas en vez de pixeles.
Fig.1
[fig.2]- Entre columna y columna hay un intervalo de tiempo en el que los leds permanecen
apagados.
Fig.2
Una vez visto, de forma general, su funcionamiento se procederá a su construcción.
El PROYECTO I: Control de leds
MATERIALES
Antes de nada, y teniendo la idea de nuestro proyecto clara se elegirán los componentes necesarios.
Para su realización necesitaremos una columna de leds. En este caso de 8 leds rojos difusos. Con sus
respectivas resistencias, de 100 Ohm.Importante!! La alimentación contará en una tensión de 3V
aplicada por las dos pilas tipo CR2032. Esto es debido a que el circuito va a estar en rotación y no
podemos alimentarlo con una fuente externa a la placa. El PIC que utilizaremos será el 16F88. Tiene
memoria suficiente para un millar de caracteres. A el chip se le añade un cristal de 4Mhz y dos
condensadores de 22pF. Un pulsador para el MCLR, y un interruptor para encender y apagar el
circuito.
Materiale
s
2x Condensador Cerámico 22pF
1x Cristal de Cuarzo 4Mhz
1x PIC16F88
1x Pulsador
1x Resistor 10k 1/4W
1x Interruptor
1x Portapilas 2Pilas CR2032
8x Resistor 100 Ohm 1/4W
8x LED Rojo Difuso
CIRCUITO
En cuando al circuito, el esquema es el siguiente:
El resultado será algo así. El rotor, el eje irá entre el porta-pilas y el resto del
circuito.Importante!! La columna de leds debe encontrarse en el radio de revolución.
EL CÓDIGO
Se expone el código en PIC BASIC de los dos modos vistos.
Modo de Franjas Código:
'--------------------------------------------------------'
'* MENSAJES DE FRANJAS, ESTILO 1 *'
'* MENSAJE: CIRCUS *'
'--------------------------------------------------------'
Define CONF_WORD = 0x2f61 'IMPORTANTE!!! Esta es la configuración'
Define CONF_WORD_2 = 0x3ffc 'de bits del dispositivo.'
AllDigital
TRISB = 00000000 'Se configura puerto B de salida'
PORTB = 00000000 'Se pone a cero e puerto'
Dim lt As Byte 'Se establece la varible donde se almacenaranlas
letras'
Dim i As Byte 'Se establece la varible indice para el bucle for'
loop:
For i = 0 To 5 'Se inicia el primer bucle para formar la primera
letra'
lt = LookUp(124, 130, 130, 130, 68, 0), i 'Se establece la letra,
C'
PORTB = lt 'Se transmite el dato de la variable al puerto'
WaitMs 15 'IMPORTANTE!! Este será el datos que nos aporte el ancho
de las franjas en el código'
Next i 'Se cierra el buble y se comienza una nueva letra'
For i = 0 To 5
lt = LookUp(130, 130, 254, 130, 130, 0), i
PORTB = lt
WaitMs 15
Next i
For i = 0 To 5
lt = LookUp(254, 144, 144, 152, 102, 0), i
PORTB = lt
WaitMs 15
Next i
For i = 0 To 5
lt = LookUp(124, 130, 130, 130, 68, 0), i
PORTB = lt
WaitMs 15
Next i
For i = 0 To 5
lt = LookUp(252, 2, 2, 2, 252, 0), i
PORTB = lt
WaitMs 15
Next i
For i = 0 To 5
lt = LookUp(116, 146, 146, 146, 76, 0), i
PORTB = lt
WaitMs 15
Next i
For i = 0 To 5
lt = LookUp(4, 114, 2, 114, 4, 0), i
PORTB = lt
WaitMs 15
Next i
Modo de pixeles
Código:
'--------------------------------------------------------'
'* MENSAJES DE PIXELES, ESTILO 2 *'
'* MENSAJE: CIRCUS *'
'--------------------------------------------------------'
Define CONF_WORD = 0x2f61 'IMPORTANTE!!! Esta es la configuración'
Define CONF_WORD_2 = 0x3ffc 'de bits del dispositivo.'
AllDigital
TRISB = 00000000 'Se configura puerto B de salida'
PORTB = 00000000 'Se pone a cero e puerto'
Dim lt As Byte 'Se establece la varible donde se almacenaranlas
letras'
Dim i As Byte 'Se establece la varible indice para el bucle for'
loop:
For i = 0 To 10 'Se inicia el primer bucle para formar la primera
letra'
lt = LookUp(124, 0, 130, 0, 130, 0, 130, 0, 68, 0, 0), i 'Se
establece la letra, C'
PORTB = lt 'Se transmite el dato de la variable al puerto'
WaitMs 15 'IMPORTANTE!! Este será el datos que nos aporte el ancho
de las franjas en el código'
Next i 'Se cierra el buble y se comienza una nueva letra'
For i = 0 To 10
lt = LookUp(130, 0, 130, 0, 254, 0, 130, 0, 130, 0, 0), i
PORTB = lt
WaitMs 15
Next i
For i = 0 To 10
lt = LookUp(254, 0, 144, 0, 144, 0, 152, 0, 102, 0, 0), i
PORTB = lt
WaitMs 15
Next i
For i = 0 To 10
lt = LookUp(124, 0, 130, 0, 130, 0, 130, 0, 68, 0, 0), i
PORTB = lt
WaitMs 15
Next i
For i = 0 To 10
lt = LookUp(252, 0, 2, 0, 2, 0, 2, 0, 252, 0, 0), i
PORTB = lt
WaitMs 15
Next i
For i = 0 To 10
lt = LookUp(116, 0, 146, 0, 146, 0, 146, 0, 76, 0, 0), i
PORTB = lt
WaitMs 15
Next i
For i = 0 To 10
lt = LookUp(4, 0, 114, 0, 2, 0, 114, 0, 4, 0, 0), i
PORTB = lt
WaitMs 15
Next i
Goto loop
Adjunto el esquema y el diseño en proteus
Por ahora esto es todo, en breves subiré la segunda parte-->El
PROYECTO II: Control del motor
Para alguna duda consúltenme, al igual que si desean mejorar o
informarme de algún error del proyecto no duden en hablar
conmigo.
Espero que les sea de su agrado y que puedan aprender en el
proyecto.
UN GRATO SALUDO A TODOS LOS FOREROS Y A ARIEL QUE YA ME
RESOLVIÓ ALGUNA DUDA^^
[/size][/font]
FXLEDCIRCUS.DSN (117.19 KB - descargado 727 veces.)
FXLEDCIRCUS.LYT (28.71 KB - descargado 567 veces.)
« Última modificación: Agosto 04, 2011, 12:44:21 por Felixls » En línea
juancho PIC12F
Desconectado
Sexo:
Mensajes: 108
Re: [TUTORIAL]Proyecto "MENSAJE
MÁGICO" « Respuesta #1 : Julio 17, 2010, 02:23:46 »
Hola muchachos muchos gusto por saludarlos, mis
felicitaciones y agradecimientos a colety que ha
publicado este tema y claro a Ariel sin él no
estuvieramos aquí
Gracias, cuando consiga donde imprimir mis hojitas
para pbc, me pondré a practicarlo
saludos...
En línea
Ariel Global
Moderator
dsPIC
Desconectado
Sexo:
Mensajes:
10729
Re: [TUTORIAL]Proyecto "MENSAJE
MÁGICO" « Respuesta #2 : Julio 17, 2010, 04:16:30 »
Excelente trabajo!
Creo que muchos amigos del foro se van a construir
el suyo en los próximos dias
Gracias por compartirlo.
Saludos.
En línea
“Si cualquier habilidad que aprende un niño será obsoleta antes
de que la use, entonces, ¿qué es lo que tiene que aprender? La
respuesta es obvia:
La única habilidad competitiva a largo plazo es la
habilidad para aprender“. Seymour Papert
Leon Pic Moderador
dsPIC
Desconectado
Sexo:
Mensajes: 5508
Cumulonimbus
Re: [TUTORIAL]Proyecto "MENSAJE
MÁGICO" « Respuesta #3 : Julio 17, 2010, 05:51:35 »
Excelente colety. Muy bien explicado
En línea
Jesús dijo, yo soy el CAMINO, la VERDAD y la VIDA, nadie llega
al PADRE si no es por mi.
HJ Moderador
dsPIC
Desconectado
Sexo: Mensajes: 5535
Re: [TUTORIAL]Proyecto "MENSAJE
MÁGICO" « Respuesta #4 : Julio 17, 2010, 05:53:36 »
Muy bueno,felicitaciones
En línea
"si te lo dicen se te olvida, si lo lees lo aprendes; pero si lo
haces realmente lo entiendes"
"Cuando llegue la inspiración, que me encuentre trabajando"
[Pablo Picasso]
Suky **----- ^^ -----
-**
Moderador
Re: [TUTORIAL]Proyecto "MENSAJE
MÁGICO" « Respuesta #5 : Julio 17, 2010, 06:53:00 »
dsPIC
Desconectado
Sexo:
Mensajes: 5442
Con Qt...
Se agradece el aporte al foro! Muchas gracias!
Saludos!
En línea
Micros-Designs[/ur]
ralcesar PIC12F
Desconectado
Sexo:
Mensajes: 271
Re: [TUTORIAL]Proyecto "MENSAJE
MÁGICO" « Respuesta #6 : Julio 18, 2010, 09:16:16 »
Me encanto la explicación Ahora no tengo
excusas para no hacerme el propio, a la espera de la
2da parte.
En línea
Ingenieria Electronica
xtremrex PIC10F
Desconectado
Mensajes: 23
Re: [TUTORIAL]Proyecto "MENSAJE
MÁGICO" « Respuesta #7 : Julio 18, 2010, 12:46:12 »
Muy bueno este tema y la explicacion detallada,
estaremos aguardando mas detalles ,
En línea
eldire PIC10F
Desconectado
Mensajes: 3
Re: [TUTORIAL]Proyecto "MENSAJE
MÁGICO" « Respuesta #8 : Agosto 02, 2010, 05:15:59 »
Me parece un proyecto bastante atractivo,
esperamos mas esplicaciones . Gracias
En línea
Leon Pic Moderador
dsPIC
Desconectado
Sexo:
Mensajes: 5508
Cumulonimbus
Re: [TUTORIAL]Proyecto "MENSAJE
MÁGICO" « Respuesta #9 : Agosto 02, 2010, 09:34:25 »
Cita de: eldire en Agosto 02, 2010, 05:15:59
esperamos mas esplicaciones
¿¡Qué!?
Está muy bien explicado y no hay nada más por
agregar. Si uno le quiere dar algún efecto, ya pasa
por uno mismo tomar las riendas del asunto y
descubrirlo o averiguarlo.
En línea
Jesús dijo, yo soy el CAMINO, la VERDAD y la VIDA, nadie llega
al PADRE si no es por mi.
вoяяe .::. µPraxis .::.
Amigo de
uControl
PIC18F
Desconectado
Sexo: Mensajes: 1328
Pяobando C30
Re: [TUTORIAL]Proyecto "MENSAJE MÁGICO" « Respuesta #10 : Agosto 02, 2010, 04:51:47 »
La verdad que estuvo excelente, justamente en
estas vacaciones dimos un pequeño curso de
microcontroladores unos amigos y yo a niños de
preparatoria y secundaria y les enseñamos a
construir esta barita, la verdad que quedaron
fascinados.
Te quedo excelente Colety.
En línea
La electrónica es simple, puedes aprenderla en 100 simples
lecciones, una lección cada año.
eldire PIC10F
Desconectado
Mensajes: 3
Re: [TUTORIAL]Proyecto "MENSAJE
MÁGICO" « Respuesta #11 : Agosto 02, 2010, 05:04:27 »
Me parece que no me explique, el tema es
que estoy esperando la segunda parte para ver
como hace el control del motor, como saber a
cuantas rpm debe girar etc. Un saludo y perdon por
el malentendido.
En línea
Islagrande Moderador
PIC18F
Desconectado
Sexo:
Mensajes: 1118
Re: [TUTORIAL]Proyecto "MENSAJE
MÁGICO" « Respuesta #12 : Agosto 02, 2010, 06:06:07 »
Muchas gracias colety por compartir tan buen
material. Te felicito por la presentación y explicación
Saludos desde La Habana
En línea
"Rectificar es de diodos"
Leon Pic Moderador dsPIC
Desconectado
Sexo:
Mensajes: 5508
Cumulonimbus
Re: [TUTORIAL]Proyecto "MENSAJE
MÁGICO" « Respuesta #13 : Agosto 02, 2010, 06:15:19 »
Cita de: eldire en Agosto 02, 2010, 05:04:27
Me parece que no me explique, el tema es que estoy
esperando la segunda parte para ver como hace el control del
motor, como saber a cuantas rpm debe girar etc. Un saludo y
perdon por el malentendido.
No, está bien eldire, te has explicado bien pero yo te
había entendido mal.
No te preocupes que el error fue mío.
Saludos.
« Última modificación: Agosto 02, 2010, 10:26:58
por Leon Pic » En
línea
Jesús dijo, yo soy el CAMINO, la VERDAD y la VIDA, nadie llega
al PADRE si no es por mi.
remramo
n2007 Amigo de
uControl PIC18F
Desconect
ado
Sexo:
Mensajes:
1052
Re: [TUTORIAL]Proyecto "MENSAJE MÁGICO" « Respuesta #14 : Agosto 02, 2010, 09:18:02 »
Hola gente hace un tiempo estuve experimentando con
esto pero... el motor no me convencio :s estoy
pensando en utilizar un ventilador de cabina telefonica,
creo que son cooler.. o si no son muy parecidos.
el control de las rpm las podes hacer por infrarojo es
decir en la plaqueta que lleva los led y el pic colocas un
diodo infrarrojo emisor y dos receptores. luego en la
base donde esta anclado el motor colocas un diodo
receptor y dos transmisores.
Plata con led (que gira) Led
Transmisor Led Receptor 1 Led
receptor2
l
/\ /\
l
l l
\/
l l
Placa base (que regula las Led
Receptor Led Emisor 1 Led
Emisor 2
Vamos a la placa de los led el transmisor siempre
emite entonces el led receptor de la placa base recibe
una señal por cada vez que pasa el diodo que esto
sucedera cada una vuelta.
Ahora los led receptores de la placa con led se deben
colocar a 180º uno del otro (en dos extremos
opuestos) entonces la placa de los led tiene dos puntos
de refencia para escribir.
Sabiendo lo que tarda en dar una vuelta la placa
tenemos los tiempos para escribir y con los dos led
tenemos puntos de referencia para escribir!!
bueno espero se entienda lo que quise exponer!!
cualquier cosa consultan... me queme bastante la
cabeza con esto!! pero... termine desertando por el
motor!!
agradecería alguien me de una mano con respecto a
que motor utilizaron con buenos resultados pero una
cosa... que sea un motor comercial facil de conseguir!!
jajaja, nada raro como el de la licuadora!! jajaja
Un abrazo Ramón!!
RPM del motor)