27 de mayo de 2016
TIMER MODERADOR DIGITAL INALÁMBRICO
MODERATOR DIGITAL TIMER WIRELESS
Wilmar Herney Sanchez Parra.
Resumen: Este articulo muestra el desarrollo de un prototipo de tablero digital
programable inalámbricamente desde un ordenador, el prototipo del dispositivo es
capaz de aceptar parámetros de tiempo (números enteros) de duración de una
exposición, conferencia o ponencia por medio de una interfaz grafica de usuario y
enviarlos inalámbricamente a una matriz LED ubicada a una distancia prudente, para
visualizar el tiempo designado de la sesión en manera decreciente. El tablero usa un
método de alertas por colores de manera que inmediatamente el tiempo comienza a
decrecer los dígitos son de color verde, luego serán color naranja y por ultimo color
rojo, los tiempos para cada alerta son programables desde la interfaz gráfica. Este
desarrollo permite tener un dispositivo útil para contabilizar el tiempo de una
presentación pública e informar al expositor, inconvenientes presentes en la mayoría
de eventos.
Palabras clave: Sesión, tiempo, decreciente, tablero, programable, inalámbrico
Abstract: This article shows the development of a prototype programmable wirelessly
digital board from a computer, the prototype of the device is able to accept parameters
duration of an exhibition, conference or presentation via a graphical user interface and
send them wirelessly to a LED array located at a safe distance, to display the
designated time of the session in decreasing manner. The board uses a method of
alerts colors so that immediately begins to decrease the time digits are green, then will
be orange and finally red, times are programmable for each alert from the graphical
interface.
Key Words: Session time, decreasing, board, programmable, wireless
estudiante de tecnología en electrónica. Universidad Distrital Francisco José de Caldas (Colombia). e-mail: [email protected]
1. Introducción
La comunicación entre la persona encargada de gestionar la programación del tiempo en una
sala de exposición y los ponentes, conferencistas o expositores, cuando ellos se encuentran
en pleno ejercicio de oradores, para dar aviso de finalización del tiempo a cada orador, es
muy importante si se tiene en cuenta que un adecuado manejo del tiempo le permite al
expositor dedicar más espacio a los contenidos significativos y no desviarse del tema central
que se desea transmitir, lo que permite un manejo adecuado del tema y una mejor
comunicación con los asistentes. Lo anterior no se da por completo ya que dicha
comunicación se hace por medio de señas y/o señales, para resolver esto, se desarrollo un
tablero digital programable inalámbricamente desde un ordenador, donde el orador pueda
observar constantemente el tiempo que le resta a su sesión. Así, con la implementación del
timer modelador digital se logrará una mejor utilización del tiempo, en un encuentro donde se
presentan varios expositores.
En el documento se muestra en el apartado 2 el marco teórico, en el 3 el desarrollo del
proyecto, en el 4 los resultados y en el 5 las conclusiones.
2. Marco Teórico
2.1 Redes inalámbricas
Una red inalámbrica es una red en la cual los medios de comunicación entre sus
componentes son ondas electromagnéticas. Sus principales ventajas son que permiten una
amplia libertad de movimientos, facilita la reubicación de las estaciones de trabajo evitando la
necesidad de establecer cableado y la rapidez en la instalación, sumado a menores costos
que permiten una mejor inserción en economías reducidas [1]. En la figura 1 se muestra un
mapa de tecnologías wireless donde se relacionan el ancho de banda y el alcance de
distintos tipos de comunicación wireless.
27 de mayo de 2016
Figura 1. Distintas tecnologías inalámbricas [2].
2.1.1. Características de las redes inalámbricas
Una red inalámbrica se caracteriza fundamentalmente porque no utiliza cables de
interconexión. En estas redes el dispositivo emisor se comunica con otros situados dentro de
su radio de acción, mediante la utilización de ondas electromagnéticas. Debido a la
eliminación de cables ofrece ciertas ventajas:
Movilidad: las estaciones de trabajo operadas con batería se trasladan con facilidad
de un sitio a otro.
Fácil instalación: mayor rapidez y simplicidad de instalación de los equipos.
Flexibilidad: permite el acceso a una red en entornos de difícil cableado.
Adaptabilidad: facilita realizar cambios frecuentes a la topología de la red sin ningún
traumatismo para el usuario y su escalabilidad [3].
Las redes inalámbricas según cobertura se clasifican WPAN (Wireless Personal Area
Network), WLAN (Wireless Local Area Network) y WWAN (Wireless Wide Area Network).En
las redes WPAN se encuentran productos comerciales como Bluetooth, con coberturas
máximas de 10 metros, que fueron diseñadas principalmente para sustituir las conexiones
cableadas de los periféricos. En las WLAN se tienen alcances hasta de 100 metros, allí esta
Wi-Fi y en las WWAM, que puedan lograr coberturas de hasta 50 kilómetros, están los
productos WiMAx [1].
A continuación en la tabla 1 se muestra una comparación entre las principales características
de varias tecnologías inalámbricas.
Nombre de la tecnología
Zigbee Módem de móvil Wi-fi bluetooth
Estándar de la tecnología
802.14.4 GSM/GPRS/CDMA
/1xRTT
802.11b 802.15.1
Enfoque de aplicaciones
monitoreo y control
Área Amplia Voz y Datos
Web, correo electrónico ,
vídeo
Establecer conexiones con poco gasto de
energía.
Memoria
necesaria
4 KB – 32 KB 16 MB+ 1 MB+ 250kB+
Duración de la batería
(días)
100-1000 1-7 5-5 1-7
tamaño de la red
2^(6) 1 32 7
máxima velocidad de datos (Kb/s)
20 - 250 64-128+ 11000+ 720
rango de transmisión (
metros )
1-100+ 1000 1-100 1-10+
Aspectos de uso confiabilidad, costo
Alcance, calidad velocidad
Flexibilidad
Costo y comveniencia
Tabla 1. Comparación entre las principales características de algunas tecnologías inalámbricas [2].
27 de mayo de 2016
2.2. Módulos inalámbricos
Estos módulos permiten la comunicación de información entre dos o varios puntos sin la
necesidad del uso de cables, la información debe enviarse codificada mediante un protocolo
de comunicación y decodificada por un módulo receptor para poder obtener la información
de los datos que está siendo enviada [4].
2.2.1 Xbee módulos de radiofrecuencia
Los módulos XBee son dispositivos que integran un transmisor - receptor de ZigBee y un
procesador en un mismo módulo, lo que le permite a los usuarios desarrollar aplicaciones de
manera rápida y sencilla.
Zigbee es un protocolo de comunicaciones inalámbrico basado en el estándar de
comunicaciones creado por Zigbee Alliance para redes inalámbricas llamado
IEEE_802.15.4, este es un estándar que define el nivel físico y el control de acceso al
medio de redes inalámbricas de área personal con tasas bajas de transmisión de datos (low-
rate wireless personal area network, LR-WPAN).
Zigbee permite que dispositivos electrónicos de bajo consumo puedan realizar sus
comunicaciones de manera inalámbrica y es especialmente útil para comunicación punto a
punto también en donde se involucren sensores en entornos industriales, médicos y, sobre
todo, domóticos.
En general se recomienda como un medio inalámbrico para la interconexión y comunicación
entre dispositivos, la figura 2 muestra la apariencia de un módulo XBee serie 2 [4]
Figura 2. Apariencia de un módulo XBee serie 2 [4].
2.2.2 Características en los módulos Xbee
Los módulos Xbee son económicos, capaces de proporcionar distintos tipos de
comunicación (punto a punto, estrella, mesh, cluster tree) y fáciles de utilizar. Algunas las
características que más se destacan son:
Buen Alcance: hasta 300ft (100 mts) en línea vista para los módulos Xbee y hasta 1
milla (1.6 Km) para los módulos Xbee Pro.
9 entradas/salidas con entradas analógicas y digitales.
Bajo consumo <50mA cuando están en funcionamiento y <10uA cuando están en
modo sleep.
Interfaz serial.
65,000 direcciones para cada uno de los 16 canales disponibles. Se pueden tener
muchos de estos dispositivos en una misma red.
Fáciles de integrar.
2.3. Interfaz gráfica de usuario
La interfaz gráfica de usuario, conocida también como GUI es un programa informático que
actúa de interfaz de usuario, utilizando un conjunto de imágenes y objetos gráficos para
representar la información y acciones disponibles en la interfaz. Su principal uso consiste en
proporcionar un entorno visual sencillo para permitir la comunicación con el sistema operativo
de una máquina o computador. En la figura 5 se encuentra una forma eficaz de llevar a cabo
la realización de una interfaz. En el proceso de diseño de una interfaz de usuario se pueden
distinguir cuatro fases o pasos fundamentales:
1. Reunir y analizar la información del usuario
2. Diseñar la interfaz de usuario
27 de mayo de 2016
3. Construir la interfaz de usuario
4. Validar la interfaz de usuario.
2.3.1 Diseño de la interfaz de usuario
En esta fase se definen los objetivos de usabilidad del programa, las tareas del usuario, los
objetos y acciones de la interfaz, los iconos, vistas y representaciones visuales de los
objetos, los menús de los objetos y ventanas.
2.3.2 Construcción de la interfaz de usuario.
Es importante realizar un prototipo previo, una primera versión del programa que se realice
rápidamente y permita visualizar el producto para poderlo probar antes de codificarlo
definitivamente.
2.3.3 Validación de la interfaz de usuario. Se deben realizar pruebas de usabilidad del
producto, a ser posible con los propios usuarios finales del mismo. Es importante, en suma,
realizar un diseño que parta del usuario, y no del sistema [12].
Figura5. Implementación de GUI [4].
2.4 Aplicación de Python para la creación de GUI’S
El lenguaje de programación Python es ampliamente usado y bastante recomendado para la
creación de GUI’s ya que ha dedicado tiempo en el desarrollo y enriquecimiento permanente
de herramientas enfocadas a dicho tema, este es el caso de las herramientas que reúne el
módulo Tkinter presente en todas las versiones de Python.
3. Desarrollo del Proyecto
3.1. Diagrama de bloques para la arquitectura del timer moderador digital
A continuación, en la figura 6, se muestra el diagrama de bloques dedicado a implementar el
timer moderador digital de tiempo.
Figura6. Diagrama de bloques. Elaboración propia del autor.
27 de mayo de 2016
Para lograr que el orador introduzca los parámetros de tiempo para la duración de su
exposición, conferencia o ponencia, fue necesario incluir el bloque recepción de parámetros,
donde dichos parámetros son captados por medio de la interfaz grafica para así hacer uso
del siguiente bloque, el bloque de transmisión, en este bloque se hace uso de los módulos de
radiofrecuencia Xbee previamente configurados para realizar una comunicación punto a
punto de manera serial haciendo uso del protocolo rs232. Una vez los parámetros son
recibidos por el microcontrolador ubicado en el bloque visualización de parámetros este hace
la lectura y asignación de los datos para ser visualizados en la matriz led e iniciar el conteo
regresivo teniendo en cuanta el método de semaforización propuesto para motivar al orador
a ser cuidadoso del tiempo dedicado a su sesión.
3.1.1. Recepción de parámetros (números enteros)
Para la recepción de parámetros se optó por usar el lenguaje de programación Python
que combina potencia con una sintaxis muy clara y cuenta con herramientas dedicadas
específicamente a la creación de GUI’s y comunicaciones, con lo cual se simplifica en gran
medida la generación de una interfaz grafica de usuario que cumpla con los objetivos
planteados para el desarrollo del timer moderador digital de tiempo.
Bloque interfaz gráfica: Este bloque provee al usuario una GUI amigable realizada
en el entorno de desarrollo integrado de python y el conjunto de herramientas del
módulo Tkinter el cual se considera un estándar para la interfaz gráfica de usuario
(GUI) para Python. También se hizo uso del módulo PySerial que gestiona la
comunicación de caracteres a través de puertos seriales (físicos o virtuales) presentes
en un ordenador, este bloque está diseñado para permitir al usuario acceder los
parámetros de tiempo de duración y alertas de tiempo de la sesión al sistema
Bloque lectura de parámetros: Una vez el usuario ha estipulado los parámetros de
tiempo que desea, son captados por un algoritmo de lectura desarrollado en Python
con el propósito de interpretarlos en forma de caracteres y disponerlos para ser
enviados.
3.1.1.2 Apariencia de la interfaz grafica de usuario
En la figura 7 se muestra la interfaz gráfica realizada en Python para el timer
moderador digital de tiempo
Figura7. GUI para el timer moderador digital de tiempo. Elaboración propia del autor.
3.1.2. Identificación del protocolo de comunicación
La comunicación serial es un protocolo muy común para comunicación entre dispositivos
que se incluye de manera estándar en prácticamente cualquier computadora. La mayoría de
las computadoras de escritorio incluye mínimo un puerto seriales RS-232. Y la
implementación en computadoras portátiles es ampliamente usada y de fácil utilización.
La universalidad del protocolo de comunicación rs232 y el hecho de que no es necesaria una
comunicación en red ni en malla, hace que el uso de este protocolo resulte adecuado para el
envío de los parámetros (números enteros) que se trabajan en este proyecto.
27 de mayo de 2016
3.1.3. Transmisión
Los módulos de radiofrecuencia implementados para la transmisión son los XBee serie 2,
debido a que permiten una comunicación fiable y simple entre microcontroladores,
ordenadores, sistemas, y prácticamente con cualquier dispositivo que cuente con un puerto
serie, también soporta comunicaciones del tipo Punto a punto y multipunto.
Estos módulos son fabricados por Digi internacional quien proporciona a sus consumidores el
software XCTU que facilita la configuración de direccionamiento de los módulos XBee
necesaria para obtener cualquier tipo de comunicación, el tipo de comunicación depende de
los requerimientos del proyecto.En este caso la configuración de los módulos XBee ha sido
concebida para obtener una configuración punto a punto.
Bloque módulo envío de parámetros: Una vez que los bits de configuración del
Timer se encuentran en el puerto serie son tomados por el módulo Xbee que está
físicamente conectado al puerto mencionado. Este modulo se encuentra configurado
en modo coordinador y la comunicación se realiza de manera transparente (AT) hacia
el modulo recepción de parámetros. En la figura 8 se muestra la configuración para el
módulo coordinador, se puede ver el identificador de la red que es AB, el parámetro
DH (Destination Address High) que corresponde a 0013A200 para la serie 2 de todos
los módulos XBee y el parámetro DL (Destination Address Low) que corresponde al
identificador del modulo al cual será enviada o del cual será recibida la información,
este identificador es único para cada módulo XBee fabricado por Digiti, y en este caso
es 40DC7E8C.
Figura8. Configuración para módulo XBee de transmisión en XCTU. Elaboración propia del autor.
Bloque módulo recepción de parámetros: Este módulo se encuentra configurado
como Router con el objetivo de tomar los datos enviados por el módulo envío de
parámetros y luego ser captados por el microcontrolador PIC. La configuración en
XCTU para el módulo XBee de recepción se muestra en la figura 9, nuevamente se
puede ver el identificador de la red que es AB, el parámetro DH (Destination Address
High) que corresponde a 0013A200 para la serie 2 de todos los módulos XBee y el
parámetro DL (Destination Address Low) que corresponde al identificador del modulo
al cual será enviada o de del cual será recibida la información, este identificador es
único para cada modulo XBee fabricado por Digiti, y en este caso es 40E429AC.
27 de mayo de 2016
Figura9. Configuración para módulo XBee de recepcion en XCTU. Elaboración propia del autor.
3.1.4. Visualización de parámetros
Microcontrolador: El microcontrolador utilizado ha sido el PIC18F4550, debido a su
capacidad de memoria de programa flash de 32 Kb, lo cual es un factor a tener en
cuenta cuando se implementan matrices con gran número de LED’s debido a que el
estado de cada LED (0-1) se almacena en la memoria flash del microcontrolador. Otro
factor importante es que este PIC trabaja a una velocidad de 48 MHz, por lo que no
debemos preocuparnos demasiado cuando aplicamos los métodos de visualización
activa. En el microcontrolador se han dispuesto rutinas y funciones donde se indica
que tareas debe realizar primeramente para la lectura del bus de datos y
posteriormente la visualización de los mismos.
Bloque de lectura de parámetros: Este bloque está conformado netamente por
pseudocódigo, en él, se declaran rutinas para la lectura de la trama que viene
estructurada desde la recepción de los datos por parte de Python y pasa por los
bloques transmisión y recepción de datos, para la asignación de contenido dispuesto a
ser enviado al bloque de visualización.
Bloque de visualización de parámetros: Para la visualización se han colocado 4
matrices LED de 8 X 8 de manera consecutiva para lograr una matriz LED de
dimensión 8 X 32 donde se realiza la visualización de los parámetros de tiempo
dedicados a la sesión del orador.
Cuando el orador asigna un tiempo no mayor a una hora, en la matriz LED se
dispondrá a visualizar cuatro dígitos de los cuales los primeros dos de izquierda a
derecha serán los minutos en seguida separados por dos puntos los dígitos
correspondientes a los segundos. Caso distinto cuando el orador asigna un tiempo
mayor a una hora pues esta vez los primeros dos dígitos corresponderán a la hora
ingresada seguidos nuevamente por dos puntos y los dígitos correspondientes a los
minutos. En ambos casos los dos puntos encienden y apagan intermitentemente cada
segundo.
3.1.5. Diseño del prototipo
Para la construcción del prototipo se utilizo madera de balzo debido a su bajo costo y
la posibilidad de usar herramientas no muy complejas para su corte y dimensionado.
En las Figuras 10, 11 y 12 que se presentan a continuación se muestran las
dimensiones de la estructura prototipo para el proyecto en diferentes vistas, como lo
son vista frontal , vista trasera , vista lateral derecha e izquierda respectivamente.
27 de mayo de 2016
Figura 10. Vista frontal de las dimensiones del prototipo, Elaboración Propia del autor.
Figura 11. Vista trasera de las dimensiones del prototipo, Elaboración Propia del autor.
Figura 12. Vista lateral derecha e izquierda de las dimensiones del prototipo, Elaboración Propia del autor.
4 Resultados
Como resultado se logro elaborar el prototipo de un dispositivo apto para ser usado como
Indicador del tiempo restante asignado a un orador en exposiciones conferencias y/o
ponencias, el prototipo cuenta con la capacidad de ser programado para advertir al orador
cuando este se encuentra en pleno ejercicio.
El dispositivo es capaz de ser programado de manera inalámbrica con el tiempo total
asignado a la sesión y además mostrar dos alertas de tipo visual, las alertas se consiguen
cambiando de color a los dígitos mostrados con el objetivo de estimular al orador a sacar el
mejor provecho a su actividad.
Con el fin de constatar la efectividad del prototipo este fue sometido a tres pruebas que se
consideraron importantes, las pruebas realizadas constan de:
1) Distancia máxima a la cual puede ser programado el prototipo
2) Alcance de visibilidad de los dígitos
3) La visualización según el entorno donde sea usado el timer.
A continuación se describirá lo observado en las pruebas.
Para la primera prueba la distancia máxima a la cual pudo ser programado el prototipo llego
hasta los noventa metros en campo abierto con una vista directa entre el ordenador y en
prototipo, y una distancia de 30 metros en áreas interiores donde intervienen paredes
cableado y diferentes obstáculos.
27 de mayo de 2016
La segunda y la tercera prueba están ligadas por la intensidad de iluminación en el entorno
donde se encuentre el dispositivo, en el sistema internacional la unidad de intensidad de
iluminación es el lux (lx), cuando el prototipo se encuentra en un entorno donde la intensidad
de iluminación está por debajo de 1.400 lx el alcance de visibilidad de los dígitos está entre
los 0 metros y los 9 metros, cuando es superada esta intensidad lumínica en el entorno el
alcance de visibilidad de los dígitos va desde los 0 centímetros hasta los 15 centímetros.
En la figura 10 se presenta el aspecto físico del timer moderador digital inalámbrico en su
versión prototipo.
Figura13. Aspecto físico del timer moderador digital (prototipo). Elaboración propia del autor.
5 Conclusiones
Las afectaciones en cuestión de visibilidad que sufre la matriz LED por la intensidad
de iluminación presente en el entorno donde sea usado, es provocada por el tiempo
mínimo con el que se encienden los led’s al momento de implementar el método de
visualización activa en la matriz, la frecuencia se ha optimizado para rozar el margen
en el que el ojo humano podría notar un parpadeo, de tal manera que la duración de
encendido sea lo más prolongada posible con lo que se consiguió mayor iluminación,
sin embargo la implementación del prototipo en zonas con más de 1.400 lx resulta
ineficaz.
El uso de los módulos XBee resulto un tanto excesivo debido a que a 90 metros la
programación del prototipo es eficaz sin embargo la probabilidad de que una persona
logre ver adecuadamente los dígitos de en la matriz LED a esa distancia es muy baja.
En un primer momento para disponer del manejo de la matriz de 8 X 32 se utilizaron
dos demultiplexores binarios de 4 bit’s de referencia 74154 TTL, estos dispositivos
carecen de conexión en cascada por lo que exigían una gran extensión de código lo
cual es perjudicial porque emplea demasiada memoria, para usar de una mejor
manera los recursos del microcontrolador se optó por implementar convertidores de 8
bit’s seriales a paralelos de referencia 74164 los cuales son de menor tamaño, menor
costo y cuentan con conexión en cascada, reduciendo considerablemente las líneas
de código y empleando menor memoria.
Referencias
[1] H. J. E. Blanco, D. lilia C. Tibaquira, and M. L. T. Castañeda, Aplicaciones de
comunicaciones inalambricas. Bogota D.C: Editorial UD, 2013, pp. 50–55.
[2] A. Engst and Fleisman glen, Introduccion a las redes inalambricas, 1st
[3] W. Lee, S. Hwang, M. Kwon, S. Lee, and J. Kim, “SoC design of remote terminals for
wireless telemetry system,” IEEE Int. SOC Conf. 2004. Proceedings., pp. 355–358.
[4] ¿Que es Xbee?, [en línea] Último acceso 27/04/2016 Disponible en:
http://tecnologicobj12.blogspot.com.co/2011/09/que-es-xbee.html
[5] D. benchimol, Microcontroladores funcionamiento , programaciony aplicaciones
practicas, 1ra ed. Buenos Aires, p. 192.
[6] M. Pr, C. Para, and P. Manos, Microcontroladores.
[7] M. Enrrique and F. M. Manuel Microcontroladores PIC: sistema integrado para el auto
aprendizaje 1st.
[8] Microcontroladores PIC y sus variedades [en línea] Último acceso 27/04/2016 Disponible
en:https://microcontroladoressesv.wordpress.com/microcontroladores-pic-y-sus-
27 de mayo de 2016
variedades/
[9] Manual-del-Taller-Introduccion-al-Microcontrolador-PIC18F4550 [en línea] Último acceso
27/04/2016 Disponible en:http://www.uv.mx/personal/jemedina/files/2010/07/Manual-
del-Taller-Introduccion-al-Microcontrolador-PIC18F4550.pdf
[10] Microchip, Data sheet PIC 18f4550, 39632.pdf
[11] TodoElectrodo PIC 18F4550 [en línea] Último acceso 27/04/2016 Disponible en:
http://todoelectrodo.blogspot.com.co/2013/02/pic-18f4550.html
[12] I. Pablo and A. Sznajdleder, Java a fondo.