A. Javier Barragán Piña
Publicado en la A. Javier Barragán Piña (http://uhu.es/antonio.barragan)

Principal > 3.2 Protocolo de comunicación DP

3.2 Protocolo de comunicación DP

El protocolo de comunicación DP (Periferia Descentralizada) ha sido diseñado para el intercambio rápido de datos a nivel de campo. Aquí es donde centrales de controladores programables, tales como autómatas programables, ordenadores o sistemas de control de procesos, se comunican con los dispositivos de campo distribuidos, tales como E / S, unidades de disco, válvulas, sensores o dispositivos de análisis, sobre una conexión serie rápida. El intercambio de datos con los dispositivos distribuidos principalmente es cíclica. Las funciones de comunicación necesarios para este se especifica a través de las funciones básicas DP (versión DP-V0). Orientada a las demandas especiales de las distintas áreas de aplicación, estas funciones básicas de DP se han ampliado paso a paso con funciones especiales, por lo que DP ya está disponible en tres versiones; DP-V0, DP-V1 y DP-V2, donde cada versión tiene sus propias características especiales clave (ver fig. 8). Esta ruptura en las versiones refleja en gran medida la secuencia cronológica de trabajo de especificación como resultado de las crecientes demandas de aplicaciones. Las versiones V0 y V1 contienen "las características" (vinculante para la aplicación) y las opciones, mientras que la versión V2 sólo especifica las opciones.

El contenido clave de las tres versiones es el siguiente:

 DP-V0 proporciona la funcionalidad básica de DP, incluyendo el intercambio cíclico así como diagnósticos de estación, diagnósticos de módulo y diagnósticos de canal específico.

 DP-V1 contiene mejoras orientadas hacia los procesos de automatización, en particular en la comunicación de datos acíclica para asignación de parámetros, operación, visualización y manejo  de alarma de dispositivos de campo inteligentes, paralelo a comunicación cíclica de datos de usuario. Esto permite el acceso en línea a las estaciones usando herramientas de ingeniería. Además, DP-V1 define alarmas. Ejemplos de diferentes tipos de alarmas son alarma de estado, alarma de actualización y alarma específica del fabricante.

 DP-V2 contiene mejoras adicionales orientadas principalmente hacia la tecnología de accionadores. Debido a las funciones adicionales, tales como modo esclavo isócrono y comunicación esclavo-esclavo (DXB, Data eXchange Broadcast) etc., el DP-V2 puede ser implementado como un controlador de bus para el manejo de secuencias rápidas de movimientos en los ejes del accionador.
Las distintas versiones de DP están especificadas en detalle en la norma IEC 61158. A continuación se explica las características fundamentales.

 Funcionalidad de las versiones DP con las funciones clave

3.2.1 Funciones básicas DP-V0

 El controlador central (maestro)

  • lee la información entrante desde el esclavo de forma cíclica y
  • escribe la información saliente hasta el esclavo cíclicamente.

 El ciclo temporal del bus tiene que ser menor que el ciclo temporal del programa del sistema central de automatización, que es aproximadamente de 10 ms para la mayoría de las aplicaciones. Sin embargo, únicamente una transferencia de datos no es suficiente para una correcta implementación de un sistema de bus. Manejo sencillo, buenas capacidades de diagnóstico y tecnologías de transmisión a pruebas de interferencias son también factores clave. DP provee una óptima combinación de estas características (ver el sumario en tabla 6).

Acceso al bus

·         Procedimiento de traspaso de testigos entre maestros e intercambio de datos entre maestros y esclavos

·         Opción de sistema de un único maestro o varios maestros

·         Máximo 126 estaciones en un bus, repartidos en maestros y esclavos

Comunicación

·         Punto a punto (comunicación de datos de usuario) o multidifusión (comandos de control)

·         Comunicación cíclica de datos de usuario maestro-esclavo

Estados de operación

·         Operativo: transmisión cíclica de datos de entrada y salida

·         Seguro: las entradas se leen, pero las salidas permanecen en estado a prueba de fallos

·         Parada: Asignación de parámetros y diagnósticos, no hay transmisión de datos de usuario

Sincronización

·         Los comandos de control habilitan la sincronización de entradas y salidas

·         Modo de sincronización: las salidas son sincronizadas

·         Modo de congelación: las entradas son sincronizadas

Funcionalidad

·         Transferencia cíclica de datos de usuario entre el maestro DP y los esclavos

·         Activación/desactivación dinámica de esclavos de forma individual; comprobación de la configuración de los esclavos

·         Potentes funciones de diagnóstico, 3 niveles de mensajes de diagnóstico

·         Sincronización de entradas y/o salidas

·         Asignación opcional de direcciones para esclavos en el bus

·         Máximo 244 bytes de entrada/salida por esclavo

Funciones de protección

·         Transmisión de mensajes con Distancia Hamming HD=4

·         Control de watchdog en esclavos DP detecta fallos del maestro asignado

·         Protección del acceso para las salidas de los esclavos

·         Monitorización de las comunicaciones de datos de usuario con tiempo de monitoreo ajustable en el maestro

Tipos de dispositivos

·         DP maestro de clase 1 (DPM1), por ejemplo controladores programables centrales, tales como PLCs, PCs

·         DP maestro de clase 2 (DPM2), por ejemplo herramientas de ingeniería o diagnóstico

·         DP esclavo, por ejemplo dispositivos con entradas/salidas analógicas o binarias, controladoras, válvulas…

 

Velocidad de transmisión

 DP sólo requiere aproximadamente 1 ms a 12 Mbit/s para la transmisión de 512 bits de entrada y 512 bits de salida de datos distribuidos entre 32 estaciones.

 La figura 9 muestra los tiempos de una transmisión DP típica, dependiendo del número de estaciones y la velocidad de transmisión. Cuando se usa DP, los datos de entrada y salida se transmiten en un único ciclo de mensaje. Con DP, los datos de usuario se transmiten usando los Servicios SRD (Send and Receive Data Service, servicio de envío y recepción de datos) de la capa 2.

 cada esclavo tiene 2 bytes de datos de entrada y salida

Funciones de diagnóstico

 Las exhaustivas funciones de diagnóstico de DP posibilita la rápida localización de fallos. Los mensajes de diagnóstico son transmitidos sobre el bus y recogidos en el maestro. Esos mensajes se dividen en tres niveles:

Diagnóstico Específico del Dispositivo

 Mensajes en la preparación general para el servicio de una estación, tales como “Sobrecalentamiento”, “Baja tensión” o “Interfaz no definida”.

Diagnóstico Relacionado al Módulo

 Estos mensajes indican si un diagnóstico está pendiente dentro de un subdominio I/O específico de una estación (por ejemplo un módulo de 8-bits de salida).

Diagnóstico Relacionado al Canal

 Estos mensajes indican la causa de fallo relacionada a un bit concreto de entrada/salida (canal) tales como “Cortocircuito a la salida”.

Configuración del Sistema y Tipos de Dispositivos

 DP soporta implementación de sistemas tanto de un único maestro como múltiples maestros. Esto aporta un alto grado de flexibilidad durante la configuración del sistema. Un máximo de 126 dispositivos (maestros o esclavos) pueden conectarse al bus. Las especificaciones para la configuración del sistema definen lo siguiente:

  • número de estaciones
  • asignación de direcciones de la estación a las direcciones I/O,
  • consistencia de datos de los datos I/O,
  • el formato de los mensajes de diagnóstico y
  • los parámetros usados en el bus.

Tipos de dispositivos

 Cada sistema DP está compuesto por 3 tipos diferentes de dispositivos.

Maestro DP de Clase 1 (DPM1)

 Es el controlador central que intercambia información cíclicamente con las estaciones distribuidas (esclavos) al ciclo de mensajes especificado. Normalmente, los dispositivos DPM1 son controladores lógicos programables (PLCs) o PCs. Un DPM1 tiene acceso activo al bus mediante el cual puede leer datos de medida (inputs) de los dispositivos de campo y escribir valores de referencia (salidas) a los actuadores en tiempos fijados.  Este ciclo repetido continuamente es la base de la función de automatización.

Maestro DP de Clase 2 (DPM2)

 Este tipo de dispositivos son de ingeniería, configuración o de operación. Estos se implementan durante la puesta en marcha y para mantenimiento y diagnóstico con el fin de configurar los dispositivos conectados, evaluar  los valores y parámetros medidos y solicitar el estado del dispositivo.

Esclavos

 Un esclavo es un periférico (dispositivos I/O, controladoras, HMIs, válvulas, transductores, dispositivos de análisis), el cual lee información del proceso y/o usa información de salida para intervenir en dicho proceso. Hay también dispositivos que únicamente procesan información entrante o información saliente. En el ámbito de comunicación, los esclavos son dispositivos pasivos que sólo responden a peticiones directas. Este comportamiento es simple y de implementación económica (en el caso de DP-v0 está ya implementado completamente en el hardware).

 En el caso de sistemas de un único maestro, solamente un maestro está activo en el bus durante la operación del sistema de bus. La figura 10 muestra la configuración del sistema de un sistema con un solo maestro. El PLC es el componente central de control. El esclavo está acoplado de forma descentralizada al PLC a través del medio de transmisión. Esta configuración del sistema habilita el menor tiempo de ciclo en el bus.

 En la operación con múltiples maestros, varios maestros están conectados a un único bus. Estos representan o subsistemas independientes, que comprende un DPM1 y sus esclavos asignados, o una configuración adicional y dispositivos de diagnóstico. Las imágenes de las entradas y salidas de los esclavos pueden leerse por todos los maestros DP, mientras que solamente un maestro DP (el DPM1 asignado en la configuración) puede escribir en las salidas.

 Sistema PROFIBUS DP mono-maestro

Comportamiento del Sistema

 Para asegurar un alto grado de intercambiabilidad entre dispositivos del mismo tipo, el comportamiento del sistema de DP también ha sido estandarizado. Este comportamiento está determinado principalmente por el estado de operación del DPM1.

 Esto puede controlarse localmente o a través del bus usando la configuración del dispositivo. Existen tres estados principales:

Parada

 No hay comunicación de datos entre el DPM1 y los esclavos.

Seguro

 El DPM1 lee la información de entrada de los esclavos y mantiene las salidas en un estado a prueba de fallos (salida a “0”).

Operación

 El DPM1 se encuentra en la fase de transferencia de datos. En la comunicación de datos cíclica, las entradas se leen de los esclavos y la información de salida se escribe en los esclavos.

 El DPM1 envía cíclicamente su estado a todos sus esclavos asignados en intervalos configurables usando un comando de multidifusión.

 La reacción del sistema ante una falla durante la fase de transmisión de datos del DPM1, por ejemplo un fallo en esclavo, está determinado por el parámetro de configuración “auto clear” (entrada automática en el estado seguro).

 Si este parámetro está puesto en Verdadero,  el DPM1 cambia las salidas de todos los esclavos asignados a un estado a prueba de fallos el momento en el que un esclavo no es está disponible para la trasmisión de datos de usuario. El DPM1 cambia después al estado seguro.

 Si este parámetro está puesto en Falso, el DPM1 mantiene su estado de operación incluso en un evento de fallo y el usuario puede controlar la reacción del sistema.

Comunicación de datos cíclico entre el DPM1 y los esclavos

 La comunicación de datos entre el DPM1 y sus esclavos asignados está controlada de forma automática por el DPM1 en una secuencia recurrente definida (ver figura 11). El usuario define las asignaciones de los esclavo(s) al DPM1 cuando configura el bus. El usuario también define qué esclavos están incluidos o excluidos en ciclo de comunicación de usuario.

 La comunicación de datos entre el DPM1 y los esclavos está divido en tres fases: parametrización, configuración y transferencia de datos. Antes de que el maestro incluya un DP esclavo en la fase de transferencia datos, se inicia una comprobación durante la fase de parametrización y configuración para asegurar que los valores configurados corresponden con la configuración actual del dispositivo. Durante esta prueba, el tipo de dispositivo, formato y longitud de la información y el número de entradas y salidas deben también corresponder. Esto proporciona al usuario una protección fiable frente a errores de parametrización. Además, a la transferencia de datos de usuario, la cual es automáticamente ejecutada por el DPM1, el usuario puede también requerir que la nueva parametrización se envíe a los esclavos.

 Transmisión cíclica de datos de usuario en DP

Modo de sincronización y congelación

 Además, a la comunicación de datos de usuario relacionada a la estación, la cual está manejada de forma automática por el DPM1, el maestro puede también enviar comandos de control a todos los esclavos o a grupos de esclavos de manera simultánea. Estos comandos de control se transmiten como comandos de multidifusión y habilitan los modos de sincronización y congelación para la sincronización controlada por eventos de los esclavos.

 Los esclavos entran en el modo de sincronización cuando reciben un comando de sincronización desde los maestros asignados. Las salidas de todos los esclavos direccionados se congelan en su estado actual. Durante la subsiguiente transmisión de datos de usuario, la salida de datos se almacena en el esclavo mientras los estados de las salidas se mantienen constantes. Las salidas almacenadas no son enviadas a los puertos de salida hasta que el siguiente comando de sincronización se reciba. El modo de sincronización termina con un comando de desincronización.

 De la misma forma, un comando de congelación fuerza la entrada en el modo de congelación a los esclavos direccionados. En este modo, se congela el estado de las entradas en el valor actual. La entrada de datos no se actualiza hasta que el maestro envía el siguiente comando de congelación. El modo de congelación termina con el comando de “descongelación”.

Mecanismos de protección

 Por razones de seguridad, es necesario asegurar que DP tiene protecciones efectivas contra la incorrecta parametrización o fallo en los equipos de transmisión. Para este propósito el maestro DP y los esclavos se equipan con mecanismos de monitorización en la forma de monitores de tiempo. El intervalo de monitorización queda definido durante la configuración.

En el maestro DP

 El DPM1 usa un “Data_Control_Timer” (temportizador de control de datos) para monitorizar la comunicación de los eslavos. Un temporizador independiente se emplea para cada esclavo. El monitor de tiempo se activa si no se ejecuta una transferencia de datos de usuario correctamente dentro del intervalo de monitorización. En este caso, el usuario queda notificado. Si el control automático de errores (Auto_Clear = 1) está activado, el DPM1 sale del estado de operación, cambia las salidas de los esclavos asignados al estado a prueba de errores y pasa al modo seguro.

En el esclavo

 El esclavo emplea el control por wacthdog (perro guardián)  para detectar errores en el maestro o en la transmisión. Si no existe comunicación entre el maestro dentro del intervalo de control del watchdog, el esclavo cambia sus salidas al estado a prueba de fallos de manera automática.

 Además, se requiere protección de acceso para las salidas de los esclavos cuando se opera en sistemas de múltiples maestros. Esto asegura que sólo el maestro autorizado tiene acceso directo. Para todos los demás maestros, los eslavos proporcionan una imagen de sus entradas que puede leerse sin los permisos de acceso.

3.2.2 Versión DP-V1

Comunicaciones de datos acíclicas

 La característica clave de la versión DP-V1 es la función extendida para comunicaciones de datos acíclicas. Esto conforma los requerimientos para la parametrización y calibración de los dispositivos de campo a través del bus durante el tiempo de ejecución y para la introducción de mensajes de alarma confirmados. De forma paralela a la comunicación de datos cíclica, pero con menor prioridad, se ejecuta la transmisión de datos acíclica. La figura 13 muestra algunos ejemplos de secuencias de comunicación. El maestro de clase 1 tiene el testigo (token) y puede enviar mensajes o recuperarlos desde el esclavo 1, esclavo 2, etc. en una secuencia fijada hasta que este alcance el último esclavo de la lista (canal MS0); éste transfiere entonces el testigo al maestro de clase 2. Este maestro puede usar el tiempo restante disponible (“gap”) del ciclo programado para iniciar una conexión acíclica a cualquier esclavo (en la figura 13 esclavo 3) para intercambiar archivos (canal MS2); al final del tiempo del ciclo actual éste devuelve el testigo al maestro de clase 1. El intercambio acíclico de archivos puede durar varios ciclos de exploración o sus “gaps”; al final, el maestro de clase 2 utiliza el “gap” para terminar la conexión. De forma similar, al igual que el maestro de clase 2, el maestro de clase 1 también puede ejecutar intercambios de datos acíclicos con los esclavos (canal MS1).

 Comunicaciones cíclicas y acíclicas en DP-V1

 En la tabla 7 se muestran servicios adiciones disponibles.

Diagnósticos extendidos

 Como una función adicional, el diagnóstico específico del dispositivo de el DP-V1 ha sido mejorado y divido en las categorías de alarmas y mensajes de estado (ver figura 12).

 Configuración de mensajes de diagnóstico en DP-V0 y DP-V1

3.2.3 Versión DP-V2

Comunicación de esclavo a esclavo (DXB)

 Esta función habilita la comunicación directa y de ahorro de tiempo entre los esclavos usando comunicaciones de difusión sin desviarse a través del maestro. En este caso el esclavo actúa como “publicador”, es decir, la respuesta del esclavo no pasa por el maestro coordinador, sino directamente a los demás esclavos involucrados en la secuencia, los llamados “subscriptores” (ver la figura 15). Esto permite a los esclavos leer datos directamente desde otros esclavos y usarlos como entradas propias. Esto abre nuevas posibilidades de aplicaciones, además de reducir los tiempos de respuesta en el bus hasta un 90%.

Modo isócrono

 Esta función habilita el control de reloj síncrono en el maestro y los esclavos, con independencia de la caga del bus. Esta función permite procesos de posicionamiento de alta precisión con una desviación de reloj de menos de un microsegundo. Todos los ciclos de los dispositivos participantes están sincronizados al ciclo del maestro del bus a través de un mensaje de difusión de “control global”. Una señal especial de vida (número consecutivo) permite monitorizar la sincronización. La figura 14 muestra los tiempos disponibles para el intercambio de datos (DX, verde), acceso de un maestro de clase 2 (amarillo) y reserva (blanco). La flecha roja identifica la ruta desde la adquisición de datos actual (TI) pasando por el control (RX) hasta la referencia de la salida de datos (TO), el cual generalmente emplea dos ciclos de bus.

 Modo isócrono

Control del reloj

 Esta función sincroniza todas las estaciones al tiempo del sistema con una desviación de menos de un milisegundo (un maestro en tiempo real envía una marca de tiempo a todos los esclavos sobre el nuevo servicio MS3 sin conexión). Esto permite el seguimiento con precisión de eventos. Esto es particularmente útil para la adquisición de funciones de tiempo en redes con numerosos maestros. Esto facilita el diagnóstico de fallos así como la planificación cronológica de eventos.

Carga y descarga (Zona de carga)

 Esta función permite la carga de datos de cualquier tamaño en un dispositivo de campo con unos pocos comandos. Esto permite, por ejemplo, que los programas sean actualizados o que los dispositivos sean remplazados sin necesidad de procesos de carga manuales.

Invocación de funciones

 El servicio de invocación de funciones permite controlar (iniciar, parar, devolver, reiniciar) programas o llamadas a funciones (por ejemplo la adquisición de valores medidos) en un esclavo DP.

3.2.4 Direccionamiento con Índice y Slot (ranura)

 Cuando se direccionan datos, PROFIBUS asume que la estructura física de los esclavos es modular o puede ser estructurada internamente en unidades de funciones lógicas, también llamadas módulos. Este modelo también es usado en las funciones básicas de DP para las comunicaciones de datos cíclicas, donde cada módulo tiene un número constante de bytes de entradas/salidas que se transmiten en una posición fijada en el telegrama de usuario. El procedimiento de direccionamiento está basado en identificadores, los cuales caracterizan el tipo de módulo como entrada, salida o una combinación de ambos. Todos los identificadores combinados conforman la configuración del esclavo, que también es comprobada por el DPM1 cuando el sistema se inicia.

 La comunicación acíclica de datos está también basada en este modelo. Todos los bloques de datos habilitados para el acceso de lectura/escritura también son considerados como asignados a los módulos y pueden ser direccionados usando número de slot y un índice. El número de slot direcciona al módulo y el índice direcciona el bloque da datos asignado al módulo. Cada bloque de datos puede ser de hasta 244 bytes (ver la figura 16). En el caso de dispositivos modulares, el número de slot está asignado al módulo. Los módulos comienzan en el 1 y son numerados de forma ascendente en una secuencia contigua. El número de slot 0 es para el propio dispositivo.

 Los dispositivos compactos se consideran como una unidad de módulos virtuales. Estos pueden también ser direccionados con un número de slot y un índice.

 A través de la especificación de la longitud en la petición de lectura/escritura también es posible leer/escribir partes del bloque de datos. Cuando el acceso al bloque de datos es satisfactorio, el esclavo envía una respuesta positiva de lectura/escritura o puede, en otro caso, ser capaz de clasificar el problema mediante su respuesta negativa.

 Intercambio de datos esclavo-esclavo

Tabla 7: Servicios para comunicación de datos acíclica

 

Figura 16: Direccionando con espacio e índice

 

Contenidos licenciados bajo Creative Commons by-sa 3.0

Creative Commons License Contenido RSS


URL (Realizado 23 Nov 2025 - 10:36): http://uhu.es/antonio.barragan/content/32-protocolo-comunicacion-dp