Proyecto Final de carrera Escuela Superior de Ingenieros Universidad de Sevilla Desarrollo del Software de una Red de Sensores de Medidas de Consumo Eléctrico Anexo: Información de protocolos Presentado para optar al Título de Ingeniero en Automática y Electrónica Supervisado por: Luis Fernando Castaño Castaño Proyectista: Diego Francisco Larios Marín DNI: 28760057-Y Sevilla, 10 de Septiembre de 2009 Red de Sensores de Medidas de Consumo Eléctrico Información de protocolos de comunicación Anexo ÍNDICE DE CONTENIDOS 1 INTRODUCCIÓN. ............................................................................................................. 1 2 EL PROTOCOLO MODBUS. .......................................................................................... 1 2.1 RESUMEN DE LOS NIVELES OSI DEL PROTOCOLO MODBUS............................................... 2 2.1.1 Capa física (capa 1 del modelo OSI). .................................................................... 3 2.1.2 Nivel de enlace de datos (capa 2 del modelo OSI). ............................................... 4 2.1.3 Nivel de aplicación (capa 7 del modelo OSI). ....................................................... 6 3 EL PROTOCOLO PROFIBUS. ........................................................................................ 9 3.1 3.2 3.3 3.4 4 VERSIONES. ...................................................................................................................... 9 CONEXIONES FÍSICAS. ..................................................................................................... 10 COMUNICACIONES. ......................................................................................................... 10 CARACTERÍSTICAS. ......................................................................................................... 11 EL PROTOCOLO ZIGBEE. ........................................................................................... 11 4.1 HISTORIA. ....................................................................................................................... 12 4.2 CRONOLOGÍA. ................................................................................................................. 13 4.3 DEFINICIÓN. ................................................................................................................... 13 4.4 ESTÁNDAR IEEE 802.15.4. ............................................................................................. 14 4.5 CARACTERÍSTICAS. ......................................................................................................... 14 4.6 VENTAJAS....................................................................................................................... 15 4.7 DESVENTAJAS................................................................................................................. 16 4.8 ESTRUCTURA. ................................................................................................................. 16 4.9 TIPOS DE DISPOSITIVOS. ................................................................................................. 17 4.10 FUNCIONALIDAD. ....................................................................................................... 18 4.11 TOPOLOGÍA. ............................................................................................................... 19 4.12 TIPOS DE TRÁFICO DE DATOS. ................................................................................... 20 4.13 ESTRATEGIAS DE CONEXIÓN DE LOS DISPOSITIVOS EN UNA RED ZIGBEE. .................. 20 4.13.1 Con balizas. .......................................................................................................... 21 4.13.2 Sin balizas. ........................................................................................................... 21 4.14 COMUNICACIÓN Y DESCUBRIMIENTO DE DISPOSITIVOS. ............................................. 21 4.15 SEGURIDAD. ............................................................................................................... 22 4.15.1 Modelo básico de seguridad................................................................................. 23 4.15.2 Arquitectura de seguridad. ................................................................................... 23 4.16 TÉCNICAS DE MODULACIÓN. ..................................................................................... 24 4.16.1 Modulación OQPSK (Offset Quadrature Phase Shift Keying). ............................ 25 4.16.2 Modulación BPSK (Binary Phase Shift Keying). ................................................. 25 4.16.3 ZigBee y su espectro compartido con WLAN. ...................................................... 25 4.17 APLICACIONES. .......................................................................................................... 25 4.18 CRITERIOS DE SELECCIÓN DE UNA ANTENA PARA ZIGBEE. ........................................ 27 4.18.1 Antena PCB. ......................................................................................................... 28 4.18.2 Antenas cerámicas en chip. .................................................................................. 29 4.18.3 Antenas de varilla................................................................................................. 29 4.18.4 Ejemplo de antena para ZigBee. .......................................................................... 30 4.18.4.1 4.18.4.2 4.18.4.3 Simulación de las características de la antena. ............................................................ 31 Layout e implementación de la antena. ....................................................................... 31 Resultados experimentales. ......................................................................................... 33 Diego Francisco Larios Marín Enrique Personal Vázquez ii Red de Sensores de Medidas de Consumo Eléctrico Información de protocolos de comunicación Anexo 4.18.4.3.1 Reflexión. ........................................................................................................... 33 4.18.4.3.2 Patrón de radiación. ............................................................................................ 33 4.18.4.3.3 Potencia de salida................................................................................................ 35 4.18.4.3.4 Emisión de armónicos y espureos. ...................................................................... 36 4.18.4.4 Conclusiones. .............................................................................................................. 37 Diego Francisco Larios Marín Enrique Personal Vázquez iii Red de Sensores de Medidas de Consumo Eléctrico Información de protocolos de comunicación Anexo ÍNDICE DE IMÁGENES Figura 1: Niveles de la pila OSI ........................................................................... 3 Figura 2: Estructura ZigBee. ............................................................................... 16 Figura 3: Topología ZigBee. ............................................................................... 19 Figura 4: Topología de rejilla. ............................................................................ 19 Figura 5: Topología de maya. ............................................................................. 20 Figura 6: Aplicaciones ZigBee. .......................................................................... 26 Figura 7: Diferentes tipos de antena. .................................................................. 27 Figura 8: Antena simple y diferencial. ............................................................... 28 Figura 9: Vista de detalle de la antena. ............................................................... 30 Figura 10: Comparación entre simulaciones y resultados obtenidos.................. 31 Figura 11: Dimensiones de la antena. ................................................................. 32 Figura 12: Resultados de reflexión. .................................................................... 33 Figura 13: Planos de radiación. .......................................................................... 34 Figura 14: Radiación en el plano XY. ................................................................ 34 Figura 15: Radiación en el plano XZ. ................................................................. 34 Figura 16: Radiación en el plano YZ. ................................................................. 35 Figura 17: Potencia de salida. ............................................................................. 35 Figura 18: Emisión de ruido y armónicos ........................................................... 36 Diego Francisco Larios Marín Enrique Personal Vázquez iv Red de Sensores de Medidas de Consumo Eléctrico Información de protocolos de comunicación Anexo ÍNDICE DE TABLAS Tabla 1: Ventajas e inconvenientes del protocolo ModBus. ................................ 1 Tabla 2: Trama básica del protocolo Modbus. ..................................................... 4 Tabla 3: Trama de error de Modbus. .................................................................... 5 Tabla 4: Funciones Modbus más importantes. ..................................................... 6 Tabla 5: Ejemplo de orden de lectura de registros................................................ 7 Tabla 6: Ejemplo de respuesta a la orden de lectura de registros. ........................ 7 Tabla 7: Ejemplo de orden de escritura de múltiples registros. ............................ 8 Tabla 8: Ejemplo de respuesta a la orden de escritura de múltiples registros. ..... 8 Tabla 9: Ventajas e inconvenientes del protocolo Profibus.................................. 9 Tabla 10: Tabla comparativa de redes inalámbricas. .......................................... 26 Tabla 11: Ventajas e inconvenientes de los diferentes tipos de antenas ............. 27 Tabla 12: Dimensiones de la antena. .................................................................. 32 Tabla 13: Potencia de salida medida y armónicos. ............................................. 36 Tabla 14: Límites de las normas ETSI y FCC. ................................................... 36 Tabla 15: Resumen de características. ................................................................ 37 Diego Francisco Larios Marín Enrique Personal Vázquez v Red de Sensores de Medidas de Consumo Eléctrico Información de protocolos de comunicación 1 Anexo INTRODUCCIÓN. A lo largo de todo el proyecto se hace referencia a los distintos buses de comunicaciones estudiados, fundamentalmente de ModBus y ZigBee, pero no se entra en detalles en ninguno de ellos, más allá de enumerar sus principales ventajas e inconvenientes de los mismos. Debido a esto, se incluye este anexo, donde se describe de una manera más detallada las características de estos buses, de forma que sirva de base para lo desarrollado en los distintos documentos del proyecto. Además también se incluye un informe relativo a las características más importantes de las diferentes topologías de antenas que se pueden encontrar en el mercado para la frecuencia de 2,4GHz, con el fin de evaluar sus ventajas e inconvenientes. 2 EL PROTOCOLO MODBUS.1 Modbus es un protocolo que cumple con el nivel 7 del Modelo OSI, diseñado en 1979 por Modicon (Telemecanique) para la interconexión de sus autómatas. Actualmente se ha convertido en un protocolo de comunicaciones estándar industrial, para el que existen multitud de dispositivos diseñados para comunicarse mediante este bus, ya sean PLC, variadores de velocidad, etc. A continuación se resumen sus principales ventajas e inconvenientes: Ventajas • Es un estándar público que no exige el pago de royalties. • Su implementación es fácil • No impone demasiadas restricciones en el manejo de los datos. Inconvenientes • Basado en la jerarquía maestro-esclavo, por lo que no permite comunicaciones no solicitadas previamente (como podría ser una alarma). • En el estándar solo se definen 254 nodos como máximo. Tabla 1: Ventajas e inconvenientes del protocolo ModBus. 1 La documentación aquí reflejada es un resumen de la información descrita en la nota de aplicación PI-MBUS-300 “Modicon ModBus Protocol Reference Guide”, de Schneider. Diego Francisco Larios Marín Enrique Personal Vázquez 1 Red de Sensores de Medidas de Consumo Eléctrico Información de protocolos de comunicación Anexo Existen tres variantes, con diferentes representaciones numéricas de los datos y detalles del protocolo ligeramente diferentes. Modbus RTU es una representación binaria compacta de los datos. Modbus ASCII es una representación más legible del protocolo pero menos eficiente. Modbus/TCP es muy semejante al formato RTU, pero estableciendo la transmisión mediante paquetes TCP/IP. El protocolo Modbus es a día de hoy un estándar descrito libremente y que cualquier fabricante puede utilizar sin necesidad de pagar ningún tipo de royalties, no obstante existe una variante denominada Modbus Plus, la cual aún está patentada por Schenider Electric y que no se puede usar libremente. Esta variante añade una serie de mejoras, tales como permitir mensajes de difusión no solicitados y detección de errores de colisión, a costa de requerir un coprocesador de comunicaciones dedicados. En la actualidad, debido a su carácter libre, existen una serie de buses derivados de este estándar, tales como Jbus. Estaos son funcionalmente casi idénticos, cambiando solo ligeramente en las tramas a enviar y recibir (como por ejemplo hay variantes que añaden un byte más para almacenar el número de caracteres de respuesta, con lo que se pueden enviar tramas de más de 255 caracteres). Esta documentación se centra en Modbus RTU estándar, puesto que es la más extendida. Este formato finaliza la trama con una suma de control de redundancia cíclica (CRC) con el fin de asegurar la integridad de los datos. Cada dispositivo de la red Modbus posee una dirección única. Cualquier dispositivo puede enviar órdenes Modbus, aunque lo habitual es permitirlo sólo a un dispositivo maestro. Cada comando Modbus contiene la dirección del dispositivo destinatario de la orden. Todos los dispositivos reciben la trama pero sólo el destinatario la ejecuta (salvo un modo especial denominado "Broadcast", que se corresponde con la dirección 0). Cada uno de los mensajes incluye información redundante que asegura su integridad en la recepción. Los comandos básicos Modbus permiten controlar un dispositivo RTU para modificar el valor de alguno de sus registros, así como también solicitar el contenido de estos. A cada módulo esclavo se le asigna una dirección fija y única en el rango 1 a 254. El resto de direcciones queda reservada por el protocolo para aplicaciones especiales, como por ejemplo la dirección 0 está reservada para mensajes de difusión sin respuesta. El Maestro carece de dirección. 2.1 Resumen de los niveles OSI del protocolo Modbus. En los siguientes apartados se va a hacer un breve resumen de las características más importantes implementadas en algunos de los niveles del modelo OSI que se especifica para Modbus. Diego Francisco Larios Marín Enrique Personal Vázquez 2 Red de Sensores de Medidas de Consumo Eléctrico Información de protocolos de comunicación Anexo Figura 1: Niveles de la pila OSI 2.1.1 Capa física (capa 1 del modelo OSI). El protocolo Modbus soporta múltiples tipos de conexiones, como cableadas, fibra óptica, etc. Sin embargo la más común está basada en una capa física rs485, existiendo dos versiones, la denominada 2-wire y la 4-wire. La más extendida y a la que se hará referencia en la presente documentación es la versión 2-wire, siendo esta una comunicación half dúplex, diferencial a dos hilos que se comparten tanto para transmisión como para la recepción. La versión 4-wire emplea dos canales diferenciales separados, uno para la transmisión y otro para la recepción, lo que permite comunicaciones full dúplex, es decir, la versión 4-wires es similar a la unión de 2 configuraciones 2-wire, usando un canal solo para transmitir y el otro solo para recibir. Existe también un conector definido en el estándar para estas comunicaciones, un rj45 con un conexionado tal que el mismo conector es compatible con Modbus y Ethernet. Este conector, por ejemplo, es el que implementa la familia de autómatas Modicon M340 de Schneider. Ahora bien, para establecer las comunicaciones solo son necesarios los dos pines diferenciales del canal de datos compartidos, todos los demás son opcionales y su Diego Francisco Larios Marín Enrique Personal Vázquez 3 Red de Sensores de Medidas de Consumo Eléctrico Información de protocolos de comunicación Anexo implementación o no depende de la aplicación concreta. Además no todos los fabricantes incorporan este conector en sus dispositivos Modbus, dejando muchos de ellos dos bornas para conectar directamente el par de comunicaciones (como por ejemplo hace Panasonic en sus gamas FP-0, FP-2 y FP-X). Las velocidades de transmisión en este protocolo van desde los 75 baudios a los 19200 baudios, no estando definida de antemano en el estándar, usándose para cada aplicación particular aquella que se considere más conveniente. El formato definido en el estándar es de 1 bit Start, 8 bits de datos (LSB transmitido delante de MSB) y 1 bit Stop. En cuanto a paridad no hay un valor estandarizado, salvo que si no se usa paridad se tiene que usar dos bits de stop. De todas formas en la norma se recomienda el uso de paridad par (EVEN). La distancia máxima entre estaciones depende de la topología de la red y de la velocidad de transmisión, pero puede alcanzar hasta una distancia de 1200m sin necesidad de emplear repetidores 2.1.2 Nivel de enlace de datos (capa 2 del modelo OSI). En cada mensaje se envía primero la dirección del esclavo, después la función solicitada, tras esto, la información y por último el código de redundancia cíclica, tal y como se indica en la siguiente tabla: Comienzo de Trama ≥ 3,5 bytes idle Dirección 1 byte Función 1 byte Datos N bytes CRC Fin de Trama 2 bytes ≥ 3,5 bytes idle Tabla 2: Trama básica del protocolo Modbus. Como se puede apreciar el principio y el final de cada trama van acompañadas de un tiempo de reposo de línea mayor o igual a 3,5 veces el tiempo que se tarda en enviar un carácter. Este tiempo mínimo lo exige el protocolo, si bien por motivos de compatibilidad con el hardware existente, normalmente es mejor dejar un tiempo mayor, del orden de 5 veces el tiempo de transmisión de un carácter, puesto que no todas las implementaciones son igual de estrictas con la definición de estas esperas. El campo dirección se utiliza para direccionar el mensaje al dispositivo correspondiente, el campo función indica el tipo de acción solicitada al esclavo. Según la función utilizada, esta puede estar acompañada de un campo de datos. Diego Francisco Larios Marín Enrique Personal Vázquez 4 Red de Sensores de Medidas de Consumo Eléctrico Información de protocolos de comunicación Anexo La respuesta del esclavo utiliza la misma trama anterior (repitiendo dirección y función), añadiendo además los datos que sean necesarios para la respuesta. En caso de que un esclavo no pudiera realizar la función requerida, este respondería con un mensaje de error que repite dirección y función (esta última modificada con su bit de mayor peso puesto a “1”) según formato definido en la siguiente tabla: Comienzo de Trama ≥ 3.5 bytes idle Dirección Función 1 byte 1 byte: “Nº Función + 0x80” Código Error 1 byte CRC Fin de Trama 2 bytes ≥ 3.5 bytes idle Tabla 3: Trama de error de Modbus. En el protocolo Modbus se especifican hasta siete códigos de error, aunque en las implementaciones que hacen los fabricantes no todos están presente, siendo los más habituales los siguientes: • Error 1: Función ilegal2, la función recibida no está permitida en el esclavo. • Error 2: Dirección ilegal, la dirección de los datos está fuera de rango. • Error 6: Autómata ocupado, el PLC no puede procesar en este momento el mensaje y rechaza la trama. Los códigos de error no son necesarios de por sí para detectar una anomalía, puesto que el protocolo exige que se implemente un tiempo máximo de espera de la respuesta, indicando un error si se supera dicho timeout. Lo que no define el estándar es cuanto es este tiempo, teniendo que ser éste especificado en las características de cada dispositivo Modbus concreto, en función de sus características particulares. De todas formas, la norma recomienda la implementación de los mensajes de error descritos anteriormente, puesto que solo con el timeout el maestro pierde el control para detectar el tipo de anomalía producida. 2 Hay que tener en cuenta que el protocolo no exige que se programan todas las funciones definidas en el estándar. Diego Francisco Larios Marín Enrique Personal Vázquez 5 Red de Sensores de Medidas de Consumo Eléctrico Información de protocolos de comunicación Anexo Hay que tener en cuenta que el dispositivo esclavo no enviará nunca una respuesta hasta que haya decodificado una trama cuya longitud, paridad y CRC sean correctas. Además solo procesará el mensaje cuando la dirección que reciba se corresponda con su identificador Modbus. En cuanto al código de CRC, para este protocolo está implementado siguiendo mediante el algoritmo CRC16-CITT, con la peculiaridad de tener permutadas la parte baja y alta, es decir, primero se envía el byte de menor peso y después el de mayor peso. Las características del CRC16-CITT son similares a las del CRC definida por la IEEE, pudiendo detectar los mimos errores que ésta, pero hay que tener en cuenta que ambas no son compatibles, puesto que el polinomio generador difiere entre estas dos normas. 2.1.3 Nivel de aplicación (capa 7 del modelo OSI). En este nivel de aplicación se describen los campos de función y de datos definidos por el protocolo Modbus. En este protocolo se pueden definir un máximo de 127 funciones distintas, siendo las más habituales las que se describen en la siguiente tabla: Función 0 1 2 3 4 5 6 7 8 11 15 16 Código 0x00 0x01 0x02 0x03 0x04 0x05 0x06 0x07 0x08 0x0B 0x0F 0x10 Función Control de las estaciones esclavas. Lectura de n bits de salida o internos. Lectura de n bits de entradas. Lectura de n palabras de salidas o internos. Lectura de n palabras de entrada. Escritura de un bit. Escritura de una palabra. Lectura rápida de 8 bits. Control de contadores de diagnóstico número 1 a 8 Control de contador de diagnóstico número 9 Escritura de n bits Escritura de n palabras Tabla 4: Funciones Modbus más importantes. Hay que tener en cuenta que las palabras tienen un tamaño de 16 bits (2 bytes) con direcciones consecutivas a partir de una primera dirección relativa definida en el protocolo, enviándose primero el byte de mayor peso, delante del byte de menor peso (por su parte, cada byte se transmite con el LSB por delante del MSB). Diego Francisco Larios Marín Enrique Personal Vázquez 6 Red de Sensores de Medidas de Consumo Eléctrico Información de protocolos de comunicación Anexo El protocolo permite que se definan más o menos funciones dependiendo de las necesidades particulares de la aplicación. Como ya se ha comentado, si se pregunta por una función no programada basta con devolver el código de error 1. A cada función de llamada le corresponde una respuesta particular definida por el protocolo, de todas formas como ya se ha comentado todas las tramas de transmisión y recepción tienen el mismo formato, variando solamente entre ellas el campo datos y CRC. Por ejemplo para la orden 3 (Lectura de n palabras) la llamada sería: Dirección Función 0x11 0x03 Datos CRC Dirección relativa: byte alto= 0x03 byte bajo= 0xE8 byte alto= 0x87 Cantidad de Registros: byte bajo= 0x2B byte alto= 0x00 byte bajo= 0x03 Tabla 5: Ejemplo de orden de lectura de registros. Este ejemplo se corresponde con la llama al esclavo 17 para la lectura de 3 Registros en la dirección de inicio 41000 (en el formato Modbus, las direcciones de registros empiezan por 40000, correspondiéndole a esta posición la dirección relativa 0). La respuesta a esta lectura de datos sería la siguiente, asumiendo que los datos son DT41000 = 0x1100, DT41001 = 0x3322 y DT41002 = 0x5544: Dirección Función 0x11 0x03 Datos CRC Nº bytes de respuesta: byte count= 0x06 Dato Registro Nº1: byte alto= 0x11 byte bajo= 0x00 byte alto= 0x7F Dato Registro Nº2: byte bajo= 0xD9 byte alto= 0x33 byte bajo= 0x22 Dato Registro Nº3: byte alto= 0x55 byte bajo= 0x44 Tabla 6: Ejemplo de respuesta a la orden de lectura de registros. Para una orden de escritura de registros (orden 16) la trama que enviaría el dispositivo maestro serían las descritas en la siguiente tabla, suponiendo una llamada al Diego Francisco Larios Marín Enrique Personal Vázquez 7 Red de Sensores de Medidas de Consumo Eléctrico Información de protocolos de comunicación Anexo esclavo 17 para escritura de 3 registros en la dirección 41000 y consecutiva con los datos DT41000 = 0x1100, DT41001 = 0x3322 y DT41002 = 0x5544. Dirección Función 0x11 0x10 Datos CRC Dirección relativa: byte alto= 0x03 byte bajo= 0xE8 Nº Registros a escribir: byte alto= 0x00 byte bajo= 0x03 Nº bytes a escribir: byte count= 0x06 byte alto= 0xC1 Dato Registro Nº1: byte bajo= 0x84 byte alto= 0x11 byte bajo= 0x00 Dato Registro Nº2: byte alto= 0x33 byte bajo= 0x22 Dato Registro Nº3: byte alto= 0x55 byte bajo= 0x44 Tabla 7: Ejemplo de orden de escritura de múltiples registros. Si el mensaje llega correctamente, la trama de respuesta sería: Dirección Función 0x11 0x10 Datos CRC Dirección relativa: byte alto= 0x03 byte alto= 0x02 byte bajo= 0xE8 Nº Registros escritos: byte bajo= 0xE8 byte alto= 0x00 byte bajo= 0x03 Tabla 8: Ejemplo de respuesta a la orden de escritura de múltiples registros. Las tramas particulares de llamada y respuesta para todas las órdenes definidas se pueden consultar en la documentación PI-MBUS-300 “Modicon ModBus Protocol Reference Guide”, de Schneider. Diego Francisco Larios Marín Enrique Personal Vázquez 8 Red de Sensores de Medidas de Consumo Eléctrico Información de protocolos de comunicación 3 Anexo EL PROTOCOLO PROFIBUS.3 Profibus es un estándar de comunicaciones para buses de campo. Su nombre deriva de las palabras PROcess FIeld BUS. Fue un proyecto desarrollado entre los años 1987-1990 por las empresas alemanas Bosch, Klöckner Möller y Siemens, y por otras como ABB, AEG, Honeywell, Landis & Gyr, Phoenix Contact, Rheinmetall, RMP, Sauter-cumulus y Schleicher. En 1989 la norma alemana DIN19245 adoptó el estándar Profibus, partes 1 y 2 (la parte 3, Profibus-DP no fue definida hasta 1993). Profibus fue confirmada como norma europea en 1996 como EN50170. Sus principales ventajas e inconvenientes se resumen en la siguiente tabla: Ventajas Inconvenientes • Es un estándar definido en normas internacionales (IEC61158 e IEC61784). • Soporta conexiones con múltiples maestros. • Su implementación es más compleja que en el caso de Modbus. • En el estándar solo se definen 32 nodos como máximo si no se usan repetidores. Tabla 9: Ventajas e inconvenientes del protocolo Profibus. 3.1 Versiones. Profibus tiene tres versiones o variantes (de más simple a más compleja): • Profibus DP (Periferia Distribuida; Descentralized Peripherals), desarrollada en 1993, es la más extendida. Está orientada a control a nivel sensor/actuador. • Profibus FMS, diseñada para control a nivel de célula. • Profibus PA, es la solución integrada para control a nivel de proceso La versión Profibus DP es la más utilizada, y actualmente está a su vez disponible en tres versiones: 3 La información aquí recogida es un resumen del artículo Profibus de la wikipedia. Diego Francisco Larios Marín Enrique Personal Vázquez 9 Red de Sensores de Medidas de Consumo Eléctrico Información de protocolos de comunicación Anexo • DP-V0. Provee las funcionalidades básicas incluyendo transferencia cíclica de datos, diagnóstico de estaciones, módulos y canales, y soporte de interrupciones. • DP-V1. Agrega comunicación acíclica de datos, orientada a transferencia de parámetros, operación y visualización. • DP-V2. Permite comunicaciones entre esclavos. Está orientada a tecnología de drivers, permitiendo alta velocidad para sincronización entre ejes en aplicaciones complejas 3.2 Conexiones físicas. Profibus tiene, conforme al estándar, cinco diferentes tecnologías de transmisión, que son identificadas como: • RS-485. Utiliza un par de cobre trenzado apantallado, y permite velocidades entre 9,6 kbps y 12 Mbps. Hasta 32 estaciones, o más si se utilizan repetidores. • MBP. Manchester Coding y Bus Powered, es transmisión sincrónica con una velocidad fija de 31,25 Kbps. • RS-485 IS. Las versiones IS son intrínsecamente seguras, y se utilizan en zonas peligrosas (explosivas). • MBP IS • Fibra óptica. Incluye versiones de fibra de vidrio multimodo y monomodo, fibra plástica y fibra HCS. 3.3 Comunicaciones. Desde el punto de vista del control de las comunicaciones, el protocolo Profibus es maestro esclavo, pero permite: • Aplicaciones monomaestro. Un sólo maestro está activo en el bus, usualmente un PLC. Los demás dispositivos son esclavos. Este esquema es el que permite los ciclos de lectura más cortos. • Aplicaciones multimaestro. Permite más de un maestro. Pueden ser aplicaciones de sistemas independientes, en que cada maestro tenga sus Diego Francisco Larios Marín Enrique Personal Vázquez 10 Red de Sensores de Medidas de Consumo Eléctrico Información de protocolos de comunicación Anexo propios esclavos. U otro tipo de configuraciones con dispositivos de diagnóstico y otros En un ambiente multimaestro, pudiendo haber dos tipos de maestros: • DPM1. DP Master Class 1. Es un controlador central que intercambia información con sus esclavos en forma cíclica. Típicamente un PLC. • DPM2. DP Master Class 2. Son estaciones de operación, configuración o ingeniería. Tienen acceso activo al bus, pero su conexión no es necesariamente permanente. 3.4 Características. • Velocidades de transmisión: 9.6, 19.2, 93.75, 187.5, 500, 1500, 3000, 6000 y 12000 Kbps. • Número máximo de estaciones: 127 (32 sin utilizar repetidores). • Distancias máximas alcanzables (cable de 0,22 mm de diámetro): hasta 93,75 Kbps1200 metros, 187.5 Kbps600 metros, 500 Kbps200 metros. • Estaciones pueden ser activas (maestros) o pasivas (esclavos). • Tipo de conexiones: bidireccionales, multicast o broadcast. 4 EL PROTOCOLO ZIGBEE.4 Las tecnologías inalámbricas han adoptado con el paso del tiempo una manera más sencilla y cómoda de utilizar toda clase de dispositivos con el fin de mejorar el confort y las comunicaciones en general. ZigBee es un estándar de comunicaciones inalámbricas diseñado por la ZigBee Alliance. Es un conjunto estandarizado de soluciones que pueden ser implementadas por cualquier fabricante. ZigBee está basado en el estándar IEEE 802.15.4 de redes inalámbricas de área personal (wireless personal área Newark, WPAN). 4 La información recogida en este capítulo es un resumen del artículo “ZigBee: el nuevo estándar para la domótica e inmótica” de Carlos Alberto Orteha Huembes. Diego Francisco Larios Marín Enrique Personal Vázquez 11 Red de Sensores de Medidas de Consumo Eléctrico Información de protocolos de comunicación Anexo ZigBee es un sistema ideal para redes domóticas, específicamente diseñado para reemplazar la proliferación de sensores/actuadores individuales. ZigBee fue creado para cubrir la necesidad del mercado de un sistema a bajo coste, un estándar para redes wireless de pequeños paquetes de información, bajo consumo, seguro y fiable. ZigBee comunica una serie de dispositivos haciendo que trabajen más eficiente entre sí. Es un transmisor y un receptor que usa baja potencia para trabajar y tiene como objetivo las aplicaciones que requieren comunicaciones seguras con baja tasa de envío de datos y maximización de la vida útil de sus baterías. Es ideal para conexiones con diversos tipos de topología, lo que a su vez lo hace más seguro, barato y que no haya ninguna dificultad a la hora de su construcción porque es muy sencilla. ZigBee es la tecnología inalámbrica del futuro que no tiene competencia fuerte con las tecnologías existentes debidos a que sus aplicaciones son de automatización de edificios, hogareñas e industriales, especialmente para aplicaciones con usos de sensores. 4.1 Historia. El origen del nombre es confuso, pero se estipula que "ZigBee" se deriva de los patrones erráticos comunicativos que hacen muchas abejas entre las flores durante la recogida de polen. Esto es evocador de las redes invisibles de las conexiones existentes en un entorno totalmente inalámbrico. ZigBee se ha desarrollado para satisfacer la creciente demanda de capacidad de red inalámbrica entre varios dispositivos de baja potencia. En la industria ZigBee se está utilizando para la próxima generación de fabricación automatizada, con pequeños transmisores en cada dispositivo, lo que permite la comunicación entre dispositivos a un nodo central. Para llevar a cabo este sistema, un grupo de trabajo llamado Alianza ZigBee (ZigBee Alliance) formado por varias industrias, sin ánimo de lucro, la mayoría de ellas fabricantes de semiconductores, está desarrollando el estándar. La alianza de empresas está trabajando codo con codo con IEEE para asegurar una integración, completa y operativa. Esta alianza en las cuales destacan empresas como Invensys, Mitsubishi, Philips y Motorola trabajan para crear un sistema estándar de comunicaciones, vía radio y bidireccional, para usarlo dentro de dispositivos de automatización para el hogar (domótica), grandes edificios (inmótica), control industrial, periféricos de PC y sensores médicos. Los miembros de esta alianza justifican el desarrollo de este estándar para cubrir el vacío que se produce por debajo del Bluetooth. Esta nueva aplicación, definida por la propia ZigBee Alliance como el nuevo estándar global para la automatización del hogar, permite que las aplicaciones Diego Francisco Larios Marín Enrique Personal Vázquez 12 Red de Sensores de Medidas de Consumo Eléctrico Información de protocolos de comunicación Anexo domóticas desarrolladas por los fabricantes sean completamente interoperables entre sí, garantizando así al cliente final fiabilidad, control, seguridad y comodidad. Además la ZigBee Alliance también deja disponible para su acceso la ZigBee Cluster Library, ofreciendo de este modo a los ingenieros y demás integradores, deseosos de trabajar bajo este estándar mundial, idóneo para los servicios domóticos, reduciendo de este modo las labores de desarrollo y permitiendo implementaciones más precisas. 4.2 Cronología. 1998. - Las redes de la familia de ZigBee se conciben, al tiempo que se hizo claro que Wi-Fi y Bluetooth no serían soluciones válidas para todos los contextos. En concreto, se observó una necesidad de redes ad hoc inalámbricas. 2003. - El estándar IEEE 802.15.4 se aprueba en mayo. 2003. - En el verano, Philips Semiconductors puso fin a su inversión en redes de mallas. Philips Lighting ha perpetuado la participación de Philips, que sigue siendo un miembro prominente de la ZigBee Alliance. 2004. - ZigBee Alliance anunció en octubre una duplicación en su número de miembros en el último año a más de 100 compañías en 22 países. En abril de 2005 había más de 150 miembros corporativos, y más de 200 en diciembre del mismo año. 2004. - Se aprueba la especificación ZigBee el 14 de diciembre. 2005. - ZigBee 2004 se puso a disposición del público sin fines comerciales el 13 de junio en San Ramón, California. 2006. – “El precio de mercado de un transceptor compatible con ZigBee se acerca al dólar y el precio de un conjunto de radio, procesador y memoria ronda los tres dólares”. 2006. - En diciembre se publicó la actual revisión de la especificación. 2007. - En noviembre se publicó el perfil HOME AUTOMATION de la especificación. 4.3 Definición. ZigBee es el nombre de la especificación de un conjunto de protocolos de alto nivel de comunicación inalámbrica para su utilización con radios digitales de bajo Diego Francisco Larios Marín Enrique Personal Vázquez 13 Red de Sensores de Medidas de Consumo Eléctrico Información de protocolos de comunicación Anexo consumo, basada en el estándar IEEE 802.15.4 de redes inalámbricas de área personal (wireless personal area network, WPAN). Su objetivo son las aplicaciones para redes wireless que requieran comunicaciones seguras y fiables con baja tasa de envío de datos y maximización de la vida útil de sus baterías. 4.4 Estándar IEEE 802.15.4. IEEE 802.15.4 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). La actual revisión del estándar se aprobó en 2006. El grupo de trabajo IEEE 802.15 es el responsable de su desarrollo. También es la base sobre la que se define la especificación de ZigBee, cuyo propósito es ofrecer una solución completa para este tipo de redes construyendo los niveles superiores de la pila de protocolos que el estándar no cubre. 4.5 Características. • ZigBee, también conocido como "HomeRF Lite", es una tecnología inalámbrica con velocidades comprendidas entre 20 kB/s y 250 kB/s. • Los rangos de alcance son de 10 m a 75 m. • Puede usar las bandas libres ISM (Europa) y 915 MHz (EEUU). (6) de 2,4 GHz (Mundial), 868 MHz • Una red ZigBee puede estar formada por hasta 255 nodos los cuales tienen la mayor parte del tiempo el transceiver ZigBee dormido con objeto de consumir menos que otras tecnologías inalámbricas. • Un sensor equipado con un transceiver ZigBee pueda ser alimentado con dos pilas AA durante al menos 6 meses y hasta 2 años. • La fabricación de un transmisor ZigBee consta de menos circuitos analógicos de los que se necesitan habitualmente. • Diferentes tipos de topologías como estrella, punto a punto, malla, árbol. • Acceso de canal mediante CSMA/CA (acceso múltiple por detección de portadora con evasión de colisiones). • Escalabilidad de red: Un mejor soporte para las redes más grandes, ofreciendo más opciones de gestión, flexibilidad y desempeño. Diego Francisco Larios Marín Enrique Personal Vázquez 14 Red de Sensores de Medidas de Consumo Eléctrico Información de protocolos de comunicación Anexo • Fragmentación: Nueva capacidad para dividir mensajes más largos y permitir la interacción con otros protocolos y sistemas. • Agilidad de frecuencia: Redes cambian los canales en forma dinámica en caso que ocurran interferencias. • Gestión automatizada de direcciones de dispositivos: El conjunto fue optimizado para grandes redes con gestión de red agregada y herramientas de configuración. • Localización grupal: Ofrece una optimización adicional de tráfico necesaria para las grandes redes. • Puesta de servicio inalámbrico: El conjunto fue mejorado con capacidades seguras para poner en marcha el servicio inalámbrico. • Recolección centralizada de datos: El conjunto fue sintonizado específicamente para optimizar el flujo de información en las grandes redes. 4.6 Ventajas. • Ideal para conexiones punto a punto o punto a multipunto • Diseñado para el direccionamiento de información y el refrescamiento de la red. • Opera en la banda libre de ISM 2,4Ghz para conexiones inalámbricas. • Óptimo para redes de baja tasa de transferencia de datos. • Alojamiento de 16 bits a 64 bits de dirección extendida. • Reduce tiempos de espera en el envío y recepción de paquetes. • Detección de Energía (ED). • Baja ciclo de trabajo, proporciona larga duración de la batería. • Soporte para múltiples topologías de red: Estática, dinámica, estrella y malla. • Hasta 65.000 nodos en una red. Diego Francisco Larios Marín Enrique Personal Vázquez 15 Red de Sensores de Medidas de Consumo Eléctrico Información de protocolos de comunicación Anexo • 128-bit AES de cifrado, garantiza conexiones seguras entre dispositivos. • Son más baratos y de construcción más sencilla. 4.7 Desventajas. • La tasa de transferencia es muy baja. • Solo manipula textos pequeños comparados con otras tecnologías. • ZigBee trabaja de manera que no puede ser compatible con bluetooth en todos sus aspectos. No llegan a tener las mismas tasas de transferencia, ni la misma capacidad de soporte para nodos. • Tiene menor cobertura porque pertenece a redes inalámbricas de tipo WPAN. 4.8 Estructura. Figura 2: Estructura ZigBee. Diego Francisco Larios Marín Enrique Personal Vázquez 16 Red de Sensores de Medidas de Consumo Eléctrico Información de protocolos de comunicación Anexo Siguiendo el estándar del modelo de referencia OSI (Open Systems Interconnection), en el gráfico, aparece la estructura de la arquitectura en capas. Las primeras dos capas, la física y la de acceso al medio MAC, son definidas por el estándar IEEE 802.15.4. Las capas superiores son definidas por la Alianza ZigBee y corresponden a las capas de red y de aplicación las cuales contienen los perfiles del uso, ajustes de la seguridad y la mensajería. Los cometidos principales de la capa de red son permitir el correcto uso del subnivel MAC y ofrecer un interfaz adecuado para su uso por parte del nivel inmediatamente superior. Sus capacidades, incluyendo el ruteo, son las típicas de un nivel de red clásico. Por una parte, la entidad de datos crea y gestiona las unidades de datos del nivel de red a partir del payload del nivel de aplicación y realiza el ruteo en base a la topología de la red en la que el dispositivo se encuentra. Por otra, las funciones de control del nivel controlan la configuración de nuevos dispositivos y el establecimiento de nuevas redes; puede decidir si un dispositivo colindante pertenece a la red e identifica nuevos routers y vecinos. El control puede detectar así mismo la presencia de receptores, lo que posibilita la comunicación directa y la sincronización a nivel MAC. La trama general de operaciones (GOF) es una capa que existe entre la de aplicaciones y el resto de capas. La GOF suele cubrir varios elementos que son comunes a todos los dispositivos, como el subdireccionamiento, los modos de direccionamientos y la descripción de dispositivos, como el tipo de dispositivo, potencia, modos de dormir y coordinadores de cada uno. Utilizando un modelo, la GOF especifica métodos, eventos, y formatos de datos que son utilizados para constituir comandos y las respuestas a los mismos. La capa de aplicación es el más alto definido por la especificación y, por tanto, la interfaz efectiva entre el nodo ZigBee y sus usuarios. En él se ubican la mayor parte de los componentes definidos por la especificación: tanto los objetos de dispositivo ZigBee (ZigBee device objects, ZDO) como sus procedimientos de control como los objetos de aplicación que se encuentran aquí. 4.9 Tipos de Dispositivos. Se definen tres tipos distintos de dispositivo ZigBee según su papel en la red: Coordinador ZigBee (ZigBee Coordinator, ZC): El tipo de dispositivo más completo. Debe existir uno por red. Sus funciones son las de encargarse de controlar la red y los caminos que deben seguir los dispositivos para conectarse entre ellos, requiere memoria y capacidad de computación. Diego Francisco Larios Marín Enrique Personal Vázquez 17 Red de Sensores de Medidas de Consumo Eléctrico Información de protocolos de comunicación Anexo Router ZigBee (ZigBee Router, ZR): Interconecta dispositivos separados en la topología de la red, además de ofrecer un nivel de aplicación para la ejecución de código de usuario. Dispositivo final (ZigBee End Device, ZED): Tiene la funcionalidad necesaria para comunicarse con su nodo padre (el coordinador o un router), pero no puede transmitir información destinada a otros dispositivos. De esta forma, este tipo de nodo puede estar dormido la mayor parte del tiempo, aumentando la vida media de sus baterías. Un ZED tiene requerimientos mínimos de memoria y es por tanto significativamente más barato. 4.10 Funcionalidad. Basándose en su funcionalidad, puede plantearse una segunda clasificación: Dispositivo de funcionalidad completa (FFD): También conocidos como nodo activo. Es capaz de recibir mensajes en formato 802.15.4. Gracias a una memoria adicional y a la capacidad de computar, puede funcionar como Coordinador o Router ZigBee, o puede ser usado en dispositivos de red que actúen de interfaces con los usuarios. Dispositivo de funcionalidad reducida (RFD): También conocido como nodo pasivo. Tiene capacidad y funcionalidad limitadas con el objetivo de conseguir un bajo coste y una gran simplicidad. Básicamente, son los sensores/actuadores de la red. Un nodo ZigBee (tanto activo como pasivo) reduce su consumo gracias a que pueden permanecer dormidos la mayor parte del tiempo (hasta varios días seguidos). Cuando se requiere su uso, el nodo ZigBee es capaz de despertar en un tiempo ínfimo, para volverse a dormir cuando deje de ser requerido. Un nodo cualquiera despierta en aproximadamente 15 ms. Además de este tiempo, se muestran otras medidas de tiempo de funciones comunes: • Nueva enumeración de los nodos esclavo (por parte del coordinador): aproximadamente 30 ms. • Acceso al canal entre un nodo activo y uno pasivo: aproximadamente 15 ms. Diego Francisco Larios Marín Enrique Personal Vázquez 18 Red de Sensores de Medidas de Consumo Eléctrico Información de protocolos de comunicación Anexo 4.11 Topología. Figura 3: Topología ZigBee. La capa de red soporta múltiples configuraciones de red incluyendo estrella, árbol, punto a punto y rejilla (malla). En la configuración en estrella, uno de los dispositivos tipo FFD asume el rol de coordinador de red y es responsable de inicializar y mantener los dispositivos en la red. Todos los demás dispositivos ZigBee, conocidos con el nombre de dispositivos finales, hablan directamente con el coordinador. En la configuración de rejilla, el coordinador ZigBee es responsable de inicializar la red y de elegir los parámetros de la red, pero la red puede ser ampliada a través del uso de routers ZigBee. El algoritmo de encaminamiento utiliza un protocolo de pregunta-respuesta (request-response) para eliminar las rutas que no sean óptimas, La red final puede tener hasta 254 nodos. Utilizando el direccionamiento local, se puede configurar una red de más de 65000 nodos (216). Figura 4: Topología de rejilla. Para la topología punto a punto, existe un solo FFD Coordinador. A diferencia con la topología estrella, cualquier dispositivo puede comunicarse con otro siempre y cuando estén en el mismo rango de alcance circundante. Las aplicaciones orientadas para la monitorización y control de procesos industriales, redes de sensores inalámbricos, entre otros, son ampliamente usados por estas redes. Proveen confiabilidad en el enrutamiento de datos (multipath routing). Diego Francisco Larios Marín Enrique Personal Vázquez 19 Red de Sensores de Medidas de Consumo Eléctrico Información de protocolos de comunicación Anexo Figura 5: Topología de maya. La topología de árbol es un caso especial de conexión punto a punto, en la cual muchos dispositivos son FFDs y los RFD pueden conectarse como un nodo único al final de la red. Cualquiera de los FFDs restantes pueden actuar como coordinadores y proveer servicios de sincronización hacia otros dispositivos o coordinadores. 4.12 Tipos de Tráfico de Datos. ZigBee/IEEE 802.15.4 dirige tres tipos de tráfico típicos: 1. Cuando el dato es periódico: La aplicación dicta la proporción, el sensor se activa, chequea los datos y luego desactiva. 2. Cuando el dato es intermitente: La aplicación, u otro estímulo, determina la proporción, como en el caso de los detectores de humo. El dispositivo necesita sólo conectarse a la red cuando la comunicación se hace necesaria. Este tipo permite un ahorro óptimo en la energía. 3. Cuando el dato es repetitivo: La proporción es a priori fija. Dependiendo de las hendiduras de tiempo repartidas, los dispositivos operan para las duraciones fijas. 4.13 Estrategias de conexión de los dispositivos en una red ZigBee. Las redes ZigBee han sido diseñadas para conservar la potencia en los nodos esclavos. De esta forma se consigue el bajo consumo de potencia. La estrategia consiste en que, durante mucho tiempo, un dispositivo esclavo está en modo dormido, de tal forma que solo se despierta por una fracción de segundo para confirmar que está vivo en la red de dispositivos de la que forma parte. Esta transición del modo dormido al modo despierto (modo en el que realmente transmite), dura unos 15ms, y la enumeración de "esclavos" dura alrededor de 30ms. En las redes ZigBee, se pueden usar dos tipos de entornos o sistemas: Diego Francisco Larios Marín Enrique Personal Vázquez 20 Red de Sensores de Medidas de Consumo Eléctrico Información de protocolos de comunicación Anexo 4.13.1 Con balizas. Es un mecanismo de control del consumo de potencia en la red. Permite a todos los dispositivos saber cuándo pueden transmitir. En este modelo, los dos caminos de la red tienen un distribuidor que se encarga de controlar el canal y dirigir las transmisiones. Las balizas que dan nombre a este tipo de entorno, se usan para poder sincronizar todos los dispositivos que conforman la red, identificando la red domótica, y describiendo la estructura de la "supertrama". Los intervalos de las balizas son asignados por el coordinador de red y pueden variar desde los 15ms hasta los 4 minutos. Este modo es más recomendable cuando el coordinador de red trabaja con una batería. Los dispositivos que conforman la red, escuchan a dicho coordinador durante el "balizamiento" (envío de mensajes a todos los dispositivos -broadcast-, entre 0,015 y 252 segundos). Un dispositivo que quiera intervenir, lo primero que tendrá que hacer es registrarse para el coordinador, y es entonces cuando mira si hay mensajes para él. En el caso de que no haya mensajes, este dispositivo vuelve a "dormir", y se despierta de acuerdo a un horario que ha establecido previamente el coordinador. En cuanto el coordinador termina el "balizamiento", vuelve a "dormirse". 4.13.2 Sin balizas. Se usa el acceso múltiple al sistema ZigBee en una red punto a punto cercano. En este tipo, cada dispositivo es autónomo, pudiendo iniciar una conversación, en la cual los otros pueden interferir. A veces, puede ocurrir que el dispositivo destino puede no oír la petición, o que el canal esté ocupado. Este sistema se usa típicamente en los sistemas de seguridad, en los cuales sus dispositivos (sensores, detectores de movimiento o de rotura de cristales), duermen prácticamente todo el tiempo (el 99,999%). Para que se les tenga en cuenta, estos elementos se "despiertan" de forma regular para anunciar que siguen en la red. Cuando se produce un evento (en el sistema será cuando se detecta algo), el sensor "despierta" instantáneamente y transmite la alarma correspondiente. Es en ese momento cuando el coordinador de red, recibe el mensaje enviado por el sensor, y activa la alarma correspondiente. En este caso, el coordinador de red se alimenta de la red principal durante todo el tiempo. 4.14 Comunicación y descubrimiento de dispositivos. Para que los dispositivos que forman una aplicación puedan comunicarse, deben utilizar un protocolo de aplicación compartido. Estas convenciones se agrupan en perfiles. Las decisiones de asociación se deciden en base a la coincidencia entre identificadores de clusters de entrada y salida, que son únicos en el contexto de un perfil Diego Francisco Larios Marín Enrique Personal Vázquez 21 Red de Sensores de Medidas de Consumo Eléctrico Información de protocolos de comunicación Anexo dado y se asocian a un flujo de datos de entrada o salida en un dispositivo; las tablas de asociaciones mantienen los pares de identificadores fuente y destino. En base a la información disponible, el descubrimiento de dispositivos puede adecuarse utilizando varios métodos distintos. Si se conoce la dirección de red, se pide la dirección IEEE utilizando unicast. Si no es así, se pide por broadcast, y la dirección IEEE forma parte de la respuesta. Los dispositivos finales responden con la dirección propia solicitada, mientras que routers y coordinadores envían también las direcciones de todos los dispositivos asociados a ellos. Este protocolo extendido permite indagar acerca de dispositivos dentro de una red y sus servicios ofrecidos a nodos externos a la misma. Los dispositivos finales pueden informar acerca de estos servicios cuando el protocolo de descubrimiento dirige mensajes a ellos. También pueden utilizarse servicios de emparejamiento ofertademanda. Los identificadores de cluster favorecen la asociación entre entidades complementarias por medio de tablas de asociación, mantenidas en los coordinadores ZigBee ya que estas tablas siempre han de estar disponibles en una red (los coordinadores son, de entre todos los nodos, los que con mayor seguridad dispondrán de una alimentación continua). Los backups a estas tablas, de ser necesarios para la aplicación, han de realizarse en niveles superiores. Por otra parte, el establecimiento de asociaciones necesita que se haya formado un enlace de comunicación; tras ello, se decide si adjuntar un nuevo nodo a la red en base a la aplicación y las políticas de seguridad. Nada más establecerse la asociación pueden iniciarse las comunicaciones. El direccionamiento directo utiliza la dirección de radio y el número de endpoint; por su parte, el indirecto necesita toda la información relevante (dirección, endpoint, cluster y atributo) y la envía al coordinador de la red, que mantiene esta información por él y traduce sus peticiones de comunicación. Este direccionamiento indirecto es especialmente útil para favorecer el uso de dispositivos muy sencillos y minimizar el almacenamiento interno necesario. Además de estos dos métodos, se puede hacer broadcast a todos los endpoints de un dispositivo, y direccionamiento de grupos para comunicarse con grupos de endpoints de uno o varios dispositivos distintos. 4.15 Seguridad. La seguridad de las transmisiones y de los datos son puntos clave en la tecnología ZigBee. ZigBee utiliza el modelo de seguridad de la subcapa MAC IEEE 802.15.4, la cual especifica 4 servicios de seguridad. Diego Francisco Larios Marín Enrique Personal Vázquez 22 Red de Sensores de Medidas de Consumo Eléctrico Información de protocolos de comunicación Anexo Control de accesos: El dispositivo mantiene una lista de los dispositivos comprobados en la red. Datos Encriptados: Los cuales usan una encriptación con un código de 128 bits. Integración de tramas: Protegen los datos de ser modificados por otros. Secuencias de refresco: Comprueban que las tramas no han sido reemplazadas por otras. El controlador de red comprueba estas tramas de refresco y su valor, para ver si son las esperadas. 4.15.1 Modelo básico de seguridad. Las claves son la base de la arquitectura de seguridad y, como tal, su protección es fundamental para la integridad del sistema. Las claves nunca deben transportarse utilizando un canal inseguro, si bien existe una excepción momentánea que se da en la fase inicial de la unión de un dispositivo desconfigurado en una red. La red ZigBee debe tener particular cuidado, pues una red ad hoc puede ser accesible físicamente a cualquier dispositivo externo y el entorno de trabajo no se puede conocer de antemano. Las aplicaciones que se ejecutan en concurrencia utilizando el mismo transceptor deben, así mismo, confiar entre sí, ya que por motivos de coste no se asume la existencia de un cortafuegos entre las distintas entidades del nivel de aplicación. Los distintos niveles definidos dentro de la pila de protocolos no están separados criptográficamente, por lo se necesitan políticas de acceso, que se asumen correctas en su diseño. Este modelo de confianza abierta (open trust) posibilita la compartición de claves disminuyendo el coste de forma significativa. No obstante, el nivel que genera una trama es siempre el responsable de su seguridad. Todos los datos de las tramas del nivel de red han de estar cifradas, ya que podría haber dispositivos maliciosos, de forma que el tráfico no autorizado se previene de raíz. De nuevo, la excepción es la transmisión de la clave de red a un dispositivo nuevo, lo que dota a toda la red de un nivel de seguridad único. También se posible utilizar criptografía en enlaces punto a punto. 4.15.2 Arquitectura de seguridad. ZigBee utiliza claves de 128 bits en sus mecanismos de seguridad. Una clave puede asociarse a una red (utilizable por los niveles de ZigBee y el subnivel MAC) o a un enlace. Las claves de enlace se establecen en base a una clave maestra que controla la correspondencia entre claves de enlace. Como mínimo la clave maestra inicial debe obtenerse por medios seguros (transporte o preinstalación), ya que la seguridad de toda Diego Francisco Larios Marín Enrique Personal Vázquez 23 Red de Sensores de Medidas de Consumo Eléctrico Información de protocolos de comunicación Anexo la red depende de ella en última instancia. Los distintos servicios usarán variaciones unidireccionales (one-way) de la clave de enlace para evitar riesgos de seguridad. Es claro que la distribución de claves es una de las funciones de seguridad más importantes. Una red segura encarga a un dispositivo especial la distribución de claves: el denominado centro de confianza (trust center). En un caso ideal los dispositivos llevarán precargados de fábrica la dirección del centro de confianza y la clave maestra inicial. Si se permiten vulnerabilidades momentáneas, se puede realizar el transporte como se ha descrito. Las aplicaciones que no requieran un nivel especialmente alto de seguridad utilizarán una clave enviada por el centro de confianza a través del canal inseguro transitorio. Por tanto, el centro de confianza controla la clave de red y la seguridad punto a punto. Un dispositivo sólo aceptará conexiones que se originen con una clave enviada por el centro de confianza, salvo en el caso de la clave maestra inicial. La arquitectura de seguridad está distribuida entre los distintos niveles de la siguiente manera: El subnivel MAC puede llevar a cabo comunicaciones fiables de un solo salto. En general, utiliza el nivel de seguridad indicado por los niveles superiores. El nivel de red gestiona el ruteo, procesando los mensajes recibidos y pudiendo hacer broadcast de peticiones. Las tramas salientes usarán la clave de enlace correspondiente al ruteo realizado, si está disponible; en otro caso, se usará la clave de red. El nivel de aplicación ofrece servicios de establecimiento de claves al ZDO y las aplicaciones, y es responsable de la difusión de los cambios que se produzcan en sus dispositivos a la red. Estos cambios podrían estar provocados por los propios dispositivos (un cambio de estado sencillo) o en el centro de confianza, que puede ordenar la eliminación de un dispositivo de la red, por ejemplo. También encamina peticiones de los dispositivos al centro de seguridad y propaga a todos los dispositivos las renovaciones de la clave de red realizadas por el centro. El ZDO mantiene las políticas de seguridad del dispositivo. 4.16 Técnicas de Modulación. ZigBee opera en dos bandas de frecuencia: • 2,4 GHz con tasa máxima de transferencia de 250 Kbps, para este caso, modula en O-QPSK (Modulación con desplazamiento de fase en cuadratura con desplazamiento temporal). Diego Francisco Larios Marín Enrique Personal Vázquez 24 Red de Sensores de Medidas de Consumo Eléctrico Información de protocolos de comunicación Anexo • 868-928 MHz para tasa de datos entre 20 y 40 Kbps, para este otro, modula en BPSK (Modulación con desplazamiento de fase binaria). 4.16.1 Modulación OQPSK (Offset Quadrature Phase Shift Keying). La modulación OQPSK consiste en realizar una transición de fase en cada intervalo de señalización de bits, por portadora en cuadratura. 4.16.2 Modulación BPSK (Binary Phase Shift Keying). En esta modulación se tiene como resultados posibles dos fases de salida para la portadora con una sola frecuencia. Una fase de salida representa un uno lógico y la otra un cero lógico. Conforme la señal digital de entrada cambia de estado, la fase de la portadora de salida se desplaza entre dos ángulos que están 180° fuera de fase. 4.16.3 ZigBee y su espectro compartido con WLAN. • Un canal entre 868MHz y 868,6MHz, Ch1 hasta Ch10. • Diez canales entre 902,0MHz y 928,0MHz, Ch1 hasta Ch10. • Dieciséis canales entre 2,4GHz y 2,4835GHz, Ch11 hasta Ch26. El estándar ZigBee especifica una sensibilidad en el receptor de -85dBm en la banda de los 2,4GHz. Y un sensibilidad de -92dBm en la banda 865/915MHz. 4.17 Aplicaciones. Los protocolos ZigBee están definidos para su uso en aplicaciones embebidas con requerimientos muy bajos de transmisión de datos y consumo energético. Se pretende su uso en aplicaciones de propósito general con características autoorganizativas y bajo coste (redes en malla, en concreto). Puede utilizarse para realizar control industrial, domótica, recolectar datos médicos, ejercer labores de detección de humo o intrusión. La red en su conjunto consume una cantidad muy pequeña de energía de forma que cada dispositivo individual pueda tener una autonomía de hasta 5 años antes de necesitar un recambio en su sistema de alimentación. Diego Francisco Larios Marín Enrique Personal Vázquez 25 Red de Sensores de Medidas de Consumo Eléctrico Información de protocolos de comunicación Anexo Figura 6: Aplicaciones ZigBee. Comparación de Tecnologías Inalámbricas Wi-fi Bluetooth 2.4GHz 2.4GHz ~ 1Mb ~ 1Mb Tasa de Transferencia 11Mbps 1Mbps Números de Canales 11 - - 14 79 Digital Digital, Audio ZigBee 2.4GHz, 868 / 915 MHz ~ 20kb 250kbps (2.4GHz) 40kbps (915MHz) 20kbps (868MHz) 16 (2.4GHz) 10 (915MHz) 1 (868MHz) Digital (Texto) 100m 10m - 100m 10m - 100m 32 8 255 / 65535 Media - Horas de Batería Media - Días de Batería Muy Baja - Años de Batería Alta Media Baja Arquitecturas Estrella Estrella Mejores de Aplicaciones Consumo de Potencia Precio Complejidad Edificio con Internet Adentro 400ma transmitiendo, 20ma en reposo Costoso Complejo Computadoras y Teléfonos 40ma transmitiendo, 0.2ma en reposo Accesible Complejo Bandas de Frecuencias Tamaño de Pila Tipos de Datos Rango de Nodos Internos Números de Dispositivos Requisitos de Alimentación Introducción al Mercado Estrella, Árbol, Punto a Punto y Malla Control de Bajo Costo y Monitoreo 30ma transmitiendo, 3ma en reposo Bajo Simple Tabla 10: Tabla comparativa de redes inalámbricas. Diego Francisco Larios Marín Enrique Personal Vázquez 26 Red de Sensores de Medidas de Consumo Eléctrico Información de protocolos de comunicación Anexo 4.18 Criterios de selección de una antena para ZigBee5. La antena es uno de los componentes más importantes para que el rendimiento de las comunicaciones inalámbricas sea eficiente. Figura 7: Diferentes tipos de antena. Existen muchos tipos de antenas donde escoger para una aplicación concreta. Tamaño, costo y rendimiento son los factores más importantes a considerar cuando se escoge una antena. Los tipos más comunes de antena son las antenas PCB, las antenas cerámicas tipo chip y las antenas de varilla con conector. La siguiente tabla resume las ventajas e inconvenientes de las mismas. Tipo PCB Ventajas • Bajo coste. • Es posible obtener un buen rendimiento. • Es posible obtener un pequeño tamaño para frecuencias lo suficientemente altas. Cerámica • Pequeño tamaño. Varilla • Alto rendimiento. Inconvenientes • Es muy difícil diseñar antenas pequeñas y eficientes. • Para bajas frecuencias, su tamaño es muy grande. • • • • Rendimiento medio. Costo medio. Alto coste. Es difícil poder integrarla en muchas aplicaciones. Tabla 11: Ventajas e inconvenientes de los diferentes tipos de antenas 5 Una descripción más detallada referente a la selección de antenas se puede encontrar en la nota de aplicación SWRA161 de Texas Instrument. Diego Francisco Larios Marín Enrique Personal Vázquez 27 Red de Sensores de Medidas de Consumo Eléctrico Información de protocolos de comunicación Anexo Es muy común clasificar las antenas como simples o diferenciales. Las antenas simples también se le conocen con el nombre de desbalanceadas, mientras que las diferenciales reciben el nombre de balanceadas. Las antenas simples son excitadas con una señal referida al plano de masa y su impedancia característica es 50 ohmios. La mayoría de las medidas que se hacen a los equipos de RF se hacen también considerando esta referencia de 50 ohmios. Debido a esto, es fácil medir las características de las antenas de 50 ohmios con estos equipos. De todas formas, muchos integrados RF tienen salida diferencial, lo que ocasiona la necesidad de utilizar redes de adaptación para poder usar antenas simples. La red que convierte una señal balanceada a una desbalanceada se denomina habitualmente balun. La siguiente figura muestra una antena simple y una antena diferencial. En esta figura se observa que la antena diferencial está conectada directamente, mientras que la simple requiere el uso de un balun. Figura 8: Antena simple y diferencial. Las antenas que se describen en este apartado están pensadas para usarse en la banda libre que va de 2,4-2,4835GHz. 4.18.1 Antena PCB. El diseño de este tipo de antenas no es trivial y generalmente requiere del uso de herramientas de simulación para obtener una solución aceptable. Por esto, obtener un diseño óptimo requiere del empleo de muchas simulaciones, lo que presenta un coste elevado tanto de recursos como de tiempo. En contrapartida, como ventaja, son las que presentan una menor relación calidad precio. Diego Francisco Larios Marín Enrique Personal Vázquez 28 Red de Sensores de Medidas de Consumo Eléctrico Información de protocolos de comunicación Anexo Debido a la dificultad de su diseño, en la mayoría de los casos, nos ceñiremos a los diseños suministrados por los propios fabricantes de los transceivers de comunicación6. Si estos diseños no son viables en nuestro diseño, lo mejor es consultar a un profesional en el diseño de antenas o considerar otras soluciones. 4.18.2 Antenas cerámicas en chip. Si el espacio del que se dispone es muy reducido, el uso de una de estas antenas es una buena solución. Estas antenas permiten un tamaño muy pequeño siempre que las frecuencias sean superiores al gigahertzio. La principal desventaja de esta solución frente a la PCB es que añade costo de montaje y de componente. Su costo típico varía entre 0,1$ y 1$, ahora bien, generalmente requieren de un circuito de adaptación para obtener un rendimiento correcto, circuito que encarece el costo y la complejidad. El rendimiento de estas antenas se describe en los datasheet del fabricante. Ahora bien, si no se respeta el diseño que ha utilizado éste para realizar las mediciones, el rendimiento obtenido puede ser mucho menor. En estos diseños, si bien la antena es muy pequeña, se emplea planos de masas cuyas dimensiones son considerables en comparación con el tamaño de antena, por lo que el área necesaria para implementar esta antena de forma correcta crece considerablemente. Aún así generalmente es menor que el requerido por una antenas PCB. 4.18.3 Antenas de varilla. El factor más importante de este tipo de antenas es su elevado rendimiento, siempre y cuando el costo y el tamaño no sean características críticas. Normalmente estas antenas son monopolares con un patrón de radiación omnidireccional, lo que significa que tiene prácticamente el mismo rendimiento en todas las direcciones del plano. Normalmente estas antenas se montan sobre un plano de masa para obtener el mejor rendimiento. En contrapartida, estas antenas son más caras que las cerámicas y además requieren del uso de un conector que encarece aún más el coste, debido a que según la aplicación, para cumplir con la normativa, se requieren de unos conectores especializados. 6 Un ejemplo de estos diseños se pueden encontrar en la dirección www.ti.com/lpw. Diego Francisco Larios Marín Enrique Personal Vázquez 29 Red de Sensores de Medidas de Consumo Eléctrico Información de protocolos de comunicación Anexo 4.18.4 Ejemplo de antena para ZigBee. Como ejemplo, y con el fin de mostrar los parámetros que suelen acompañar a una antena, se presenta como ejemplo la siguiente antena PCB: Figura 9: Vista de detalle de la antena. La antena escogida7 como ejemplo posee unas características tales como un radio VSWR menor que 2 alrededor de la banda ISM de 2,4GHz cuando se conecta a una fuente de 50 ohmios, como la que presentan típicamente los driver ZigBee, todo esto con unas dimensiones no mayores de 15,2 x 5,7mm, tamaño lo suficientemente pequeño como para que se pueda implementar en un dispositivo USB no mayor que un pendrive. La antena seleccionada se denomina normalmente antena en F invertida (cuya abreviatura en ingles es IFA). Esta antena presenta una impedancia de 50 ohmios sin necesidad de componentes adicionales. Esta antena se diseñó con el fin de cumplir con el objetivo de presentar una reflexión menor de -10dB alrededor de toda la banda ISM de 2,4GHz cuando se conecta a una fuente de 50 ohmios de impedancia. Que la reflexión sea menor que -10dB o que el VSWR sea menor que 2 garantiza que más del 90% de la potencia entregada por el driver es aprovechada por la antena. En esta documentación se considera como ancho de banda aquel margen de frecuencias en el que el aprovechamiento de la potencia de la antena es mayor del 90%, lo que en este caso es mayor que toda la banda ISM de 2,4GHz, resultando esto muy útil para la aplicación ZigBee. Otras características que se han exigido a este diseño son unas reducidas dimensiones, que le permitan integrarla en un lápiz USB, junto con un buen rendimiento cuando dicho lápiz esté conectado a un PC. 7 Esta antena se describe detalladamente en la nota de aplicación SWRA117D de Texas instrument. Diego Francisco Larios Marín Enrique Personal Vázquez 30 Red de Sensores de Medidas de Consumo Eléctrico Información de protocolos de comunicación Anexo Todas estas características hacen que este diseño encaje perfectamente en esta aplicación concreta. 4.18.4.1 Simulación de las características de la antena. Esta antena en su diseño de referencia ha sido testeada con la herramienta de simulación electromagnética IE3D de Zeland. En este software se consigue una precisión mayor a medida que se aumenta el parámetro mesh, lo que generalmente también ocasiona de manera drástica los tiempos de simulación. Con un valor de mesh 1 y mesh 5 se obtienen los siguientes resultados, que se pueden observar resultan una buena aproximación de los valores reales obtenidos. Figura 10: Comparación entre simulaciones y resultados obtenidos. 4.18.4.2 Layout e implementación de la antena. Las dimensiones y el layout de la antena son los siguientes: Diego Francisco Larios Marín Enrique Personal Vázquez 31 Red de Sensores de Medidas de Consumo Eléctrico Información de protocolos de comunicación Anexo Figura 11: Dimensiones de la antena. Segmento L1 L2 L3 L4 L5 L6 W1 W2 D1 D2 D3 D4 D5 D6 Medida 3.94 mm 2.70 mm 5.00 mm 2.64 mm 2.00 mm 4.90 mm 0.90 mm 0.50 mm 0.50 mm 0.30 mm 0.30 mm 0.50 mm 1.40mm 1.70 mm Tabla 12: Dimensiones de la antena. En la nota de aplicación Texas Instrument especifica que pequeños cambios en las dimensiones de la antena pueden ocasionar grandes cambios en el rendimiento, por lo que aconseja encarecidamente copiar exactamente el diseño que ellos ofrecen, para lo que recomiendan importar directamente el gerber o el archivo DXF del layout de la nota de aplicación donde aparece la antena8, para asegurarse una copia exacta. 8 Estos ficheros, denominados IFA_USB.spl e IFA_USB.dxf respectivamente se incluyen en los archivos adjuntos de la nota de aplicación del lápiz USB CC2511, disponible en la web www.ti.com/lpw. Diego Francisco Larios Marín Enrique Personal Vázquez 32 Red de Sensores de Medidas de Consumo Eléctrico Información de protocolos de comunicación Anexo 4.18.4.3 Resultados experimentales. En el diseño de referencia se ha medido la reflexión, el patrón de radiación y la variación de potencia de salida frente a la frecuencia, para comprobar el rendimiento de la antena. 4.18.4.3.1 Reflexión. Mediante un analizador de red, en el diseño de referencia se obtuvieron los siguientes resultados: Figura 12: Resultados de reflexión. Se puede apreciar que en este caso se obtiene un ancho de banda de unos 250MHz, lo que es más que suficiente para cubrir todo el rango ISM de 2,4GHz. 4.18.4.3.2 Patrón de radiación. El diseño de referencia se midió en una cámara anecoica obteniéndose los siguientes resultados, realizando todas las mediciones con una potencia de salida de 0dBm. Diego Francisco Larios Marín Enrique Personal Vázquez 33 Red de Sensores de Medidas de Consumo Eléctrico Información de protocolos de comunicación Plano XY Plano YZ Anexo Plano XZ Figura 13: Planos de radiación. Polarización vertical Polarización horizontal Figura 14: Radiación en el plano XY. Polarización vertical Polarización horizontal Figura 15: Radiación en el plano XZ. Diego Francisco Larios Marín Enrique Personal Vázquez 34 Red de Sensores de Medidas de Consumo Eléctrico Información de protocolos de comunicación Polarización vertical Anexo Polarización horizontal Figura 16: Radiación en el plano YZ. 4.18.4.3.3 Potencia de salida. Para realizar esta medición sobre el diseño de referencia se programó el dispositivo con una salida de 0 dBm con la antena en horizontal, lo que se corresponde con 0º en el plano XY. La máxima potencia se midió a la frecuencia de 2,54GHz, obteniéndose los resultados que aparecen en la siguiente figura. Figura 17: Potencia de salida. Diego Francisco Larios Marín Enrique Personal Vázquez 35 Red de Sensores de Medidas de Consumo Eléctrico Información de protocolos de comunicación Anexo 4.18.4.3.4 Emisión de armónicos y espureos. En el diseño de referencia se detectó un segundo armónico en emisión. Sobre este segundo armónico no se detectaron más picos en la emisión. Los resultados obtenidos son los siguientes: Potencia de salida 2,.44 GHz 4,88 GHz 1 dBm 96.9 dBµV/m 56.1 dBµV/m 0 dBm 96.1 dBµV/m 54.3 dBµV/m -2 dBm 93.1 dBµV/m 52.5 dBµV/m Tabla 13: Potencia de salida medida y armónicos. Estos valores cumplen con los requerimientos de la FCC y de la ETSI, cuyos límites se muestran en la siguiente tabla: EN 300 328 EN 300 440 FCC 15.247 FCC 15.249 125 dBµV/m 2.4 – 2.483 GHz 20 dBm 10 dBm 94 dBµV/m 116 dBµV/m 2. harm -30 dBm -30 dBm 54 dBµV/m 54 dBµV/m Tabla 14: Límites de las normas ETSI y FCC. Debido a esto, se puede usar esta antena en diseños que exijan el cumplimiento de las normas FCC y ETSI. Los resultados medidos se exponen a continuación. Frecuencias 1 – 5GHz. Frecuencias 5.5-8.5GHz. Figura 18: Emisión de ruido y armónicos Diego Francisco Larios Marín Enrique Personal Vázquez 36 Red de Sensores de Medidas de Consumo Eléctrico Información de protocolos de comunicación Anexo 4.18.4.4 Conclusiones. Teniendo en cuenta lo comentado anteriormente se puede concluir que poseen muy bajo coste y rendimiento relativamente alto, siempre y cuando se parta de un diseño correcto. Las características más importantes de esta antena usada de ejemplo se resumen en la siguiente tabla. Parámetro Ganancia en el plano XY Ganancia en el plano XZ Ganancia en el plano YZ Rango LOS Dimensiones Valor 4,5 dB 5,3 dB 5,3 dB 240 m 15,2 x 5,7 mm Tabla 15: Resumen de características. A la vista de estos resultados se puede concluir que con este diseño de referencia se puede construir una antena que cumpla con las normas ETSI y FCC a un coste muy asequible, por lo que para la mayoría de las aplicaciones, siempre y cuando el espacio físico no sea demasiado crítico, la antena PCB es una solución óptima. Diego Francisco Larios Marín Enrique Personal Vázquez 37 Red de Sensores de Medidas de Consumo Eléctrico Información de protocolos de comunicación Anexo Sevilla a 10 de Septiembre de 2009 Los Ingenieros Diego Francisco Larios Marín Enrique Personal Vázquez