Desarrollo de comunicación inalámbrica por USB para módulos electrónicos de adquisición de datos



Documentos relacionados
En este capítulo se presenta el marco teórico sobre las redes inalámbricas que utilizan el

Capítulo 5. Cliente-Servidor.

CAPÍTULO 1 Instrumentación Virtual

4. Programación Paralela

TELEOPERACIÓN DE UN ROBOT MOVIL CON MANEJO DIFERENCIAL A BAJO COSTO

CAPITULO 3: SISTEMAS ADICIONALES PARA EL CENTRO DE LLAMADAS DE EMERGENCIA

TIPOS DE CONEXIÓN A INTERNET

CAPÍTULO III SISTEMA PAGING. breves mensajes a una terminal portátil. Este sistema es conveniente para personas que

DISEÑO E IMPLEMENTACIÓN DE UNA TARJETA DE ADQUISICIÓN DE DATOS PARA EL LABORATORIO DE TELECOMUNICACIONES DE LA FIEC.

Adaptadores de Interfaz de Red. Ing. Camilo Zapata Universidad de Antioquia


Laboratorio III de Sistemas de Telecomunicaciones Departamento de Telemática

UNIVERSIDAD TECNICA DEL NORTE FACULTAD DE CIENCIAS ADMINISTRATIVAS Y ECONÓMICAS COMPUTACIÓN I

Metodologías de diseño de hardware

Capítulo 5. Análisis del software del simulador del sistema de seguridad

Arquitectura de sistema de alta disponibilidad

Tema 3. TOPOLOGÍAS INALÁMBRICAS. Alejandro Carrasco Muñoz Jorge Ropero Rodríguez

Fundamentos de Ethernet. Ing. Camilo Zapata Universidad de Antioquia

DESCRIPCION DEL SITEMA MASTER.

TECNOLOGÍA 3G ACOSTA VENEGAS ALBERTO AGUILAR SALINAS GUILLERMO MIRANDA ELIZALDE CARLOS VENEGAS HURTADO JUAN

Dispositivos de Red Hub Switch

Wireless Sensor Network in a nuclear facility: A technology aplication proposal

INTRODUCCION. Ing. Camilo Zapata Universidad de Antioquia

Capa Física. Ing. Camilo Zapata Universidad de Antioquia

En el presente capítulo se describe la programación del instrumento virtual y cómo

Redes de Computadores I

RECOMENDACIÓN UIT-R F (Cuestión UIT-R 125/9) a) que el UIT-T ha realizado estudios y elaborado Recomendaciones sobre la RDSI;

UNIVERSIDAD DE SAN CARLOS DE GUATEMALA FACULTAD DE INGENIERIA ESCUELA DE MECANICA ELECTRICA LABORATORIO DE ELECTRONICA PENSUM COMUNICACIONES 3

TELECOMUNICACIONES Y REDES

Sistema de marketing de proximidad

INFORME Nº GTI INFORME TÉCNICO PREVIO DE EVALUACIÓN DE SOFTWARE

Introducción a la Firma Electrónica en MIDAS

LINEAMIENTOS ESTÁNDARES APLICATIVOS DE VIRTUALIZACIÓN

Implementación de algoritmos genéticos paralelos de grano burdo en redes locales de computadoras. Resumen

ELECTRONICA ESTUDIO MODULO TRASMISOR-RECEPTOR DE RF A RS232 BIDIRECCIONAL Clave: 875

Capitulo 3. Desarrollo del Software

Anexo B. Comunicaciones entre mc y PC

PRUEBAS DE SOFTWARE TECNICAS DE PRUEBA DE SOFTWARE

HARDWARE DE SISTEMA AUTOMÁTICO DE RASTREO DE VEHÍCULOS MEDIANTE TECNOLOGÍAS GPRS Y GPS

Centro Universitario de Ciencias Exactas e Ingenierías DIVISION DE ELECTRONICA Y COMPUTACION

USB (Universal Serial Bus)

Unidad 3: Extensión de LAN: módems. conmutadores. Redes y Comunicaciones

BUSES GRUPO 8 Miguel París Dehesa Ricardo Sánchez Arroyo

SERVIDOR WEB PARA ACCESO EN TIEMPO REAL A INFORMACIÓN METEOROLÓGICA DISTRIBUIDA

NOTA DE APLICACIÓN AN-P002. Programando Wiring con NXProg

Sistema de Captura Electrónica

REGISTRO DE PEDIDOS DE CLIENTES MÓDULO DE TOMA DE PEDIDOS E INTEGRACIÓN CON ERP

Trabajo 3. PROTOCOLOS DE COMUNICACIÓN SERIAL INDUSTRIALES Edwin Gilberto Carreño Lozano, Código:

COMUNICACIONES. Medios para transmitir señales: Conexión por lazo de corriente 4 20 ma. Transmisión analógica: corriente proporcional a una magnitud

El grupo de trabajo IEEE ha definido tres clases de WPANs que se

[ ] introducción. Sistema de información para el análisis de servicios prestados en redes Ad hoc. resumen. Aura Rosa Beltrán A. Gerardo Gutierrez S.

2 Sea una unidad de disco duro de brazo móvil con las siguientes características:

Capítulo 5 Programación del algoritmo en LabVIEW

Protocolo PPP PPP Protocolo de Internet de línea serie (SLIP)

UNIDADES FUNCIONALES DEL ORDENADOR TEMA 3

3. FUNCIONAMIENTO DE LA FUNCIONES TXD Y RXD 4. EJEMPLO DE ENVÍO DE SMS DESDE EL PLC 5. EJEMPLO DE RECEPCIÓN DE SMS EN EL PLC

Tema: Configuración de red AD-HOC

CELERINET ENERO-JUNIO 2013 ESPECIAL

Casa Inteligente. Descripción general del Sistema

UNIVERSIDAD TECNICA DEL NORTE

1. Instala servicios de configuración dinámica, describiendo sus características y aplicaciones.

MANUAL DE USUARIO CONVERSOR TCP/IP A RS232 Y TCP/IP A RS485

Los mayores cambios se dieron en las décadas de los setenta, atribuidos principalmente a dos causas:

1. Topología de BUS / Linear Bus. 2. Topología de Estrella / Star. 3. Topología de Estrella Cableada / Star Wired Ring. 4. Topología de Árbol / Tree

EL MODELO DE ESTRATIFICACIÓN POR CAPAS DE TCP/IP DE INTERNET

INGENIERIA EN MICROCONTROLADORES. Protocolo RS-485. Introducción

CAPITULO I El Problema

Contenido Derechos Reservados DIAN - Proyecto MUISCA

CAN BUS Controller Area Network:

Workflows? Sí, cuántos quiere?

CAPÍTULO I. Sistemas de Control Distribuido (SCD).

UNIVERSIDAD AUTÓNOMA DEL CARIBE PROCEDIMIENTO DE ATENCIÓN DE INCIDENTES Y REQUERIMIENTOS PARA EQUIPOS DE CÓMUPUTO Y/O PERIFÉRICOS GESTIÓN INFORMÁTICA

OBLIGACIONES DE HACER INSTITUCIONES PÚBLICAS (INSTITUCIONES EDUCATIVAS, HOSPITALES Y CENTROS DE SALUD) DECRETO 2044 DE 2013

Sistema de control de equipos electrónicos vía Internet mediante dispositivos móviles

Efectos de los dispositivos de Capa 2 sobre el flujo de datos Segmentación de la LAN Ethernet

Procedimiento de Sistemas de Información

Movilidad. Pasa demasiado tiempo fuera de la oficina? Solución móvil Dynamics NAV

Capitulo I. Introducción

INTRODUCCION A LOS SISTEMAS R.F.I.D.

No se requiere que los discos sean del mismo tamaño ya que el objetivo es solamente adjuntar discos.

Interoperabilidad de Fieldbus

Gestión de la Configuración

Capítulo 1. Introducción

AV Tecnología

GUÍA DE ESTUDIO TEMA 9. MODELO OSI DE REDES INDUSTRIALES

Líneas de Comunicación Remota

PROCESAMIENTO DIGITAL DE IMÁGENES MEDIANTE EL USO DE UN FPGA Y LENGUAJE VHDL

MANUAL CÁMARA DE MOWAY

ATIENDE Registro de la atención de un cliente

Sistema de Monitoreo con Sensores Móviles usando Tecnología de Arquitectura Modular. Centro de Modelamiento Matemático Universidad de Chile

H 4.2.2: DESARROLLO DE UN SISTEMA DE CONTROL, MONITORIZACIÓN Y REGISTRO LOCALY REMOTO PARA EL SIRVE SIRVE

Diseño de un sistema de adquisición de datos de un micrófono utilizando una FPGA

INSTITUTO TECNOLÓGICO DE SALINA CRUZ

Proyecto Desarrollo Sistema Parking

CAMARAS DE VIGILANCIA PARA SITIOS DE CONSTRUCCIÓN USANDO INTERNET MÓVIL NUEVA SOLUCIÓN: MAYOR COBERTURA, MAYOR AUTONOMIA, MEJOR CONTROL.

AD a 24Vcc 100mA (1) SI SI SI 100 mw 1Km (2) 256 bytes AD a 24Vcc 500mA (1) SI SI SI 500 mw 3km (2) 256 bytes

Ingeniería de Software. Pruebas

Conceptos de redes. LAN (Local Area Network) WAN (Wide Area Network)

Tema 4. Gestión de entrada/salida

Capítulo 4: Arreglo Experimental para la Transmisión Inalámbrica de Señales de Televisión

Transcripción:

VII Congreso Internacional en Innovación y Desarrollo Tecnológico,. Desarrollo de comunicación inalámbrica por USB para módulos electrónicos de de datos J. H. Montesinos Marroquín, M. J. O. Pacheco Arteaga, J. González Arenas Resumen: En este trabajo se presenta el desarrollo de comunicación inalámbrica por USB para transferencia de información entre módulos electrónicos de de datos y una PC. El objetivo principal del enlace inalámbrico desarrollado es contar con una alternativa de comunicación que facilite la instalación, no requiera cables y permita incrementar la distancia del enlace de comunicación entre la PC y los módulos de. El sistema propuesto está integrado por un adaptador USB a radiofrecuencia conectado a la PC y por un módulo frecuencia con antena incluida conectado al módulo electrónico de. La operación del adaptador USB es controlada por un micro-controlador y el módulo frecuencia por un FPGA. La comunicación entre la PC y el módulo de utiliza un protocolo propietario de usuario basado en mensajes, donde el módulo de atiende las solicitudes de datos o ejecución de otras funciones en respuesta a peticiones o comandos enviados desde la PC. La red de comunicación utilizada es punto a multipunto. En este documento se describen los elementos de la comunicación inalámbrica propuesta, la implementación para el intercambio de datos entre PC y módulo de así como las pruebas y resultados obtenidos. Palabras Clave: transceptor, FPGA (Field Programmable Gate Array), VHDL (Hardware Description Language), USB (Universal Serial Bus) Abstract: In this work we present the development of USB wireless communication for data transfer between electronic data acquisition modules and PC. The main José Hugo Montesinos Marroquín hugo.montesinos@iie.org.mx, jose_hugommieee@yahoo.com.mx María Jojutla Olimpia Pacheco Arteaga (mjopa@iie.org.mx) Julio González Arenas juliogonzare@hotmail.com Instituto de Investigaciones Eléctricas Gerencia de Control e Instrumentación Reforma 113, Colonia Palmira, CP. 62490 Cuernavaca Morelos, México. purpose of the developed wireless connection is to have an alternative communication that makes installation easier, does not require wires and allows increasing the distance connection between the PC and the acquisition modules. The proposed system is integrated by an USB to RF adapter connected to the PC and a RF module with integrated PCB Antenna connected to the electronic data acquisition module. The USB adapter operation is controlled by a microcontroller and the RF module by a FPGA. The communication between the PC and the data acquisition module uses a proprietary protocol based on messages, in which the acquisition module attends the data requests or the execution of functions in response to commands sent from the PC. The used communications network is point to multipoint. This document describes the proposed wireless communication elements, the implementation for the data interchange between a PC and a data acquisition module as well as tests and results. Keywords: transceiver, FPGA (Field Programmable Gate Array), VHDL (Hardware Description Language), USB (Universal Serial Bus) Introducción Hoy en día los FPGAs permiten la implantación de sistemas complejos, cuyo hardware se adapta fácilmente para optimizar la realización de diferentes funciones a partir de módulos prediseñados y verificados. Por ello los FPGAs se utilizan cada vez más para desarrollar sistemas electrónicos complejos de control y de comunicaciones, que necesitan cambios de la función que realizan, no sólo en la fase de diseño sino también durante la vida útil [1]. Asimismo, el crecimiento acelerado de las tecnologías inalámbricas ha dado paso a la incursión de los FPGAs en tareas de control y manejo de datos vía inalámbrica. Podemos encontrar diversas aplicaciones como bancos de prueba para comunicación inalámbrica de datos multimedia, que mediante una interfase FPGA-subsistema, se controla la potencia de transmisión, códigos de dispersión, canales de 578 Pag. 1

frecuencia y tasa de datos [2], para la transmisión y recepción de audio e imágenes. También redes de sensores (redes ad hoc) para el monitoreo de diversos ambientes, incluyendo aquellos de difícil acceso, enfocados a tareas de automatización, domótica, aplicaciones militares, etc., han sido implementados con FPGAs [3]. De igual forma, los FPGAs han incursionado en el tratamiento de la información para equipo inalámbrico móvil de tercera generación (3G) que utilizan el acceso múltiple por división de código de banda ancha (WCDMA por sus siglas en inglés); y sobre los cuales se han implementado algoritmos enfocados a detección de multiples usuarios para reducir la interferencia de acceso múltiple logrando alta eficiencia [4]. A su vez se han utilizado FPGAs para la implementación y evaluación de esquemas de seguridad y encriptación del protocolo IEEE 802.11 [5]. Por otra parte, las interfaces de comunicación con PC para dispositivos de de datos son cada vez más rápidas, flexibles y permiten un acceso amigable al usuario. Un ejemplo es el Bus Serial Universal (USB por sus siglas en inglés), una interfaz asíncrona que en los últimos años ha permitido diseñar y construir una gran variedad de dispositivos que emplean este medio de comunicación. El desarrollo de comunicación inalámbrica utilizando como enlace un puerto USB para módulos electrónicos de de datos basados en un FPGA, como elemento central de procesamiento y control, es la propuesta que se describe en este artículo. La presente propuesta permite eliminar la conexión por cable USB entre los módulos de de datos y una PC, incrementar la distancia del enlace de comunicación y facilitar la instalación. Descripción de la solución propuesta El sistema propuesto para la comunicación inalámbrica entre una PC y módulos electrónicos de de datos, consiste en: a) Adaptador USB a radiofrecuencia o dongle conectado a un puerto USB de la PC. b) s con antena integrada conectados a cada módulo electrónico de de datos. La Figura 1 muestra el diagrama a bloques del sistema de comunicación propuesto. La PC gestiona el intercambio de información entre el dongle y los módulos de de datos bajo una red de comunicación punto a multipunto; donde un adaptador USB conectado a la PC puede intercambiar información hasta con 120 módulos de. Fig. 1 Representación de la de comunicación inalámbrica Adaptador USB a radiofrecuencia El adaptador USB a radiofrecuencia o dongle es un modulador/demodulador de USB a radiofrecuencia completo. Este adaptador está integrado por un microcontrolador PSoC (Programmable System on Chip) con interface USB Full Speed y un módulo de radiofrecuencia con antena integrada. Para la interconexión entre estos dos elementos se utiliza una interface SPI (Serial Peripheral Interface). La Figura 2 muestra el diagrama a bloques del adaptador USB a radiofrecuencia. Fig. 2 Adaptador USB a radiofrecuencia El módulo está diseñado para operar en la banda ISM (Industrial, Scientific and Medical @ 2.400 GHz 2.483 GHz). Contiene un transceptor a 2.4GHz, 1Mbps GFSK, búferes para paquetes de datos (16 bytes), controlador de banda base DSSS, indicador de potencia de señal e interfaz SPI para configuración y control del dispositivo. Tiene capacidad para 98 canales con un 1MHz de ancho de banda. El adaptador a radiofrecuencia está conectado directamente a un puerto USB de la PC y junto con otro módulo conectado al módulo de permiten la comunicación inalámbrica entre PC y módulo de. Pag. 2

radio con antena integrada El módulo es un modulador/demodulador SPI a radiofrecuencia. Está diseñado para operar en la banda ISM e incluye un transceptor a 2.4GHz, 1Mbps GFSK, búferes para paquetes de datos (16 bytes), controlador de banda base DSSS, indicador de potencia de señal e interfaz SPI para la configuración del dispositivo. Soporta 98 canales de un 1MHz de ancho de banda. Cuando se configura en modo de operación recibe, el dispositivo está activo y listo para recibir datos enviados a la misma tasa de transferencia configurada en el transmisor. Este módulo está interconectado y es controlado por el FPGA a través de la interface SPI. La Figura 3 muestra la arquitectura interna del módulo con antena integrada. Fig. 3 radio con antena integrada e interfaz SPI controlado por un FPGA electrónico de de datos El Comunicación Universal serial bus-fibra óptica (MCUF), es un módulo de de datos que aprovecha las ventajas de la conexión USB. Está diseñado para recibir información por fibra óptica proveniente de un equipo industrial para control y procesamiento de información, almacenarla en una memoria local y transferirla a una PC mediante un puerto USB 2.0. También es capaz de realizar el envío de la información en forma inversa. El dispositivo central de control y procesamiento del módulo electrónico de es un FPGA. El MCUF incluye una tarjeta de alta escala de integración basada en el FPGA Spartan3 de Xilinx ; el módulo de integración XEM3010-1500 es un modelo compacto de 75mm x 50mm de dimensión. Firmware El intercambio de información mediante mensajes entre la PC y el MCUF requiere el adaptador USB a radiofrecuencia del lado de la PC y el módulo en el MCUF. El objetivo del programa residente en el micro-controlador del adaptador o dongle es la de permitir la interacción entre las interfaces USB y SPI internas para enviar/recibir información por puerto USB y transmitirla/recibirla por el enlace, esto se ilustra en la Figura 4. Esta programación se desarrolló en lenguaje C y se utilizó la plataforma PSoC Designer TM. Fig. 4 Función del firmware del micro-controlador del adaptador de USB a radiofrecuencia La interface USB utilizada cuenta con un endpoint de entrada y uno de salida, ambos con tamaño de 64 bytes. Debido a que el búfer para transmisión/recepción de datos del módulo es de 16 bytes y el tamaño máximo de paquete que puede transferirse mediante USB es de 64 bytes, entonces, el programa debe realizar las siguientes tareas: Dividir los mensajes de 64 bytes enviados por la PC en paquetes pequeños de tal forma que la estructura de estos nuevos paquetes tengan el formato apropiado para cumplir con el protocolo propietario de comunicación para ser transmitidos hacia el MCUF a través del módulo y que además, su longitud no exceda el tamaño máximo del búfer de datos del módulo para su transmisión. A partir de los paquetes entrantes recibidos en el búfer del módulo crear nuevos paquetes con tamaño máximo igual al del endpoint de entrada de la interface USB. Estos paquetes también deben cumplir con el formato especificado en el protocolo de comunicación. Para la configuración y operación del módulo de radio integrado al MCUF se desarrolló la programación para el FPGA en lenguaje VHDL. En esta aplicación, el módulo es un dispositivo esclavo que responde a las peticiones solicitadas por el maestro o controlador, que es el FPGA, a través de una interfaz de comunicación SPI. El programa principal consiste en una máquina de estados finitos para la generación de las transacciones SPI y sub-módulos encargados de la secuencia de comandos de configuración (escritura a registros del módulo ), los cuales ejecutan las siguientes tareas: a) Inicialización del módulo ; b) Configuración y habilitación del modo de operación Pag. 3

recibe; y c) Configuración y habilitación del modo de operación transmite. Modo de operación recibe La función de este modo es habilitar al módulo para que opere en el estado de entrada o espera de paquetes válidos de información. El modo recibe es el estado normal de operación del módulo. La Figura 5 muestra el diagrama de flujo para la operación del modo recibe. INICIO INICIALIZACIÓN Configura registros para inicializar el módulo de radio MODO RECIBE Activa RX GO IRQ_RX Mensaje recibido No Modo de operación transmite La función de este modo de operación es ejecutar el envío o la transmisión de paquetes de información. Este modo de operación es activado para responder a las diferentes solicitudes realizadas desde la PC a través del dongle. En la Figura 6 se muestra el diagrama de flujo para la operación del modo transmite. Si hay una petición para transmitir datos, primeramente se cargan los datos al búfer de transmisión del módulo. Se activa la bandera TX GO y se inicia la transmisión de los datos. Como la transmisión involucra un determinado tiempo es necesario esperar hasta que finalice el proceso habilitando la interrupción de transmisión terminada. Al finalizar la transmisión se hace la verificación para determinar si ésta fue exitosa. Cuando no se efectuó una transmisión correcta de los datos se retransmite el paquete almacenado en el búfer, en caso contrario finaliza el modo transmite. Si se requiere enviar varios paquetes de datos se repite el proceso hasta terminar y regresar al modo recibe. Sí Mensaje con errores Sí Limpia Búfer Finaliza MODO RECIBE No Lee Búfer Almacena datos en Memoria Finaliza MODO RECIBE MODO TRANSMITE Fig. 5 Diagrama de flujo para el modo de operación recibe La primera tarea consiste en la inicialización del módulo donde se configura la tasa de transferencia de datos a transmitir, el canal a usar y la potencia de transmisión. Posteriormente se habilita el modo recibe a través de la bandera RX GO y se entra en un estado de escucha o espera de recepción de datos, controlado por una interrupción de paquete recibido. Los paquetes de datos recibidos se almacenan en el búfer de recepción del módulo y se hace una verificación para detectar si hubo errores y determinar si los datos se almacenan o se desechan. Si el paquete de datos recibido es correcto, entonces se concluye la recepción y se habilita la transmisión; en caso contrario se regresa al modo recibe. Fig. 6 Diagrama de flujo para el modo transmite Protocolo propietario de comunicación La comunicación entre los módulos de de datos y la PC consiste en un protocolo propietario de usuario basado en comandos. El objetivo principal de este protocolo es permitir la transferencia de datos entre a) La PC y el adaptador de USB o dongle y b) El radio del dongle y el módulo integrado al módulo de ; así como la ejecución de otras tareas o funciones. Pag. 4

Estructura de la trama de comunicación entre PC y adaptador de USB El protocolo propietario consiste de mensajes basados en comandos, la trama tiene una estructura específica que facilita la inclusión de nuevos comandos o funciones. Las peticiones o mensajes enviados desde la PC tienen el formato siguiente: IDM: Identificador del MCUF al que se solicita la petición (destino). Su tamaño es de un byte y sus valores válidos son de 0 a 120 (0x00 a 0x78). CMD: Identificador de comando, 1 byte. La Tabla 1 presenta la descripción y el valor asignado a los diferentes comandos usados en el protocolo. NBD: Número de bytes de datos enviados en el mensaje. Tamaño de 1 byte. DATOS: Datos contenidos en el mensaje. Tabla 1: Comandos del protocolo de comunicación PC y adaptador Comando Recibe datos Transmite datos Sincroniza reloj Reinicia módulo Lee estado de operación Identificador de comando (CMD) 0x01 0x02 0x03 0x04 0x0A El comando Transmite datos utiliza todos los campos de la trama de comunicación. Mientras que los otros comandos solamente requieren los 2 primeros campos. Para el mensaje con el comando Transmite, la longitud máxima de la trama de comunicación debe ser del tamaño del búfer del endpoint de salida, es decir de 64 bytes. Si el tamaño del mensaje a transmitir es mayor a esta longitud entonces el mensaje debe dividirse en bloques de información de 64 bytes, por lo tanto, a partir del segundo bloque su contenido incluye datos únicamente. Las respuestas o mensajes enviados a la PC tienen el formato siguiente: CMDA: Identificador de comando atendido. El MSB del comando solicitado se pone a 1 y se envía como respuesta para indicar que el comando fue atendido. REC: Reconocimiento de comando atendido, 1 byte. Su valor es 0x01 para indicar que la atención del comando se completo y ejecutó correctamente; en caso contrario, su valor es 0x00. PAR: Parámetros que indican el estado de operación del módulo de. Este campo es de 14 bytes e incluye la siguiente información: Registro de estado (2 bytes), Reloj de tiempo real (4 bytes), Número de datos almacenados en memoria (4 bytes) y Marca de sincronía (4 bytes). DATOS: Datos contenidos en el mensaje de respuesta. Para la respuesta al comando Recibe datos se requieren todos los campos de la trama de comunicación; a diferencia del resto de los comandos que solo utilizan los 2 primeros campos y el registro de estado (2 bytes) del tercer campo. En la respuesta al comando Recibe, la longitud máxima de la trama de comunicación debe ser del tamaño del búfer del endpoint de entrada, es decir de 64 bytes. Por lo tanto, si el tamaño de los datos a enviar es superior al búfer del endpoint entonces la respuesta debe dividirse en mensaje con bloques de información de 64 bytes. El primer bloque incluye todos los campos de la trama, a partir del segundo bloque su contenido es con datos únicamente. Estructura de la trama de comunicación entre adaptador USB y módulo frecuencia Las solicitudes de la PC son enviadas primeramente al adaptador USB y posteriormente retransmitidas por radio al módulo de. Para la transferencia de paquetes de datos entre los módulos frecuencia integrados al adaptador y al MCUF respectivamente, la trama de salida del protocolo de comunicación tiene el formato siguiente: IDM: Identificador del MCUF al que se solicita la petición (destino). Su tamaño es de un byte y sus valores válidos son de 0 a 120 (0x00 a 0x78). El MSB es el bit de paridad o código de verificación de errores y permite validar la calidad de la información. IDD: Identificador del dongle o adaptador de USB que solicita la petición (fuente). Su tamaño es de un byte y sus valores válidos son de 121 a 127 (0x79 a 0x7F). CMD: Identificador de comando, 1 byte. Los valores asignados son los mismos de la Tabla 1. Para atender el comando Recibe datos se requiere de comando complementario; por lo tanto este comando se divide en Recibe parámetros (0x01) y Recibe datos (0x05). Pag. 5

NBD: Número de bytes de datos enviados en el mensaje. Su tamaño es de 1 byte. DATOS: Datos contenidos en el mensaje. El número máximo de datos que pueden enviarse en un paquete es 12 porque el tamaño del búfer es de 16 bytes. Las respuestas recibidas en el módulo del adaptador USB tienen el formato siguiente: IDD: Identificador del dongle o adaptador de USB que solicita la petición. Su tamaño es de un byte y sus valores válidos son de 121 a 127 (0x79 a 0x7F). El MSB es el bit de paridad o código de verificación de errores y permite validar la calidad de la información. CMDA: Identificador de comando atendido, 1 byte. El MSB del comando solicitado se pone a 1 y se envía como respuesta para indicar que el comando fue atendido. EST1, 0: Registro de estado indicando la operación del MCUF, 2 bytes. La trama de comunicación tiene un formato especial para la atención de los comandos Recibe datos y Transmite datos. Para el caso Recibe datos se divide en la trama Recibe parámetros y Recibe datos. El formato de la trama Recibe parámetros es: Y su respuesta es: Donde el campo PAR indican el estado de operación del módulo de, es de 14 bytes e incluye la siguiente información: Registro de estado (2 bytes), Reloj de tiempo real (4 bytes), Número de datos almacenados en memoria (4 bytes) y Marca de sincronía (4 bytes). Mientras que la trama del comando Recibe datos tiene la siguiente estructura: Donde el NBD tiene un valor constante de 0x08 o menor e indica que se están solicitando paquetes de máximo 8 datos al MCUF. NPAQR es el número de paquete solicitado y su tamaño es de 4 bytes, por lo tanto se pueden solicitar hasta 2 32 paquetes de datos. La respuesta a esta petición tiene el siguiente formato: NPAQR es el número de paquete enviado en la solicitud, 4 bytes de tamaño. En el campo DATOS hay 8 bytes de datos como máximo. Esto se debe a que por el tamaño del búfer del módulo, la memoria de datos del MCUF será leída en paquetes de datos de 8 bytes como máximo. Una vez concluidos los paquetes de datos solicitados, el MCUF envía la respuesta general de atención a comandos al adaptador, indicando la conclusión satisfactoria de la solicitud. Para el caso Transmite datos también se utilizan dos tramas complementarias que tienen la siguiente estructura: Donde el NBD es el número total de bytes del mensaje a trasmitir y en el campo DATOS solo se pueden enviar como máximo 12 bytes. Si el NBD es mayor a 12, entonces los datos restantes se envían en paquetes de datos con el formato siguiente: NPAQT representa el número de paquete transmitido y su tamaño es de 1 bytes. Por lo tanto para la transmisión de mensajes con más de 12 bytes de datos se dividen en n-paquetes con 2 bytes para los campos de encabezado y 12 bytes de datos. La respuesta a cualquiera de estas tramas tiene el siguiente formato: Para la primera trama el número de paquete transmitido es 0x01. Una vez concluida la transmisión de todos los paquetes de datos, el MCUF envía la respuesta general de atención a comandos al adaptador, indicando la conclusión satisfactoria de la solicitud. Red de comunicación entre PC y módulos MCUF La red de comunicación utilizada entre módulos de y PC es punto a multipunto, ver Figura 7. La PC reconoce cada módulo en la red a través de su identificador único. PC -- --- --- --- --- Adaptador USB a radiofrecuencia - - ID: a ID: b ID: b ID: c ID: d ID: e ID: f ID: e Fig. 7 Red de comunicación (punto a multipunto). Pag. 6

La PC es la que inicia el intercambio de mensajes ya que los módulos solo responden a las peticiones solicitadas. Cualquier petición es recibida por todos los módulos pero únicamente es atendida por el módulo requerido. Normalmente los módulos se encuentran en modo escucha o recibe. Pruebas Se llevaron a cabo diferentes pruebas con el objetivo de evaluar el enlace de comunicación, estas pruebas se realizaron en laboratorio bajo condiciones controladas de operación. Tasa de transferencia de datos La primera prueba consistió en la comunicación punto a punto entre la PC y un módulo de con distancias de separación entre ellos de uno a dos metros. El módulo y el dongle se configuraron con las siguientes tasas de transferencia: GFSK 1000 Kbps 32-chip 8DR a 250 Kbps 64-chip 8DR a 125 Kbps Para cada caso se utilizó el canal 44 a una potencia de transmisión de 0 dbm (decibelio-miliwatt). Se envió un mensaje corto (4 bytes) repetidas veces para monitorear la intensidad de la señal recibida en el módulo. Los resultados de esta prueba se describen a continuación: La sensibilidad de recepción es alta a un metro de distancia. Cuando se incrementa la distancia la sensibilidad disminuye. También hay un efecto en el alcance, a mayor distancia mayor pérdida de datos. A una tasa de 1000 Kbps se pierden datos con frecuencia debido a la interferencia con redes vecinas. A una tasa de 250 Kbps disminuye la interferencia y se pierden menos datos. La tasa de 125 Kbps es menos sensible a la interferencia y rara vez se pierden datos. Se observó que con un objeto en la línea de vista la señal se pierde. Para las pruebas siguientes se utiliza la tasa de 125 Kbps porque tiene menor sensibilidad a la interferencia. Comunicación PC portátil y MCUF Esta prueba consistió en el envío de mensajes cortos (4 bytes) y largos (12 bytes) entre una PC portátil y un MCUF instalado en un gabinete industrial (rack) de 19 junto con otros módulos. El gabinete se colocó en un punto fijo y la PC se ubicó a diferentes distancias con y sin línea de vista, como se observa en la Figura 8. El dongle se orientó de forma horizontal o vertical y se configuró a la máxima potencia de transmisión (4 dbm). Se transmitió cada mensaje 3 veces para monitorear en el módulo del MCUF las características siguientes: La intensidad de la señal recibida, el efecto de la orientación de la antena del dongle y la pérdida de datos cuando hay obstáculos en la línea de vista. Los resultados obtenidos se describen en la Tabla 2. 1 5 10 m 30 300 8 m 90 RACK 2 MCUF 4 m 10 m 180 8 m Fig. 8 Puntos de transmisión de mensajes entre PC y MCUF Tabla 2: Resultados para transmisiones entre PC y MCUF P Sensibilidad de recepción en el MCUF 1 Horizontal: 37% sin pérdida de datos Vertical: 25% con baja pérdida de datos 2 Horizontal: 96% sin pérdida de datos Vertical: 96% sin pérdida de datos 3 Vertical: 59% sin pérdida de datos Horizontal: 37% con alta pérdida de datos 4 Horizontal: 46% sin pérdida de datos Vertical: 31% con alta pérdida de datos 5 Horizontal: 78% con baja pérdida de datos Vertical: 71% con alta pérdida de datos P = Ubicación de la PC portátil Cuando hay línea de vista, sin obstáculo próximo al dongle y frente al rack, la orientación horizontal del dongle es la mejor para transmitir. Conforme se desplaza la ubicación del transmisor hacia los costados del rack la orientación horizontal pierde intensidad y la orientación vertical es más favorable para transmitir a distancias superiores a los 5 metros. Este comportamiento también se observa para ubicaciones en la parte posterior del rack. Entre mayor cantidad de 225 4 3 Pag. 7

obstáculos se interpongan entre el transmisor y el receptor se incrementa la pérdida de datos. Validación y robustez del protocolo La prueba consistió en armar una red con una PC y diferentes módulos MCUF. El dongle en posición horizontal y frente al rack. Tres MCUF con sus módulos se instalaron en el rack y se intercambiaron mensajes entre la PC y cada uno de los MCUF. El intercambio de mensajes entre la PC y un módulo MCUF específico presentaba fallas aleatorias, es decir, algunas veces el enlace de comunicación no operaba correctamente independientemente de la distancia y de la tasa de transferencia debido probablemente a la interferencia causada por los módulos contiguos o a la falta de robustez en el protocolo. Conclusiones La solución desarrollada cumple con el objetivo de contar con un enlace inalámbrico entre una PC y los módulos de de datos para sustituir cables de conexión, facilitar la instalación e incrementar la distancia del enlace. Debido a la portabilidad del módulo, el acondicionamiento al módulo de fue sencillo, ya que consistió en la interconexión al FPGA mediante un conector de 9 pines. El protocolo propietario de usuario facilita la ejecución de diferentes funciones con base en los requerimientos funcionales del módulo de de datos. En la red, el dongle inicia la transmisión de mensajes y el estado normal de operación de los MCUF habilitados es el modo recibe, lo que permite que la atención de peticiones sea exitosa la mayoría de las veces. Si el intercambio de datos no se efectúa correctamente se pueden ejecutar reintentos. En ambientes congestionados de señales de radiofrecuencia se recomienda la configuración a una tasa de transferencia de 125 kbps para asegurar la calidad de la información transmitida. Los obstáculos como mobiliario y la presencia de personas influyen en la potencia de la señal transmitida. Referencias [1] C. Quintáns, J.M. Lago, L.M. Menéndez y E. Mandado. Plataforma para el Autoaprendizaje de las FPGA y sus aplicaciones. VII Congreso de Tecnologías Aplicadas a la Enseñanza de la Electrónica (TAEE 2006) Madrid, España. [2] Charles Chien, Sean Nazareth, Paul Lettieri, Stephen Molloy, Brian Schoner, Walter A. Boring IV, Joey Chen, Christopher Deng, William H. Mangione-Smith and Rajeev Jain. An Integrated Testbed for Wireless Multimedia Computing. Journal of VLSI Signal Processing Systems 13, 105 124 (1996). [3] Portilla, Jorge; De Castro Angel; De la Torre Eduardo y Riesgo Teresa. A Modular Architecture for Nodes in Wireless Sensor Networks. Journal of Universal Computer Science, vol. 12, no. 3 (2006), 328-339. [4] Quoc-Thai Ho, Daniel Massicotte, and Adel-Omar Dahmane. FPGA Implementation of an MUD Based on Cascade Filters for awcdma System. Hindawi Publishing Corporation, EURASIP Journal on Applied Signal Processing. Volume 2006, Article ID 52919, Pages 1 12. [5] N Sklavos, G Selimis and O Koufopavlou. FPGA implementation cost and performance evaluation of IEEE 802.11 protocol encryption security schemes. Journal of Physics: Conference Series 10 (2005) 361 364. José Hugo Montesinos Marroquín Ingeniero en Cibernética egresado de la Universidad del Sol en el 2007. De 2007 a 2009, realizó Servicio Social, Adiestramiento en Investigación Tecnológica y prestó Servicios Profesionales en la GCI del IIE. Ma. Jojutla O. Pacheco Arteaga Ingeniera en Electrónica por la UAM en 1993. Maestra en Ingeniería por la UNAM en 1999. Desde 1993 labora como investigadora de tiempo completo en el IIE desarrollando proyectos en el área de Electrónica, Adquisición de Datos, Protocolos de Comunicación e Instrumentación Virtual. Julio González Arenas Ingeniero en Comunicaciones y Electrónica egresado de la ESIME Zac. del IPN en el año 2007. Fue becario de tesis del IIE en donde actualmente trabaja en el desarrollo de diseños VHDL sintetizables y firmware utilizando lenguaje C. Pag. 8