24
Universidad Iberoamérica Implementación de protocolo de comunicación basado en DNP3 para enlazar sistemas de control supervisorio vía inalámbrica con controladores industriales (PLC) José Roberto Islas González Ingeniería Electrónica, Departamento de Ingenierías Universidad Iberoamericana, Ciudad de México México D.F, 01210, México. Marzo 2008

Documento Fina dnp3

Embed Size (px)

Citation preview

Page 1: Documento Fina dnp3

Universidad Iberoamérica

Implementación de protocolo de comunicación basado en DNP3 para enlazar sistemas de control supervisorio vía inalámbrica con controladores

industriales (PLC)

José Roberto Islas González

Ingeniería Electrónica, Departamento de Ingenierías Universidad Iberoamericana, Ciudad de México

México D.F, 01210, México.Marzo 2008

Sinodal: Alejandro Gómez Terán

Page 2: Documento Fina dnp3

Objetivo

El objetivo fundamental de esta tesis cosiste en proponer una implementación de protocolo de comunicación basado en DNP3 que permita enlazar sistemas de control supervisorio vía inalámbrica con controladores industriales (PLC). Dicho diseño pretende ser suficientemente general como para ofrecer soluciones aplicables a diversos sectores industriales,

Introducción

En la actualidad y durante los próximos años se apreciará un incremento notable en el mercado de las aplicaciones inalámbricas. Desde el punto de vista del usuario la tecnología inalámbrica le permitirá una alta movilidad y una simplicidad de conexión. Desde el punto de vista de los diseñadores estas técnicas de comunicación tendrán limitaciones de energía y espectro, surgiendo paradigmas como el bajo consumo y ruido industrial. Para poder definir los protocolos de comunicación es necesario determinar y predecir la estabilidad de dicho protocolo y cómo éste garantiza la seguridad del enlace, si la información enviada o recibida llega completa ó simplemente tener conocimiento del tamaño en memoria que ocupan. Al observar las necesidades con las que debe cumplir un protocolo para su aplicación en sistemas de control supervisorio y adquisición de datos (SCADA), se establecen especificaciones concretas que Distributed Network Protocol (DNP3) satisface pues ha sido concebido y diseñado para operar en ambientes típicos de la industria. Adicionalmente DNP3 es una recomendación de protocolo independiente del medio por lo cual es posible implementarlo con ciertas adecuaciones a un modelo de comunicación inalámbrica.

La tecnología inalámbrica Bluetooth ha sido concebida para dar soporte a aplicaciones tales como la sustitución de cables, y orientada a dimensiones reducidas, bajo consumo y velocidad de transmisión media. Algunos ejemplos pueden ser la telefonía doméstica o la interconexión de periféricos de ordenador. Sin embargo, el potencial de los módemsBluetooth no finaliza ahí. Como toda nueva tecnología, admite usos alternativos, distintos de aquellos para los que fue concebida. Una de las principales motivaciones para descubrir dichos usos son las excelentes previsiones de precio de los módems Bluetooth. Podemos pensar, por tanto, en el beneficio que aportaría a la industria cualquier implantación masiva que fuese novedosa.

Las PDAs, Laptops y cualquier dispositivo móvil con comunicación inalámbrica tienen innumerables aplicaciones: en medicina, permiten acceder al historial de un paciente en cualquier situación. En entornos industriales, un operador puede consultar manuales de mantenimiento para reparaciones. Un guardia puede observar las cámaras de vigilancia mientras realiza su ronda, sin necesidad de desplazarse a la sala de monitores. Los ejemplos solo están limitados por la imaginación. En esta tesis doctoral presentamos dos contribuciones al desarrollo de aplicaciones móviles basadas fundamentalmente en tecnología Bluetooth: un sistema de monitoreo industrial, y un sistema de control con restricciones de tiempo real.

Page 3: Documento Fina dnp3

Descripción del protocolo DNP3

DNP3 esta basado en los estándares del comité técnico electrotécnico internacional 57, grupo de funcionamiento 3 de la Comisión (IEC), quiénes han estado trabajando en la capa 3 del modelo OSI, para los usos del telecontrol.

DNP3 fue desarrollado por Harris, productos distribuidos de la automatización. En noviembre de 1993, la responsabilidad de definir especificaciones DNP3 y las propiedades adicionales de las especificaciones DNP3 se torno sobre el grupo de usuarios DNP3, un grupo integrado por utilidades y a los vendedores que están utilizando el protocolo.

DNP3 es un protocolo abierto y público. Para asegurar interoperabilidad, la longevidad y el mejoramiento constante, el grupo de usuarios DNP3 ha tomado la responsabilidad de su evolución. El comité técnico del grupo de usuarios DNP3 sugirió modificaciones o adiciones al protocolo y después enmienda la descripción del protocolo según lo dirigido por los miembros del grupo de usuarios.

La documentación completa del protocolo está disponible para el público. Los cuatro documentos de la base que definen DNP3 son: Descripción del protocolo de capa de la transmisión de datos, funciones del transporte, descripción del protocolo de capa de uso y biblioteca de objetos de los datos (referidas como “el documento básico 4”).

El grupo de usuarios también tiene disponible para los miembros el documento “definiciones del subconjunto de DNP3” que ayuda a los que implementan a identificar los elementos del protocolo que deben ser puestos en ejecución.

Características de DNP3

DNP3 ofrece flexibilidad y la funcionalidad que va más allá de protocolos de comunicaciones convencionales. Entre sus características robustas y flexibles DNP3 incluye:

Opciones de la salida Asegurar la configuración / las transferencias de archivo Dirección para más de 65.000 dispositivos en un solo acoplamiento Sincronización de tiempo y acontecimientos con impresión horaria Mensajes de difusión Confirmación de la transmisión de datos y de la capa de uso

DNP3 originalmente fue basado en tres capas del modelo OSI: capa de uso, capa de transmisión de datos y capa física. La capa de uso, se basa en los formatos de datos más comunes que existen.

La capa de transmisión de datos prevé varios métodos de recuperar datos tales como interrogación para las clases y las variaciones del objeto. La capa física define lo más comúnmente posible un interfaz simple RS-232 o RS-485.

DNP3 es muy eficiente para ser protocolo multicapa, ya que asegura la integridad de datos.  

Page 4: Documento Fina dnp3

Característica DNPModbus RTU

MMS/UCA 2.0

IEC 60870-5-T101

Modelo de tres capas (OSI)

Usuarios > 500 1000's < 100 100

Diseñado para el entorno

Grupo de usuario y comité técnico

Control en la revisión final de la documentaciónDocumentación definida de los protocolos de pruebaProtocolos independientes para verificar los programasTrayectoria de la migración a las arquitecturas mejoradasSincronización de tiempo y acontecimientos con impresión horariamaestros múltiples y operaciones dl par-a-par

Limitado

Los esclavos no solicitados no necesitan ser votados

Segmentación de mensajes

Asegurar la transferencia de archivos

Mensajes de difusión

Objetos definidos por el usuarios de los datos

Ventajas de DNP3

Porque DNP3 se basa en los requisitos del IEC 870-5, DNP3 es conveniente para el uso en el ambiente entero de SCADA.

Esto incluye RTU a las comunicaciones de IED, comunicaciones maestro esclavo, e incluso casos de par-a-par y usos de la red.

El ser un protocolo basado en la capa de aplicación, DNP3 tiene la flexibilidad de apoyar modos de funcionamiento múltiples tales como pregunta-respuesta, informe-por-excepción votada, respuestas no solicitadas y par-a-par. Permite maestros múltiples y encara inteligencia distribuida.

Los usuarios pueden contar con muchas ventajas al usar DNP3. En un futuro próximo:

Page 5: Documento Fina dnp3

Interoperabilidad entre los dispositivos Pocos protocolos a apoyar en el campo Costes reducidos del software No necesita ningún traductor de protocolos Horario más cortos a la entrega Menos prueba, mantenimiento y entrenamiento Documentación mejorada Prueba independiente de la conformidad Ayuda por el grupo de usuarios independiente y las fuentes de tercera persona.

En las ventajas a largo plazo, posteriores se puede derivar de usar DNP3, el incluir:

Extensión de sistema fácil Vida del producto largo Productos con mayor valor añadido Una adopción más rápida de la nueva tecnología Ahorros importantes en las operaciones

Operación DNP3

DNP3 controla la transmisión en la capa de enlace de datos, usando procedimientos de transmisión ya definidos. Estos procedimientos hacen uso de un byte de control el cual contiene un mensaje para controlar la transmisión.

Los procedimientos definen que acciones son tomadas en cada final, y el byte de control provee de coordinación entre los dos. Define que tipo de transmisión es enviada, el tipo de trama que se usa, y en que parte de la trama se hacen ajustes.

Formato de la trama FT3

Uno de los cuatro formatos especificados por la IEC 870-5-1. Este formato especifica el uso de un encabezado de 10 bytes, seguido opcionalmente de 16 bloques de datos.

El total de tamaño del mensaje es limitado a 292 bytes, el cual nos da una capacidad de datos máxima a 250 bytes.

DNP3 FRAME

HEADER     DATA SECTION    

HEADER

SYNC LENGTHLINK

CONTROLDESTINATION

ADRESS SOURCE ADRESS CRC

Block 0            Block 1     Block n  

Page 6: Documento Fina dnp3

Start Lenght Control Destination Address

Source Adress CRC  

User Data CRC

------

User Data CRC

2 1 1 2 2 2   16 2   1--16 2

header   10   Bytesbody Data 250   Bytes  CRC 32   Bytes  Total 292   Bytes

El bloque del encabezado esta formado por:

Start2 bytes :0564(hex)

LengthCuenta de los datos de usuraos en bytes, esta en el rango de 0-255, 1 byte : FF(hex)

ControlTrama del byte de control

Destination2 bytes de la dirección destino

Source2 bytes de la fuente de la dirección

CRC2 bytes de redundancia cíclica chocadora de código

User DataCada bloque tiene 16 bytes de datos de usuarios. El ultimo bloque contiene 16-1 conforme se va requiriendo, en caso de tener la trama llena se tendrán 10 bytes de datos de usuario.

Bit de Control

DIR PRM FCB FCV  Function Code    

  0 o 1 RES DFC        Bit 7 6 5 4 3 2 1 0

El byte de control nos ayuda a tener un control sobre el flujo de los datos en la capa física, identificando el tipo, e identificando la dirección. La interpretación del byte de control es independiente de la comunicación en cuanto a los mensajes primarios o si son secundarios.Esta formado por

Page 7: Documento Fina dnp3

1. La dirección.2. Mensaje primario3. Cuenta de bits de la trama4. Cuenta de bits de la trama valida 5. BIT de control del flujo de datos6. Código de la función principal

BIT de Dirección

El bit de dirección nos indica la dirección del mensaje entre estaciones maestras y no maestras. Si este bit es 1 esta dirigido a estaciones primarias, si esta en limpio a estaciones no maestras.

Bit Primario

Este bit nos indica si el mensaje es primario (pregunta) o secundario (respuesta). Se usa exclusivamente para interpretar la función en el código. Hay 6 funciones validas para tramas primarias y 5 para secundarias.

Cuenta de bits en la trama y Cuenta de bits en la trama Valida

Estos bits son de uso solamente para los mensajes primarios y son usados para detectar perdidas o duplicados de tramas a una estación secundaria. La Cuenta de bits en la trama Valida activa Cuenta de bits en la trama. Cuando La Cuenta de bits en la trama Valida es verdadera la Cuenta de bits en la trama es accionada por cada envío correcto.

BIT de control de flujo de datos

EL BIT de control del flujo de datos esta incluido en los mensajes secundarios. En las estaciones secundarias el BIT de control del flujo de datos se pondrá en 1 cuando datos de usuarios son enviados y provocan un desbordamiento del buffer. Esto provoca que al tener en activo este bit detiene a la estación primaria dejando de mandar información hasta que este bit se apague.

Códigos de la Función de la Transmisión de Datos

La siguiente tabla nos muestra a detalle los significados de diferentes valores del código de las funciones byte. Los significados varían dependiendo si el mensaje es primario o secundario.

Primario

Function Code Frame Type Service Function

FCV Bit

0 SEND-CONFIRM expected Reset of remote link 0

1 SEND-CONFIRM expectedReset of user

process 0

2 SEND-CONFIRM expectedTest Function for

link 13 SEND-CONFIRM expected User Data 1

Page 8: Documento Fina dnp3

4 SEND-CONFIRM expectedUnconfirmed user

Data 0

9REQUEST-RESPOND

expected Request Link Status 0 Secundario

Function Code Frame Type Service Function

0 CONFIRMACK-positive

acknowledgement

1 CONFIRMNAC-Message not accepted ,link busy

11 RESPOND Status of link(dfc= 0 or 1)14   Link service not functioning

15  Link service not used or

implemented

Versión corta de los códigos de Función

P0 Reset Link S0 Confirm-ACK

P1Reset User

porcess S1Confirm-NACK

P2 Test Link S11 Link Sattus

P3 User Data-confirm S14}not

Functioning

P4User Data-no

confirm S15Not

implemented

P9Request link

Status    

El uso de los códigos de las funciones son descritas en las siguientes secciones por los procedimientos de transmisión.

Error de Control

La primera parte del error de control es detectar cuando un error ocurrió en el mensaje. DNP3 usa un ciclo de redundancia de 16-bit o también llamado CRC (redundancy check code).

El CRC es enviado solamente una ves en la trama del encabezado o comúnmente llamado (header frame) y después una ves por cada bloque hasta los 128 bits de datos de usuario ya transmitidos.Esto es calculando un CRC por cada bloque de datos recibidos y se comparan con los bloques transmitidos, de esta manera los errores van a ser detectados en caso de que ocurran y si el CRC lo decide van a ser indicados. Esta técnica no ha sido totalmente probada.La segunda parte del error de control cosiste en tomar acciones cuando un error es detectado. En cada caso cuando un error es detectado en alguna parte de la trama simplemente la trama es regresada por la capa de enlace de datos.

Page 9: Documento Fina dnp3

Procedimientos de Transmisión

Reset de Enlace

Un reset de enlace es requerido para habilitar la comunicación entre las estaciones primarias y secundarias. Una estación primaria debería mandar una trama reset al iniciar el sistema o después de iniciar un enlace.

Puntos Principales:

1. Usar después al inicio, reinicio o cuando un enlace falló.2. Es responsabilidad de la estación primaria y secundaria de realizar el

reset.3. Iniciar las estaciones primarias y secundarias para enviar-confirmar las

transacciones.4. Sincronizar los contadores de tramas bit para que FCB (trama de bit de

control)=1 este a la expectativa del envió seguido del reset por la segunda estación.

En el siguiente texto se muestra un ejemplo de cómo se vería un byte si hubiera un analizador de protocolos.

De Primario a Secundario (De A - B)

<05 64 05 C0 01 00 0C 00 A0>

Encabezado 05 64Longitud 05Byte de Control C0; DIR=1, PRI=1, FCV=0, FC=RESETDirección Destino 0001Dirección de Origen 000CValor CRC CFA0

De Secundario a Primario (De B-A)

<05 64 05 00 0C 00 01 00 FD E9>

Encabezado 05 64Longitud 05Byte de Control 00; DIR=0, PRI=0, FC=ACKDirección Destino 000CDirección de Origen 0001Valor CRC FDE9

Aquí se nota como el bit DIR es fijado en la rama principal y limpiado en la segunda trama. Esto nos muestra que la transacción es entre una maestro y un no maestro.

Procesos RESET de Usuarios

Page 10: Documento Fina dnp3

1. Usado para resetear los procesos de enlace de usuarios.2. Un ACK (positive acknowledgement) es enviado si es aceptado por los procesos

de usuario3. Por otro lado un NACK (message not accepted) es enviado en respuesta.

Datos de Usuario enviados sin confirmar

Este procedimiento es usado por datos de usuarios enviados sin confirmación por la estación secundaria. La ventaja es que los datos se pueden transmitir en un mayo rango, teniendo un mejor manejo del ancho de banda.

La desventaja es que los errores en la transmisión van a ser perdidos en cualquier parte de la trama. Una trama con errores va a ser regresada por la estación secundaria pero al no tener confirmación la estación primaria nunca va a tener conocimiento de que el mensaje no tuvo éxito.

Estado del Enlace por Petición

Es usado después de recibir un NACK o ACK con DFC=1 durante la transmisión. EL DFC (Control del flujo de datos) bit es puesto por la estación secundaria si el buffer esta lleno o si por algún motivo no puede procesar mas datos. Este proceso es usado cuando un enlace ya no puede aceptar datos.

CRC codito de Error

DNP3 define un checador de código redundante cíclico de 16-bits para detectar unos errores. El 16-bits CRC es proporcionado por un encabezado de 64-bits y por cada 128-bits (16 bytes) bloques de datos de usuarios transmitidos.

Generación de un Mensaje:

1. Se inicia con un bloque de datos de usuarios (M) de K-bits (k=64 de encabezado, 8-128 de cuerpo de bloques)

2. Se multiplica por 2 a la 16 3. Se divide entre un generador polinomial (P) para obtener el cociente (Q)

y el modulo residuo (R) es usado.4. Se descarta Q y se queda R5. Se invierte R para obtener R´6. Se añade R´ a M formando el mensaje T´ para ser transmitido.

Generador Polinomial

P=

Esto forma un número de 17-bit el cual es 13D65 (hex)

Procesamiento de un mensaje recibido

1. Se recibe T´= M seguido por R´

Page 11: Documento Fina dnp3

2. Se invierte R´ y se forma T= M añadido con R 3. Se divide T por P(modulo-2 de la decisión)4. Se descarta coeficiente QC, se queda el residuo calculado de RC 5. SI RC=0, el resultado es bueno, se copia M ala salida de datos6. si RC es diferente a 0 el resultado es malo y se rechaza el mensaje.

Este CRC tiene una distancia de Hamming de 6. Esto significa que por lo menos 6-bits de error se tienen que recibir para obtener una buena adquisición de datos falsa como resultado.

Capa de Transporte (seudo transporte)

La principal función de la capa de transporte para DNP3 es la de implementar el mensaje montándolo y desmontándolo. Esto permite la transmisión de datos en largos bloques y así ser más fácil de manejar por la capa de transmisión de datos.

La unidad de Datos del Protocolo de Transporte

La capa de Transporte toma los datos de usuario, la unidad de datos del servicio de transporte (TSDU) rompe en una o más unidades de datos del protocolo de transporte (TPDUs) y los pasa a la capa de enlace de datos para ser enviados. Los TPDUs se convierten dentro de la capa de enlace de datos y se vuelven LSDUs.

Los LSDUs pueden ser de 250 bytes datos de usuarios como máximo. Esto define el máximo tamaño de los LPDU, incluyendo cualquier capa de transporte anterior. De echo las funciones de transporte están compuestas por un byte de encabezado dejando 249 bytes para llevar datos.

TSDU        1-2048 Bytes | |

| || |

TPDU | TPDU |TH   TH  1 249 1 249

En una estación secundaria o recibidora los TPDUs entrantes son reformados dentro de los TSDU para usarse en la capa de aplicación. De los múltiples TPDMs, los bytes de encabezado transportados son cortados y los TSDU son reformados. La capa de transporte es responsable de asegurarse que los TSDUs sean rearmados en la secuencia correcta.

FIN FIR SEQUENCE SEQUENCE SEQUENCE SEQUENCE SEQUENCE SEQUENCE7 6 5 4 3 2 1 0

FIN = Trama Final FIR = Trama Inicial

FIN FIR

Page 12: Documento Fina dnp3

0 1Trama inicial o

múltiple0 0 No inicial , no final1 0 Trama Final

1 1Un mensaje de la

trama

Reglas

1. SI una estación secundaria recibe una trama con el bit FIR puesto, cualquier trama de secuencia incompleta es descartada.

2. Si una trama es recibida sin un bit FIR puesto, y ninguna secuencia esta en progreso, entonces la trama es ignorada.

3. De la trama inicial el numero de la secuencia puede ser cualquier valor entre 0-63, y se tiene que incrementar por cada trama en la secuencia después de eso.

4. El número de la secuencia debe estar excedente de 0 a 63.

Dirección del Mensaje en la capa de Aplicación

La capa de aplicaron es el nivel mas alto del protocolo, y se comunica directamente con la aplicación del programa. Las estaciones maestras generan niveles en los mensajes para la transmisión en la estación de salida. Las estaciones de salida generan niveles de aplicación en respuesta para la transmisión en las estaciones maestras. Estos mensajes pueden contener comandos, o peticiones de datos provisionales, o simplemente realizar otras funciones como pueden ser tiempos de sincronización.

En DNP3 hay dos tipos de mensajes básicos, peticiones y respuestas. Solo las estaciones maestras pueden enviar una petición y solo las estaciones de salida pueden enviar una respuesta. Hay una clase de respuesta llamada “Respuesta no solicitada” que permite a una estación de salida enviar información a una estación maestra o a un peer (otra estación no maestra).

Descripción de la Tecnología Bluetooth

La tecnología Bluetooth es una tecnología de comunicaciones de corto alcance prevista para sustituir los cables que conectan los dispositivos en movimiento y/o fijos mientras que mantiene altos niveles seguridad. Las características dominantes de la tecnología de Bluetooth son robustez, de baja potencia, y bajo costo. La especificación de Bluetooth define una estructura uniforme para una amplia gama de dispositivos para conectar y para comunicarse uno a otro.

La tecnología de Bluetooth ha alcanzado la aceptación global, tal que cualquier dispositivo Bluetooth permitido, casi por todas partes en el mundo, puede conectar con otros dispositivos permitidos Bluetooth en proximidad. Los dispositivos Bluetooth electrónicos permitidos conectan y se comunican inalámbricamente a través de las redes de corto alcance, (ad hoc) conocidas como piconets o redes de dispositivos Bluetooth.

Cada dispositivo puede comunicarse simultáneamente con hasta siete otros dispositivos dentro de un solo piconet. Cada dispositivo puede también pertenecer a varios piconets simultáneamente. Los Piconets se establecen dinámicamente y así como Bluetooth permitió a los dispositivos incorporarse automáticamente los saca si se salen de rango.

Page 13: Documento Fina dnp3

Un Bluetooth fundamentalmente tiene la fuerza y la capacidad de manejar simultáneamente datos y transmisiones de voz. Esto permite a los usuarios gozar de la variedad de soluciones innovadoras tales como unas manos libres para llamadas de voz, impresión y fax, sincronizar una PDA o computadora portátil, y usos del teléfono móvil por nombrar algunos.

Tecnología Bluetooth

La especificación de Bluetooth define un canal de comunicación de máximo 720 kb/s (1 Mbps de capacidad bruta) con rango óptimo de 10 metros (opcionalmente 100 m con repetidores).

La frecuencia de radio con la que trabaja está en el rango de 2,4 a 2,48 GHz con amplio espectro y saltos de frecuencia con posibilidad de transmitir en Full Duplex con un máximo de 1600 saltos/s. Los saltos de frecuencia se dan entre un total de 79 frecuencias con intervalos de 1Mhz; esto permite dar seguridad y robustez.

La potencia de salida para transmitir a una distancia máxima de 10 metros es de 0 dBm (1 mW), mientras que la versión de largo alcance transmite entre 20 y 30 dBm (entre 100 mW y 1 W).

Para lograr alcanzar el objetivo de bajo consumo y bajo costo, se ideó una solución que se puede implementar en un solo chip utilizando circuitos CMOS. De esta manera, se logró crear una solución de 9x9 mm y que consume aproximadamente 97% menos energía que un teléfono celular común.

El protocolo de banda base (canales simples por línea) combina conmutación de circuitos y paquetes. Para asegurar que los paquetes no lleguen fuera de orden, los slots pueden ser reservados por paquetes síncronos, un salto diferente de señal es usado para cada paquete. Por otro lado, la conmutación de circuitos puede ser asíncrona o síncrona.

Tres canales de datos síncronos (voz), o un canal de datos síncrono y uno asíncrono, pueden ser soportados en un solo canal. Cada canal de voz puede soportar una tasa de transferencia de 64 kb/s en cada sentido, la cual es suficientemente adecuada para la transmisión de voz. Un canal asíncrono puede transmitir como mucho 721 kb/s en una dirección y 56 kb/s en la dirección opuesta, sin embargo, para una conexión asíncrona es posible soportar 432,6 kb/s en ambas direcciones si el enlace es simétrico.

Arquitectura Hardware

El Hardware Que compone el dispositivo Bluetooth esta compuesto por dos partes:

un dispositivo de radio, encargado de modular y transmitir la señal un controlador digital, compuesto por una CPU, por un procesador de señales

digitales (DSP - Digital Signal Processor) llamado Link Controller (o controlador de Enlace) y de los interfaces con el dispositivo anfitrión.

El LC o Link Controller está encargado de hacer el procesamiento de la banda base y del manejo de los protocolos ARQ y FEC de capa física. Además, se encarga de las

Page 14: Documento Fina dnp3

funciones de transferencia (tanto asíncrona como síncrona), codificación de Audio y cifrado de datos.

El CPU del dispositivo se encarga de atender las instrucciones relacionadas con Bluetooth del dispositivo anfitrión, para así simplificar su operación. Para ello, sobre el CPU corre un software denominado Link Manager que tiene la función de comunicarse con otros dispositivos por medio del protocolo LMP.

Entre las tareas realizadas por el LC y el Link Manager, destacan las siguientes: - Envío y Recepción de Datos. - Empaginamiento y Peticiones. - Determinación de Conexiones. - Autenticación. - Negociación y determinación de tipos de enlace. - Determinación del tipo de cuerpo de cada paquete1. - Ubicación del dispositivo en modo sniff o hold.

Versiones

← Bluetooth v.1.1 ← Bluetooth v.1.2 ← Bluetooth v.2.0 ← Bluetooth v.2.1

La versión 1.2, a diferencia de la 1.1, provee una solución inalámbrica complementaria para co-existir bluetooth y Wi-Fi en el espectro de los 2.4 GHz, sin interferencia entre ellos.

La versión 1.2 usa la técnica "Adaptive Frequency Hopping (AFH)", que ejecuta una transmisión más eficiente y un cifrado más seguro. Para mejorar las experiencias de los usuarios, la V1.2 ofrece una calidad de voz (Voice Quality - Enhanced Voice Processing) con menor ruido ambiental, y provee una más rápida configuración de la comunicación con los otros dispositivos bluetooth dentro del rango del alcance, como pueden ser PDAs, HIDs (Human Interface Devices), computadoras portátiles, computadoras de escritorio, Headsets, impresoras y celulares.

La versión 2.0, creada para ser una especificación separada, principalmente incorpora la técnica "Enhanced Data Rate" (EDR) que le permite mejorar las velocidades de transmisión en hasta 3Mbps a la vez que intenta solucionar algunos errores de la especificación 1.2.

La versión 2.1, simplifica los pasos para crear la conexión entre dispositivos, además el consumo de potencia es 5 veces menor.

Uso y Aplicaciones

Conexión sin cables entre los celulares y equipos de manos libres y kit para vehículos.

Red inalámbrica en espacios reducidos donde no sea tan importante un ancho de banda grande.

Comunicación sin cables entre la computadora y dispositivos de entrada y salida. Mayormente impresora, teclado y mouse.

Transferencia de ficheros entre dispositivos vía OBEX. Transferencia de fichas de contactos, citas y recordatorios entre dispositivos vía

OBEX.

Page 15: Documento Fina dnp3

Reemplazo de la tradicional comunicación por cable entre equipos GPS y equipamiento médico.

Controles remotos (tradicionalmente dominado por el infrarrojo) Enviar pequeñas publicidades entre anunciantes y dispositivos con bluetooth. Un

negocio podría enviar publicidad a teléfonos móviles cuyo bluetooth (los que lo posean) estuviera activado al pasar cerca.

Las consolas Sony Playstation 3 y Nintendo Wii traen bluetooth para utilizar mandos inalámbricos.

La tecnología de Bluetooth permite conectar todos los periféricos de la oficina vía inalámbrica. Conectar el PC o el portátil con las impresoras, los escáneres y los faxes sin preocuparse por los cables. Puedes aumentar tu libertad conectando tu mouse o el teclado vía inalámbrica con tu computadora. Las cámaras fotográficas digitales con Bluetooth pueden enviar imágenes y/o video a cualquier lugar sin tener que conectar la cámara con el teléfono móvil.

El Bluetooth permite que haya teléfonos tribanda. Cuando el móvil se encuentra en movimiento funciona como siempre (utilizando la red de células) y cuando se encuentra cerca de otro teléfono con Bluetooth funciona como una radio (hablar entre móviles sin usar la red de telefonía móvil).

Bluetooth vs. Otras Tecnologías

Bluetooth y Wi-Fi cubren necesidades distintas en los entornos domésticos actuales: desde la creación de redes y las labores de impresión a la transferencia de ficheros entre PDA's y ordenadores personales. Ambas tecnologías operan en las bandas de frecuencia no reguladas.

Bluetooth se utiliza principalmente en un gran número de productos tales como teléfonos, impresoras, módems y auriculares. Su uso es adecuado cuando puede haber dos o más dispositivos en un área reducida sin grandes necesidades de ancho de banda. Su uso más común está integrado en teléfonos y PDA's, bien por medio de unos auriculares Bluetooth o en transferencia de ficheros.

Bluetooth tiene la ventaja de simplificar el descubrimiento y configuración de los dispositivos, ya que éstos pueden indicar a otros los servicios que ofrecen, lo que redunda en la accesibilidad de los mismos sin un control explícito de direcciones de red, permisos y otros aspectos típicos de redes tradicionales.

Wi-Fi es similar a la red Ethernet tradicional y como tal el establecimiento de comunicación necesita una configuración previa. Utiliza el mismo espectro de frecuencia que Bluetooth con una potencia de salida mayor que lleva a conexiones más sólidas. A veces se denomina a Wi-Fi la “Ethernet sin cables”.

Aunque esta descripción no es muy precisa, da una idea de sus ventajas e inconvenientes en comparación a otras alternativas. Se adecua mejor para redes de propósito general: permite conexiones más rápidas, un rango de distancias mayor y mejores mecanismos de seguridad.

Page 16: Documento Fina dnp3

Puede compararse la eficiencia de varios protocolos de transmisión inalámbrica, como Bluetooth y Wi-Fi, por medio de la capacidad espacial (bits por segundo y metro cuadrado).

Clase De Dispositivos

La clasificación de los dispositivos bluetooth como "Clase 1", "Clase 2" o "Clase 3" es únicamente una referencia de la potencia de trasmisión del dispositivo, siendo totalmente compatibles los dispositivos de una clase con los de la otra.

Los dispositivos de Clase 1 se definen como con un alcance de 100 metros, mientras que los de Clase 2 llega a los 20/30 metros, y los de Clase 3 a un metro aproximadamente. Si un dispositivo de clase 1 desea conectarse con uno de clase 2, deberán colocarse la distancia del alcance del de clase 2, ya que por más que el otro sea clase 1, debe ponerse a la distancia donde llega el de clase 2.

Cabe aquí aclarar que las distancias que indican las especificaciones son medidas tomando punto a punto dos dispositivos de la misma clase, instalados a campo abierto, sin ninguna interferencia. La realidad es que en instalaciones normales en interiores de edificios, la distancia oscila entre 5 y 25 metros, según las condiciones ambientales.

Además, existen ciertos dispositivos en los que la señal se amplifica hasta un nivel en teoría por encima del máximo permitido por la tecnología. Así, es fácil encontrar a la venta adaptadores USB Bluetooth con un alcance de 150 metros, que son considerados de Clase 1. Por otro lado, mediante técnicas como Bluetooone o Bluesniping se logra, mediante antenas más potentes y/o direccionales, obtener alcances de entre uno y dos kilómetros.

Protocolos Bluetooth

L2CAP, siglas de Logical Link Control and Adaptation Protocol (Protocolo de control y adaptación del enlace lógico) es utilizado dentro de la pila de protocolos de Bluetooth. L2CAP se utiliza para pasar paquetes con y sin orientación a la conexión a sus capas superiores incluyendo tanto al Host Controller Interface (HCI) como directamente al gestor del enlace.

Las funciones de L2CAP incluyen:

Segmentación y reensamblado de paquetes. Acepta paquetes de hasta 64KB de sus capas superior.

Page 17: Documento Fina dnp3

Multiplexación de varias fuentes de paquetes, comprobando el protocolo de las capas superiores para así adaptarlo antes del reensamblaje.

Proporcionar una buena gestión para la transmisión unidireccional a otros dispositivos bluetooth.

Gestión de la calidad de servicio (QoS), del inglés Quality of service; para los protocolos de las capas superiores. En esta fase negocia el tamaño máximo del campo de datos de las tramas. Con ello, evita que algún dispositivo envíe paquetes tan grandes que puedan desbordar al receptor.