Sei sulla pagina 1di 5

Interfaz de Control de Iluminacin con Dispositivos FPGA

Roberto Hassell
Estudiante, Universidad Tecnolgica de Panam roberto.hassell@gmail.com El control de iluminacin se llev a cabo, en su etapa de hardware, a travs de un dispositivo FPGA, que serva como decodificador y controlador de las diversas luminarias del modelo.

Resumen- Este documento describe los aspectos bsicos por medio del cual se logr el control de iluminacin a travs de una interfaz de software. Se explican a grandes rasgos la forma en que se codifican las diversas opciones que el usuario puede modificar (color, intensidad) y cmo son enviadas y decodificadas a un dispositivo de lgica programable, que realiza las comparaciones pertinentes y aplica los cambios elegidos por el usuario.

Joaqun Valencia
Estudiante, Universidad Tecnolgica de Panam joaquinvnlc@gmail.com

Palabras claves- interfaz, iluminacin, lgica programable,


FPGA, VHDL.

1. Introduccin
En la mayora de las aplicaciones en donde se desea controlar la iluminacin, usualmente el proceso se lleva a cabo con muy poca automatizacin. Adems, se utilizan bulbos o lmparas incandescentes que han demostrado tener poca eficiencia energtica y una elevada produccin de calor. El objetivo de este proyecto era dotar a la tarea de controlar y modificar la iluminacin de un lugar de cierta automatizacin que permitiera al usuario controlar diversos aspectos como el color y la intensidad de ciertas luces. Adems, se deseaba permitirle programar ciertos eventos con horas y fechas y de tener esquemas predefinidos que pudiera aplicar con facilidad. Otra de las motivaciones del proyecto surge de la creciente popularidad y utilizacin que tienen los diodos emisores de luz, ms ampliamente conocidos como LED. El auge de su xito se debe en gran medida a su bajo consumo energtico, al costo relativamente bajo de estos, y a que su manipulacin es ms sencilla en comparacin con otros dispositivos utilizados en iluminacin. Este proyecto se enfoca en aprovechar ciertas ventajas que ofrece con respecto a otras tecnologas de iluminacin, como la diversidad de colores que hay disponibles, y la gran potencia lumnica que poseen los actuales LED.

La implementacin en software se llev cabo a travs de VHDL para la descripcin de los circuitos combinacionales y secuenciales, y de Visual Basic 2008, que permite la creacin de programas que sirven como interfaz al usuario para diversas aplicaciones. En este documento se detallan los procedimientos materiales utilizados, y se da una descripcin general del funcionamiento del sistema y de los resultados obtenidos, as como una serie de aspectos que se podran ampliar y de las conclusiones generales obtenidas.

2. Materiales
Una de las motivaciones iniciales del proyecto fue utilizar un dispositivo de lgica programable, debido a que la implementacin de los circuitos se lleva a cabo por medio de un lenguaje de descripcin en lugar de utilizar componentes fsicos. Adems, las tarjetas de desarrollo disponibles en el mercado poseen una gran cantidad de recursos adicionales. La tarjeta utilizada fue la Spartan 3E, de la compaa Digilent, ya que contaba con el puerto de comunicacin serial, que permite la comunicacin a travs del protocolo RS-232 con un ordenador u otro dispositivo. Para la implementacin fsica de las lmparas, se utilizaron LEDs ultrabrillantes debido a las propiedades lumnicas que presentan, como la alta potencia luminosa. Se fabric un modelo a pequea escala que estaba compuesto de dos mdulos o habitaciones principales, y en cada una de ellas se dispona de lmparas con los colores utilizados. Para las lmparas, se realiz el montaje de los LEDs sobre placas que permitieran su fcil montaje en el modelo.

Jornada de Actualizacin Tecnolgica 2011 Facultad de Ingeniera Elctrica

empleamos una velocidad de transmisin de 9600 bauds, 8 bits de datos, 2 bits de parada, y sin bit de paridad. La figura 2 nos ilustra el protocolo RS-232.

Figura 2. Protocolo RS-232 utilizado en la comunicacin entre el ordenador y la tarjeta de desarrollo 3.1.2 Codificacin. Una interfaz de usuario debe permitir hacer cambios en el sistema en todo el rango de aplicacin del mismo, empleando un lenguaje, que el usuario pueda entender fcilmente. En nuestro sistema hay tres parmetros bsicos, que pueden ser modificados por el usuario. Como se trata de un sistema de iluminacin estos parmetros son: la ubicacin de la lmpara, el color de las luces, y el nivel de brillo. Disponemos de dos localizaciones (mdulo 0, mdulo 1), cinco colores de luces (verde, azul, rojo, mbar, blanco), y cuatro niveles de brillo (apagado, bajo, medio, alto). Aprovechando los 8 bits de datos, que maneja el protocolo RS232, codificamos la ubicacin con un bit, el color de las luces con tres bits, y el nivel de brillo con dos bits. stos estn detallados en la Tabla 1. Tabla 1. Codificacin Color de las luces Nivel de brillo 0 1 Verde Azul Rojo mbar Blanco 000 001 010 011 100 Apagado Bajo Medio Alto 00 01 10 11

Figura 1. Modelo a pequea escala de los mdulos y de las lmparas de LEDs.

3. Implementacin
Este proyecto se basa en el control de luminarias LEDs a travs de un ordenador utilizando dispositivos FPGA. Se emplea una interfaz de usuario, desarrollada completamente en Visual Basic 2008, versin gratuita de este conocido lenguaje de desarrollo grfico de Microsoft. Entre las etapas de implementacin podemos mencionar, la interfaz de usuario, mdulo de comunicacin serial, decodificador de instrucciones, y mdulo controlador de las luces.

3.1. Interfaz de usuario


La interfaz de usuario se encarga de traducir a cdigos binarios, las acciones elegidas por el usuario, y posteriormente enviarlas al dispositivo FPGA. Esta consta esencialmente de dos etapas, comunicacin y codificacin. 3.1.1 Comunicacin. Cuando se desea intercambiar datos entre un ordenador, y un dispositivo FPGA la nica manera de hacerlo es a travs de la lgica binaria convencional. Por ser el lenguaje de comunicacin universal que entiende todos los dispositivos electrnicos digitales. Ya sea que estos se empleen para procesar datos, imgenes o voz. En nuestro caso particular deseamos poder enviarle al dispositivo FPGA una secuencia de bits y en base a esta ejecute acciones tales como, encender o apagar luces. No es fcil hacer esto a travs de un ordenador, sin la ayuda de algn software que nos lo permita. Es por esa razn que se desarrollo una aplicacin en Visual Basic 2008, que hace uso del protocolo de comunicacin serial RS-232 para enviar datos al dispositivo FPGA. En el cual

Ubicacin Modulo 0 Modulo 1

Cada vez que se cambia una configuracin en el sistema, el ordenador le indica al dispositivo FPGA, la ubicacin, el color de las luces y el nivel de brillo. Esto quiere decir que una instruccin completa tiene una longitud de 6 bits y debe ser adecuada al ancho de los bits de datos que son 8, este proceso da lugar al formato de instruccin. En la tabla 2 se presenta el formato del byte que es enviado al dispositivo FPGA y que posteriormente pasa a ser decodificado.

Jornada de Actualizacin Tecnolgica 2011 Facultad de Ingeniera Elctrica

Tabla 2. Formato de instruccin. Formato de instruccin 7 0 6 5 Mdulo 4 3 2 1 0

El dispositivo FPGA sirve como decodificador de las instrucciones que se le envan a travs de la interfaz. Para su descripcin, se utiliz el lenguaje VHDL. La entidad principal est compuesta de dos componentes bsicos: el de recepcin de los datos y el de control de las lmparas.

Colores de las luces

Nivel de brillo
Comunicacin serial UART FPGA Control de lmparas Decodificacin de instrucciones

Una vez codificada la instruccin es enviada al puerto de comunicacin serial, para posteriormente ser recibida y ejecuta por el dispositivo FPGA. En la figura 3 se presenta la interfaz de usuario en el computador, que le permite elegir las diferentes opciones que posteriormente sern enviadas a la tarjeta de desarrollo.

Figura 5. Esquema general del funcionamiento del dispositivo FPGA. El mdulo de comunicacin serial se encarga de tomar los datos recibidos a travs puerto y los entrega como un byte de datos. Cuando se detecta que hay un nuevo dato, el control de las lmparas se encarga de hacer la decodificacin. Se designa como lmpara a cada color individual. Cada una de estas lmparas realiza una comparacin de los datos recibidos para saber si le corresponde aplicar la nueva configuracin recibida o si debe ignorarla. En la siguiente figura se ilustra un mdulo, compuesto de cinco lmparas con los colores utilizados: blanco, rojo, verde, mbar y azul.

Figura 3. Interfaz de usuario. En la figura 4 se presenta el flujo que sigue el programa desarrollado en Visual Basic para enviar posteriormente los datos al dispositivo FPGA.

Usuario define opciones.

Codifica las instrucciones.

Envia las intrucciones a la tarjeta.

Figura 6. Esquema de un mdulo y de las lmparas que componen. Para decodificar las instrucciones, el control de lmparas divide el byte de datos recibido y analiza las diversas partes. Los bits 7 y 6 son bits que se dejaron libres con la posibilidad de poder ser utilizados en un futuro con un nmero mayor de mdulos. El bit 5 indica el mdulo. Los bits 4, 3 y 2 indican el color de la lmpara a la que se quiere aplicar la configuracin. Cuando se recibe un nuevo dato, estos son los bits que se analizan: se compara si el bit corresponde al mdulo y que el color

Figura 4.Flujo de las acciones de la interfaz.

3.2. Decodificacin y control en el dispositivo

Jornada de Actualizacin Tecnolgica 2011 Facultad de Ingeniera Elctrica

corresponde a la lmpara seleccionada. En caso de que esta primera comparacin coincida, se pasa entonces a una comparacin de intensidad. Las intensidades se indican por un nmero de dos bits, los bits 1 y 0, que indican cuatro posibles valores sobre una escala total. El efecto de intensidad variable se logra por medio del uso de la tcnica de PWM o modulacin de ancho de pulso. Esta nos permite especificar el ciclo de trabajo de una seal. El ciclo de trabajo indica que tanto tiempo una seal de voltaje se mantiene con un nivel de voltaje alto para un periodo dado. Para una seal con intensidad total, su ciclo de trabajo ser completo en periodo, mientras que una con intensidad media representa un ciclo de trabajo mucho menor. Cada lmpara posee un componente de PWM de 8 bits (256 niveles). Se us est cantidad ya que se quera que el cambio entre una intensidad y otra fuera suave, y que no ocurrieran cambios bruscos de iluminacin. Sin embargo, el decodificador asigna los ciclos de trabajo dependiendo de la intensidad. En la Tabla 3 se muestran los valores del ciclo de trabajo para cada intensidad. Tabla 3. Ciclos de trabajo para diferentes intensidades Intensidad Designacin Ciclo de trabajo 00 01 10 11 Apagado Medio bajo Medio alto Encendido completo 0/255 85/255 170/255 255/255

4. Resultados
En esta seccin se presentan los resultados de la implementacin tanto en software como fsica del proyecto. El objetivo principal, que consista en poder modificar las propiedades de iluminacin de un lugar a travs de una interfaz de software, fue logrado. Por medio de esta interfaz, un usuario puede decidir qu opciones quiere aplicar y estas sern codificadas y enviadas al sistema. Otro de los logros significativos fue podar dotar esta interfaz de otras opciones adicionales, como la posibilidad de que el usuario pueda programar ciertos eventos y darles prioridad a unos sobre otros. Adems, se aadi otra opcin de tener esquemas predefinidos para ciertas ocasiones o ciertos juegos de luces, para que el usuario pudiera elegir una configuracin sin tener que especificar individualmente cada una de sus opciones. En la siguiente figura se observa la seccin del programa que permite al usuario elegir sus opciones individuales o elegir un conjunto predefinido de opciones.

Cuando hay un cambio de intensidad, el controlador de la lmpara funciona como un sistema de lazo cerrado, en donde se compara la intensidad hasta lograr la deseada. El controlador aumenta o disminuye en 1 el ciclo de trabajo y compara si la intensidad actual es la intensidad deseada. Si no coincide, espera una cierta cantidad de tiempo (125 s) y cambia nuevamente el ciclo de trabajo, hasta llegar a la intensidad deseada. Esto permite que el ojo humano perciba que hay un cambio suave de intensidad luminosa. En la siguiente figura se ilustra el aumento del ciclo de trabajo de una seal, para lograr el efecto mencionado anteriormente.

Figura 8. Interfaz de usuario para eleccin de opciones. En la siguiente figura podemos observar el funcionamiento del sistema, en conjunto con la interfaz del programa que la controla.

Figura 7. Aumento del ciclo de trabajo de una seal PWM.

Jornada de Actualizacin Tecnolgica 2011 Facultad de Ingeniera Elctrica

Figura 5. Interfaz de control y sistema de iluminacin. Uno de los resultados ms satisfactorios es que la combinacin de luces de diferentes colores y con diferentes intensidades permite que se logre una gran cantidad de efectos y nuevos colores. Esto es especialmente til en ciertas actividades que manejan iluminacin y tiene gran aplicacin comercial. En las siguientes figuras se observa una pequea muestra de los resultados obtenidos.

5. Conclusiones
Entre las contribuciones presentadas, aportamos el uso de una interfaz de control que le permita a un usuario comunicarse y configurar una aplicacin de manera sencilla. El control de iluminacin por medio de un computador permite que el usuario se enfoque ms en los resultados que desea obtener. El uso de iluminacin por medio de LEDs se hace cada vez ms comn, y con este proyecto, se explor su uso y las ventajas que presentan sobre otros tipos de iluminacin. Una de las dificultades que se presentaron en las etapas iniciales del proyecto era la descripcin de ciertas estructuras en VHDL, que es muy estricto a la hora de sintetizar circuitos que no presentan una descripcin adecuada. Otra de las opciones que se tena inicialmente, era la de realizar la interfaz en LabVIEW, sin embargo, nos percatamos de que Visual Basic estaba ms destinado al tipo de aplicacin que tena nuestro proyecto. Algunos de los objetivos de la propuesta que consideramos que logramos fue el de mejorar nuestras habilidades con ciertos lenguajes de programacin, y adems, el de utilizar el conocimiento de ciertas asignaturas para resolver una situacin que se puede presentar en nuestro campo laboral. Agradecimientos Agradecemos al profesor Oscar Ellis por los consejos y advertencias brindados sobre la eleccin del tema del proyecto, y tambin por el prstamo de los cables que permitieron la conexin entre el computador y la tarjeta de lgica programable. Referencias [1] R. Stevenson. Giving LEDs the key to replace the incandescent bulb. IEEE Spectrum, Ene. 2011. [2] A. Acaymo. Manual Puerto serie RS232 con PIC16F84A controlado por Visual C++ y Visual Basic 2008. [3] P. Mehta. VHDL Syntax Reference. 2003. Disponible en http://webdocs.cs.ualberta.ca/~amaral/courses/329/labs/V HDL_Reference.html

Jornada de Actualizacin Tecnolgica 2011 Facultad de Ingeniera Elctrica

Potrebbero piacerti anche