Está en la página 1de 6

prctica

cubo led

Luminaria 3D
Por Jerry Jacobs

Matriz LED programable con 125 LED


Una matriz LED bidimensional no es algo espectacular. La matriz que presentamos aqu, no obstante, es de otro calibre. Cinco de estas matrices fueron apiladas una encima de otra. Lo que ha resultado en una verdadera matriz 3D en la que cada uno de sus LED puede encenderse y apagarse independientemente.

Caractersticas tcnicas
125 LED en disposicin 3D Microcontrolador ATmega32 con frecuencia interna de 1 MHz Conector ISP de 10 contactos para programar 5 transistores BC337 para el control de los niveles 25 transistores BC547 para el control de las columnas

slo para Windows, sino tambin para Linux- y Mac OS X.

Funcionamiento
La suposicin de que para 125 LED se necesitaran grandes cantidades de cables puede engaar. Mediante el control por multiplexacin se reduce enormemente la alambrada de espino artificial. Slo un nico cable es suficiente para activar o desactivar los 25 LED que conforman una matriz bidimensional parcial. A los 25 LED de un nivel como ste, les bastan exactamente 26 lneas. Cada cinco LED superpuestos de los cinco niveles conforman una columna conjunta que, de esta manera, precisa nicamente de tan slo

Los LED intermitentes siempre llaman la atencin. En la mayora de los casos se trata sencillamente de un par de LED o como mximo de una pantalla de LED plana. Un cubo LED es algo realmente diferente. En este caso se trata de una pantalla tridimensional compuesta de LED que pueden ser controlados de manera individual.
Tabla 1. Control de niveles y columnas Puerto A Bit 7 PA7 Columna 8 Puerto B Bit 7 PB7 Columna 25 Puerto C Bit 7 PC7 Columna 16 Puerto D Bit 7 PD7 Columna 24 Bit 6 PD6 Columna 23 Bit 5 PD5 Bit 6 PC6 Columna 15 Bit 5 PC5 Bit 6 PB6 Bit 5 PB5 Bit 6 PA6 Columna 7 Bit 5 PA5

En contraste con el cubo borg, se trata aqu de electrnica terrestre convencional con incorporacin de un un microcontrolador AVR. Estos controladores son econmicos, fciles de conseguir, y adems, tambin existen para ellos suficientes herramientas de desarrollo con cdigo abierto. Estos ltimos existen no

Bit 4 PA4 Columna 5 Bit 4 PB4 Nivel 5 Bit 4 PC4 Columna 13 Bit 4 PD4 Columna 21

Bit 3 PA3 Columna 4 Bit 3 PB3 Nivel 4 Bit 3 PC3 Columna 12 Bit 3 PD3 Columna 20

Bit 2 PA2 Columna 3 Bit 2 PB2 Nivel 3 Bit 2 PC2 Columna 11 Bit 2 PD2 Columna 19

Bit 1 PA1 Columna 2 Bit 1 PB1 Nivel 2 Bit 1 PC1 Columna 10 Bit 1 PD1 Columna 18

Bit 0 PA0 Columna 1 Bit 0 PB0 Nivel 1 Bit 0 PC0 Columna 9 Bit 0 PD0 Columna 17

Columna 6

Columna 14

Columna 22

64

elektor, electronics worldwide - 12/2008

una lnea. Para encender un LED especfico por separado, se conecta el nivel correspondiente a la tensin positiva de alimentacin y se selecciona la respectiva columna. El cubo est organizado en 5 niveles y 25 columnas. De ello se deducen lgicamente 30 lneas, en lugar de 126 lneas independientes para los 125 LED. Con una frecuencia de 1 MHz, el circuito alcanza una frecuencia de imagen de 39 Hz. Cada 1024 periodos se incrementa un contador (tambin denominado controlador). Cuando este contador alcanza en su estado el valor 5, se dispara automticamente el interruptor y se reestablece el valor del contador. Este interruptor se encarga tambin de transferir el contenido del buffer a un nivel LED. Una frecuencia de 1 MHz se obtine una frecuencia de nivel de 195 Hz. Dado que el cubo tiene cinco capas LED, ste se reproduce completamente 39 veces por segundo.

la electrnica pone automticamente el contenido del buffer en el respectivo patrn LED. La rutina de interrupcin ya mencionada se encarga de ello. El buffer se organiza de forma multidimensional de acuerdo con el cubo, de tal forma que las imagenes se pueden dibujar plsticamente en el buffer. Interrupcin La funcin de formateo de imagenes de la rutina de interrupcin consiste en la correcta reproduccin del contenido del bfer 39 veces por segundo. En consecuencia, cada bit en el bfer es asignado inequvocamente a un LED El nivel de los bits decide entonces si un LED se enciende o no. El usuario debe escribir los datos de la imagen con funciones especiales en el buffer para poder generar una imagen. Instrucciones grcas de bajo nivel Las rutinas de bajo nivel estn concebidas de forma tal que se puedan lograr

Software
El software est escrito en C y puede compilarse con AVR-GCC [1]. Cuenta con una amplia documentacin que puede adems consultarse en un sitio web para ms informaciones. La documentacin ha sido generada con Doxygen [2]. Buffer Se utiliza un buffer para darle forma a una imagen en el cubo de forma menos compleja. Como usuario, solamente es preciso manejar hbilmente los bits, y

efectos individuales en el cubo. En la Tabla 1 se puede observar la conexin exacta de cada bit con el puerto, columna de LED, etc. Con esta tabla se pueden generar tambin directamente muestras sin refinamientos como desplazamientos o mscaras de bit. Las funciones de bajo nivel se encuentran definidas en el archivo draw.h. Con ellas es posible controlar niveles, columnas, filas, etc. Veremos a continuacin un par de ejemplos sobre la manera como se pueden utilizar estas funciones. Control de una fila en un nivel determinado:

set_row(ROW_1, NIVEL_1); clear_row(ROW_1, NIVEL_1); toggle_row(ROW_1, NIVEL_1);


Las funciones para controlar una columna:

set_column(COLUMN_1, ON); set_column(COLUMN_1, OFF);

12/2008 - elektor, electronics worldwide

65

K1
3 1 2 D1 1 3 C2 100n 100n C3 C1 470u 25V 2

IC1 7805

+5V

1N4001

COL25
R55 150R

COL1
R7 150R

COL2
R8 150R

COL3
150R

COL4

COL5

COL6

COL7

COL8

R9

R10

R11

R12

R13

R14

150R

150R

150R

T30 T5 T2 T3

T4

T1

T6

T7

T8

T9

T10

150R

T11

T12

+5V
R1 R6 R2 330R 330R 330R 330R 330R R5 R4 R3 100k

LAY5 LAY2
R56 1k8

LAY4

LAY3

LAY1

+5V

R15 1k8

R16 1k8

R17 1k8

R18

R19

R20

R21

R22

1k8

1k8

1k8

1k8

K2
2 4 6 8 10 RST SCK MISO GND 1 3 5 7 9 MOSI

1 2 3 4 5 6 7 8 14 15 16 17 18 19 20 21 9

AVCC

AREF

VCC

1u 100V

PB0 (XCK/T0) PB1 (T1) PB2 (AIN0/INT2) PB3 (AIN1/OC0) PB4 (SS) PB5 (MOSI) IC2 PB6 (MISO) PB7 (SCK) PD0 (RXD) PD1 (TXD) PD2 (INT0) PD3 (INT1) PD4 (OC1B) PD5 (OC1A) PD6 (ICP) PD7 (OC2)

PA0 (ADC0) PA1 (ADC1) PA2 (ADC2) PA3 (ADC3) PA4 (ADC4) PA5 (ADC5) PA6 (ADC6) PA7 (ADC7)

40 39 38 37 36 35 34 33

ATmega32-16PC

PC0 (SCL) PC1 (SDA) PC2 (TCK) PC3 (TMS) PC4 (TDO) PC5 (TDI) PC6 (TOSC1) PC7 (TOSC2) XTAL2 XTAL1 RESET GND GND

22 23 24 25 26 27 28 29

11

31

12

R39 1k8 1k8

R40

R41 1k8

R42 1k8

R43 1k8

R44 1k8

R45 1k8

13

R46 1k8

R23 1k8

R24 1k8

R25 1k8

R26

R27

R28

R29

R30

1k8

1k8

1k8

1k8

COL17

COL18
R48 150R

COL19
R49 150R

COL20
R50 150R

COL21
R51 150R

COL22
R52 150R

COL23
R53 150R

COL24
R54 150R

COL16
R31 150R

COL15
R32 150R

COL14
150R

COL13

COL12

COL11

1k8

COL10

COL9

cubo led

R47 150R

R33

R34

R35

R36

R37

150R

150R

150R

150R

T22

T23

T24

T25

T26

T27

T28

T29

T1 ... T5 = BC337 T6 ... T30 = BC547

T21

T20

T19

T18

T17

T16

T15

prctica

080355 - 11

150R

Imagen 1. Todos los LED son controlados mediante un microcontrolador AVR. La gran cantidad de transistores se encargan de proveer la tensin necesaria.

C4

30

10

32

1k8

150R

+5V

+5V

+5V

+5V +5V

T13

R38

T14

66

elektor, electronics worldwide - 12/2008

En estas funciones se utilizan denominaciones como ON, OFF y COLUMN_1. Se trata aqu de constantes con valores fijos. Por ejemplo: ON tiene 1 y OFF tiene 0 como valor. Algunas de estas funciones se pueden emplear una tras otra para crear una figura determinada. Otras explicaciones se encuentran disponibles en el cdigo fuente que se puede descargar gratuitamente desde el sitio web de Elektor.

PB4 R6

PB3 R5

PB2 R4

PB1 R3

PB0 R2

LAY1

PA0 R15

T1

LAY2
T2

COL1
R7

LAY3
T3

T6

LAY4

Hardware
La electrnica se puede montar completamente con componentes convencionales y, a pesar ello, la placa de circuito impreso resultante es bastante compacta. Podemos utilizar un adaptador de red comercial corriente con una salida de 9V capaz de suministrar 600 mA para alimentar el circuito. El regulador IC1, un 7805, estabilizar la tensin aplicada al circuito. El diodo D1 lo protege de los efectos negativos de polarizaciones inversas.

Imagen2. Esta imagen muestra el recorrido que sigue la corriente entre los LED medios de la primera columna.

Con los transistores T1 a T5 se conecta la tensin de alimentacin de 5V a los cinco niveles. Con los transistores T6 a T30 se controlan las columnas poniendo los LED

Imagen3. El aspecto de la cara superior de la placa de circuito impreso es bastante claro.

080355 - 12

T4

LAY5

a tierra y cerrando de esta manera el circuito (vase Imagen1 e Imagen2). La corriente que circula entre los LED depende de la diferencia de potencial

T5

+5V

12/2008 - elektor, electronics worldwide

67

prctica

cubo led

Lista de materiales
Resistencias: R1 = 100k R2 a R6 = 330 R7 a R14, R31 a R38, R47 a R55 = 150, vase texto R15 a R30, R39 a R46, R56 = 1k8 Condensadores: C1 = 470F/25V

C2,C3 = 100nF C4 = 1F/100V Semiconductores: IC1 = 7805 IC2 = Atmega32 D1 = 1N4001 T1 a T5 = BC337 T6 a T30 = BC547 125 LED

Adems: Conector macho 2x5 contactos, paso 2,54 mm Zcalo para IC Conector frontal SIL 4 x 10 contactos, paso 2,54 mm Disipador de calor para TO-220 con 5C/W (IC1) Distanciador hexagonal 4 x M3x5 de 10 mm de longitud Enchufe hembra para adaptador de red Placa de circuito impreso ref. 080355-1

aplicada sobre ellos, de la tensin de alimentacin menos la diferencia de potencial colector-emisor de dos transistores y de las 25resistencias de columnas. De esta manera, los valores de resistencia se calculan as: R = (5V-2*UCE-ULED)/20mA

Por lo tanto, en los LED rojos, verdes y amarillos, los 150 indicados en el esquema de circuitos para R7 a R14, R31 a R38 y R47 a R55. En los LED blancos seran 82 o incluso mejor 68. Para programar el controlador del cubo se puede emplear la interfaz ISP en el K2.
(080355)

Enlaces:
[1] AVR-GCC-Toolchain: -Para Windows: http://winavr.sourceforge.net - Para Mac: http://www.obdev.at/products/ avrmacpack [2] Doxygen: http://www.doxygen.org

Montaje
Paso 1
Primero se montan los distanciadores debajo de la placa de circuito impreso y luego se corta a medida un pedazo de papel para sostener bien los LED en los huecos.

Paso 2
Luego se colocan cinco LED en la fila superior con el nodo (conexin ms largo) arriba y con el ctodo (conexin ms corta) abajo. Despus se dobla el primer LED hacia la izquiera y se sigue con el segundo LED, que se suelda fijamente en el primero. De la misma manera se contina tambin con el tercero, cuarto y quinto LED. As se tiene, tenemos lista una fila. Para cada superficie son necesarias cinco de estas filas. Despus se prosigue de la misma manera con las filas 2 a 5. Cuando estn listas las cinco filas se unen los nodos doblados con dos hilos verticales.

Paso 3
Una vez estn listos los cinco niveles se puede soldar todo para formar una construccin en cubo. Esto se consigue colocando un nivel encima de la placa de circuito impreso y doblando las 25 columnas aproximadamente 3mm despus de los nodos del siguiente nivel. La segunda capa se coloca entonces encima de la primera. Las capas se sueldan en las esquinas conservando la misma distancia.

68

elektor, electronics worldwide - 12/2008

Sobre el autor
Jerry Jacobs, nacido en 1989 en Heerlen (Pases Bajos) es estudiante de Telecomunicacin en el ROC (Leeuwenborg College en Sittard, Pases Bajos). Su fascinacin por la informtica y la electrnica le ha acompaado durante bastante aos. Aparte de ello, es un apasionado del sistema Linux. El proyecto aqu descrito es el trabajo presentado como culminacin de su periodo de prcticas en el laboratorio de Elektor.

Paso 4
Ahora, instalaremos los componentes en la placa de circuito impreso. Hay que prestar atencin para no intercambiar los transistores BC 337 y BC 547. Para completar el montaje, montaremos el regulador de tensin con su correspondiente radiador.

Paso 5
A continuacin se unen los niveles individuales con los transistores respectivos. T1 se encarga del nivel inferior y T5 del superior. Para ello es adecuado el hilo de cobre estaado.

Paso 6
Para finalizar se pone el firmware en el microcontrolador. Junto con el cdigo abierto se puede descargar igualmente el archivo hexadecimal ya compilado desde el sitio web de Elektor. En el mismo sitio se encuentra tambin un enlace para realizar el pedido de la placa de circuito impreso.

12/2008 - elektor, electronics worldwide

69

También podría gustarte