Comunicación redundante en tiempo real para una red confiable

Por European Editors

Colaboración de Editores europeos de DigiKey

La red eléctrica es un recurso vital para el mundo de hoy. La fiabilidad de la red eléctrica es de suma importancia, sobre todo con el uso creciente de la generación distribuida y la introducción de microrredes que requieren más inteligencia local en términos de supervisión y control. Todos los sistemas en la red deben cooperar para garantizar que la red sea capaz de proporcionar CA estable y consistente a través del análisis frecuente del estado del voltaje, la frecuencia y los dispositivos de distribución. Este requisito apunta al uso de la supervisión avanzada y las comunicaciones de baja latencia fácilmente disponibles entre los centros de control y los nodos de alto valor, tales como subestaciones, para garantizar que se supervisa de cerca el estado de cada subsistema.

Para ayudar a administrar la infraestructura de la red y proporcionar el nivel necesario de control y comunicación, la industria de distribución eléctrica ha adoptado la norma IEC 61580. Mediante la norma IEC 61580, las señales digitales transmiten información sobre el estado de la alimentación entre las subestaciones y los subsistemas eléctricos través de una red basada en la tecnología Ethernet. Para satisfacer las necesidades cada vez más complejas de los operadores de la red, la norma IEC 61580 ha evolucionado para abarcar una serie de servicios de tiempo crítico, como la sincronización IEEE 1588, el evento de sistema orientado a objeto genérico (GOOSE) y los mensajes de valor muestreado (SV).

Diagrama de los elementos clave de la norma IEC 61580

Figura 1: Elementos clave de la norma IEC 61580 y su relación con Ethernet.

El protocolo GOOSE admite mensajes de publicación-suscripción, lo que es más adecuado para aplicaciones de control distribuido que el modelo tradicional de comunicaciones cliente-servidor utilizado en muchos sistemas de TI. La norma IEC 61580 hace que los mensajes cliente-servidor estén disponibles por separado para admitir la administración de dispositivos por estaciones remotas y otras situaciones en las que se debe acceder directamente a un nodo dentro de una subestación o microrred.

GOOSE permite que los mensajes en tiempo real sobre el estado de varios elementos eléctricos se retransmitan a cualquier dispositivo que necesite verlos. Cada relé, por ejemplo, publica información mediante un único identificador para cada tipo diferente de objeto que contiene para lo cual necesita comunicar el estado. Otros relés y dispositivos pueden suscribirse al flujo del mensaje de estado enviado por el relé de destino. Esto se realiza mediante una combinación de multidifusión a través de la red y el filtrado en los nodos de recepción (el editor no necesita saber quiénes son los suscriptores o si reciben los mensajes). Para obtener el máximo rendimiento, GOOSE no utiliza el protocolo TCP/IP comúnmente empleado. En su lugar, los mensajes GOOSE se colocan directamente en tramas Ethernet. De forma similar, los mensajes SV proporcionan una forma de multidifundir datos para valores que cambian rápidamente, tales como mediciones de voltaje, a receptores de suscripción.

Los servicios provistos en virtud de la norma IEC 61580 incluyen la sincronización de tiempo de acuerdo con la norma IEEE 1588. La norma distribuye señales de sincronización derivadas de un reloj maestro de alta precisión. En muchos sistemas en uso hoy en día, este reloj maestro utiliza las señales de tiempo transmitidas por los satélites del Sistema de posicionamiento global (GPS), cada uno de los cuales contiene un reloj atómico. El reloj maestro alimenta un árbol de relojes esclavos que se clasifican como relojes de frontera (estos están situados en puertas de enlace que pueden actuar como maestros temporales si falla la señal GPS) o relojes comunes que se encuentran dentro de cada uno de los sistemas que necesitan sincronizarse. La información de sincronización se extiende a través del árbol mediante una serie de intercambios de mensajes que necesitan repetirse con intervalos regulares para asegurar que todos los sistemas se mantengan sincronizados.

El protocolo funciona con un reloj maestro que envía un mensaje de sincronización a los esclavos que contiene una marca de tiempo. Poco después envía un mensaje de seguimiento que contiene una marca de tiempo posterior. El esclavo responde con un mensaje que solicita al maestro una estimación de demora, lo que proporciona una respuesta adicional que contiene la fecha y hora en que fue enviada. Al final de este proceso, el esclavo tendrá cuatro marcas de tiempo, tres de las cuales fueron enviadas por el maestro. Con la información de sincronización en la secuencia, el esclavo determina la alteración necesaria para que su reloj interno coincida con el maestro tanto como sea posible.  El protocolo da como resultado una sincronización que, en una red de área local, es típicamente exacta a decenas de nanosegundos.

Otras partes clave de la infraestructura de la norma IEC 61580 son los protocolos de transmisión de datos redundantes. Normalizado en la norma IEC 62439, el protocolo de redundancia en paralelo (PRP) admite comunicación Ethernet dúplex de doble puerto. El protocolo proporciona dos flujos de manejo de paquetes redundantes bajo la interfaz de capa MAC, visto por protocolos de aplicación de capa superior tales como GOOSE y SV. Por lo general, las conexiones Ethernet se realizan a través de diferentes interruptores de Ethernet y asumen una topología de red de cableado en estrella.

Diagrama del protocolo de redundancia (PRP)

Figura 2: El protocolo de redundancia PRP asume una topología de cableado en estrella.

Una alternativa es la redundancia continua de alta disponibilidad (HSR), que también se define en la IEC 62439. La HSR emplea una topología de anillo, siendo cada paquete duplicado y enviado en direcciones opuestas alrededor del anillo hacia el destino. La arquitectura de anillo evita la necesidad de emplear interruptores/enrutadores adicionales a costa de una mayor demora si los paquetes tienen que pasar a través de múltiples nodos para llegar a su destino. Los controladores de comunicaciones avanzados pueden ayudar a minimizar esta demora mediante el uso del reenvío directo. Este enfoque no requiere que se decodifique totalmente un paquete antes de que comience el reenvío al destino.

Diagrama del protocolo de redundancia HSR

Figura 3: El protocolo de redundancia HSR está destinado a una topología de anillo.

Debido a la necesidad de un amplio filtrado de mensajes Ethernet entrantes, la norma IEC 61580 requiere un procesamiento de alto rendimiento que puede reducir la capacidad informática disponible para controlar los algoritmos. Una respuesta es descargar todo el análisis a nivel de red posible para que el procesador host solamente tenga que tratar con mensajes que requieran su atención. Esto se puede lograr en SoC multinúcleos, algunos de los cuales contienen procesadores de red inteligente especializados. Un ejemplo es el microprocesador integrado AM572x Sitara fabricado por Texas Instruments. Está disponible una placa de evaluación que ofrece fácil exploración de su funcionalidad de redes.

El AM572x se basa en el procesador ARM® Cortex®-A15. El dispositivo multinúcleo aumenta el procesador host con un Cortex-M4 que se puede utilizar para descargar tareas intensivas de E/S. También se incluye un par de procesadores de red junto con un procesador de señal digital basado en la arquitectura C66x para realizar el análisis de datos. El subsistema PRU-ICSS en el AM572x proporciona un procesamiento independiente además del disponible en el núcleo ARM. La unidad contiene dos PRU, cada una de las cuales contiene un procesador RISC de 32 bits capaz de funcionar en hasta 200 MHz y una interfaz de red. La disponibilidad de dos núcleos inteligentes independientes proporciona un soporte listo para PRP y HSR.

El procesador RISC en el núcleo PRU no tiene una arquitectura de propósito general. En su lugar, este núcleo está diseñado específicamente para la manipulación de los tipos de estructuras de datos asignadas de memoria empaquetada que se encuentran en las tramas de red. Incorpora una serie de características para soportar aplicaciones que tienen estrictas limitaciones en tiempo real. Se puede realizar cierto grado de filtrado de paquetes en los procesadores PRU. En el AM572x, existe más margen de sobrecarga para protocolos como IEEE 1588, GOOSE y SV disponible en el Cortex-M4.

El Cortex-M4 se puede utilizar para analizar todos los paquetes de multidifusión entrantes y comparar sus direcciones de ID de aplicación (APPID) para las suscripciones válidas que son proporcionadas por el software que se ejecuta en el Cortex-A15. A partir de esto, el M4 puede determinar qué mensajes deben pasar de manera ascendente. Otros paquetes pueden ser eliminados y retirados de la memoria.

Diagrama de IPC de memoria compartida

Figura 4: El IPC de memoria compartida admite la descarga del procesamiento IEC 61580 en el Cortex-M4 y otros procesadores.

Una consideración clave en esta arquitectura de procesamiento descargado es cómo los procesadores individuales se comunican entre sí. El AM572x ofrece una memoria compartida para facilitar el paso de mensajes de un procesador a otro. Los paquetes se pueden formar fácilmente en colas para que puedan escribirse y leerse en secuencia. La pregunta clave es el protocolo que se debe usar. Una opción es usar Linux en el Cortex-A15. Esto permite el uso de interfaces de programación de aplicaciones (API) estándar que ofrece el sistema operativo para comunicaciones entre procesos, tales como remoteproc y rpmsg.

Los sistemas de mensajería rpmsg funcionan al proporcionar un dispositivo virtual que refleja cada canal de comunicación vinculado a un proceso remoto. Los canales están identificados por un nombre textual y tienen una dirección rpmsg local y una dirección rpmsg remota. Cuando un controlador comienza a escuchar un canal, la función de rellamada utilizada para la recepción se vincula a una única dirección rpmsg local de 32 bits. Cuando los mensajes entrantes llegan, el núcleo de rpmsg los envía al controlador apropiado de acuerdo con su dirección de destino. Los mensajes se retransmiten llamando al manipulador de recepción del controlador mientras se proporciona la carga útil del mensaje entrante. A través de este esquema, el código de filtrado para los mensajes GOOSE y SV puede transmitir mensajes con direcciones APPID específicas a diferentes manipuladores que se ejecutan en el Cortex-A15. Alternativamente, todos se pueden agrupar para ser retransmitidos a un procesador de mensajes común y ordenados en el procesador host.

La biblioteca IPC3.x de código abierto disponible en el repositorio Git de TI implementa el software para admitir el uso de rpmsg entre el entorno Linux y TI RTOS que está disponible para los núcleos de Cortex-M4 y DSP. Al proporcionar las mismas API a través de dispositivos de TI, el producto IPC abstrae el soporte específico del dispositivo para spinlock de hardware, buzón de correo entre procesadores y mensaje compatible con rpmsg que pasan a través de la API de MessageQ.

Conclusión

Mediante el multiprocesamiento con soporte de transmisión de mensajes, los dispositivos como el AM572x pueden soportar protocolos de control en tiempo real complejos de forma eficaz, como los diseñados para el trabajo crítico de la administración de infraestructura de red.

DigiKey logo

Descargo de responsabilidad: Las opiniones, creencias y puntos de vista expresados por los autores o participantes del foro de este sitio web no reflejan necesariamente las opiniones, las creencias y los puntos de vista de DigiKey o de las políticas oficiales de DigiKey.

Acerca de este autor

European Editors

Acerca de este editor

Editores europeos de DigiKey