Expansión de E/S para sistemas LabVIEW RIO: una comparación detallada

Información general

Los productos de E/S reconfigurable (RIO) han sido usados en aplicaciones a nivel de sistema que requieren control de ciclo cerrado de alta velocidad con medidas de alta precisión en una plataforma flexible de desarrollo. Algunas veces, estas aplicaciones requieren más canales o una arquitectura más distribuida que la que el sistema principal puede ofrecer. Los sistemas de expansión de E/S permiten una topología del sistema de 1 a N con un controlador y "N" arreglos de compuertas programables en campo (FPGAs) y nodos de E/S para sistemas flexibles de gran cantidad de canales que pueden realizar control distribuido y procesamiento. 

Contenido

Todo comienza con el bus

Las necesidades de sistemas de gran cantidad de canales son diversas y la plataforma de expansión de E/S de National Instruments ofrece toda una variedad de productos para cumplir con las diferentes necesidades de estos sistemas. La principal diferencia entre las opciones de expansión de E/S está en el bus que separa la E/S del procesador, como se muestra en la Figura 1.  Cada bus ofrece beneficios y ventajas únicos que lo hacen ideal para un subconjunto de aplicaciones de expansión de E/S.

Figura 1. La expansión de E/S separa al procesador de la E/S. Cada opción de expansión implementa un bus de comunicación distinto entre los dos y se ajusta a diferentes áreas de aplicación.

Comparación de expansión para chasis CompactRIO

Cada opción de expansión de E/S está basada en un bus de comunicación único (MXI-Express, Ethernet, EtherCAT o inalámbrico) que estipula ciertas características del sistema. La tabla 1 resume algunas diferencias clave entre cada opción de expansión de E/S.

 

 

MXI

Utilice el chasis de expansión de alto rendimiento para aplicaciones de gran cantidad de canales.

Ethernet

Añada E/S habilitadas por FPGA en cualquier parte de su red Ethernet.

EtherCAT

Use E/S deterministas por EtherCAT para aplicaciones distribuidas.

 
Cantidad de E/S 8 o 14 ranuras de la serie C 4 u 8 ranuras de la serie C 8 ranuras de la serie C  
FPGA Virtex-5 (LX50/LX85/LX110) Artix-7/Spartan 2M/Spartan 6 (LX45) Spartan 2M  
Topología de la red En serie/estrella Igual que Ethernet En serie/estrella  
Distancia 7 m entre chasis 100 m antes del hub 100 m antes del repetidor  
Sincronización de múltiples dispositivos E/S digitales basadas en FPGA E/S digitales basadas en FPGA Implícito en bus  
Fluctuación de comunicación <10 μs No especificado <1 μs  
Rendimiento del bus 250 MB/s 25 MB/s 12.5 MB/s  
Soporte para API Interfaz host FPGA Interfaz host FPGA/RSI RSI  
Host Windows/Real-Time Windows/Real-Time Real-Time únicamente  

Tabla 1. Una Comparación de las características clave de expansión de E/S

 

MXI-Express RIO

El chasis de expansión MXI-Express RIO ofrece una solución para aplicaciones que requieren alto rendimiento, gran cantidad de canales, E/S mixtas con acondicionamiento de señal y procesamiento de señales personalizado y algoritmos de control. Cada chasis MXI-Express RIO soporta 8 o 14 módulos de E/S de la serie C y ofrece los mejores FPGA Virtex-5 LX50, LX85 o LX110. Los chasis pueden ser conectados en serie hasta seis chasis de profundidad y se comunican a un controlador principal por un enlace cableado PCI Express x1 para rendimiento 20 veces mayor que el chasis de expansión Ethernet o EtherCAT RIO. Este enlace MXI-Express permite conectar a una variedad de sistemas, incluyendo NI CompactRIO multinúcleo y controladores de PC dual-core y quad-core, PXI e industriales que ejecutan NI LabVIEW Real-Time o Windows. Los sistemas MXI-Express RIO son ideales para pruebas de hardware-in-the-loop (HIL), monitoreo de condición de maquinaria industrial, sonido y vibración y aplicaciones complejas de investigación, como las que se encuentran en big physics.

Ethernet RIO

Usted puede usar el chasis Ethernet RIO robusto de 4 u 8 ranuras para añadir E/S distribuidas y habilitadas por FPGA a cualquier red Ethernet. Con la flexibilidad del cableado CAT-5 estándar, usted puede conectar sistemas Ethernet RIO a casi cualquier host que soporte Ethernet, incluyendo controladores PXI NI CompactRIO en tiempo real y el controlador industrial de NI. Usted también puede conectar sistemas de expansión Ethernet RIO a PCs basadas en Windows para crear una red flexible altamente distribuida de E/S mixtas con acondicionamiento de señal habilitadas por FPGA. Con el FPGA integrado, puede implementar interbloqueos de seguridad, control y análisis de señales personalizados que son locales para cada chasis, creando un sistema verdaderamente modular. Los sistemas basados en Ethernet RIO son ideales para aplicaciones en las que la facilidad de uso, el costo y la flexibilidad son críticos. Estas aplicaciones incluyen monitoreo distribuido para medidas de un solo punto como temperatura y flujo.

EtherCAT RIO

EtherCAT (Ethernet Control Automation Technology) RIO es un chasis esclavo de 8 ranuras que implementa comunicación por Ethernet con el protocolo EtherCAT determinístico. EtherCAT RIO le permite añadir E/S habilitadas por FPGA a su sistema de E/S distribuidas o de gran cantidad de canales con una cantidad definida de determinismo y sincronización. Al usar EtherCAT RIO, usted puede conectar en serie múltiples dispositivos esclavo desde un solo maestro y sincronizar las E/S a un solo reloj maestro. EtherCAT RIO es el más adecuado para aplicaciones distribuidas de control y movimiento de un solo punto que requieren alto determinismo en múltiples chasis sincronizados. Los clientes usan EtherCAT RIO para monitoreo estructural de turbinas eólicas, equipos de pruebas sincronizados y aplicaciones de control a larga distancia.

Cantidad de E/S

MXI-Express, Ethernet y EtherCAT

Los sistemas MXI-Express RIO, Ethernet RIO y EtherCAT RIO pueden conectarse a cualquier sensor en cualquier bus a través de módulos de E/S de la serie C. Las E/S están disponibles directamente para el FPGA, dónde usted puede implementar procesamiento de señales en línea, temporización personalizada, disparo especializado y control de ciclo cerrado. Cada módulo de E/S de la serie C contiene acondicionamiento de señales integrado y conectores de terminal de tornillo, BNC o D-SUB. Actualmente, existen más de 100 módulos de la serie C de NI y de terceros para diferentes medidas incluyendo de termopar, voltaje, detector de resistencia de temperatura (RTD), corriente, resistencia, tensión, digitales (TTL y otros), acelerómetros y micrófonos. La cantidad de canales en los módulos individuales van de 3 a 32 canales para cumplir con una amplia variedad de requerimientos del sistema.

FPGA

MXI-Express, Ethernet y EtherCAT

La adopción de circuitos FPGA en las industrias se debe al hecho que los FPGAs combinan las mejores partes de los circuitos integrados de aplicación específica (ASICs) y sistemas basados en procesadores. Ofrecen velocidades temporizadas por hardware y fiabilidad, pero sin requerir altos volúmenes de recursos para compensar el gran gasto que genera un diseño personalizado de ASIC.

El silicio reprogramable también tiene la misma flexibilidad que un software que se ejecuta en un sistema basado en procesador, pero no está limitado por el número de núcleos de procesamiento disponibles. A diferencia de los procesadores, los FPGAs son verdaderamente paralelos por naturaleza, así diferentes operaciones de procesamiento no tienen que competir por los mismos recursos. Cada tarea de procesamiento independiente es asignada a una sección del chip y puede ejecutarse de manera autónoma sin ser afectada por otros bloques de lógica. Como resultado, el rendimiento de una parte de la aplicación no se ve afectado cuando se agregan otros procesos.

 Chasis FPGA Compuertas Flip-Flops LUTs Multiplicador

RAM en bloque 

(kbit)

Ethernet             
NI 9149 Artix-7 -- 106,400 53,200 220 4,480
NI 9148 Spartan-3 2000 2 millones 40,960 40,960 40 720
NI 9147 Artix-7 -- 106,400 53,200 220 4,480
NI 9146 Spartan-6 LX45 -- 54,576 54,576 58 2,088
EtherCAT            
NI 9144 Spartan-3 2000 2 millones 40,960 40,960 40 720
MXI-Express            
NI 9159 Virtex-5 LX110 -- 69,120 69,120 64 4,608

 NI 9157,

NI 9155

Virtex-5 LX85 -- 51,840 51,840 48 3,456
NI 9154 Virtex-5 LX50 -- 28,800 28,800 48 1,728

Tabla 2. Vea los FPGA utilizados en los productos expansión RIO.

 

Topología de la red

MXI-Express RIO

En MXI-Express RIO, usted puede usar configuraciones de conexión en serie o en estrella. El número de chasis posible depende del sistema, pero en general, usted puede alcanzar hasta seis chasis por enlace. El total de chasis en una configuración de conexión en estrella depende de los segmentos del bus PCI disponibles en el controlador principal, con más de 40 chasis posibles en un solo controlador.

EtherCAT RIO

El límite teórico de dispositivos para una red EtherCAT es de 65,535 esclavos y los límites para Fast Ethernet (100 Mbit/s) son similarmente altos. El factor real de límite en el número máximo de dispositivos en este sistema es el número de canales de E/S que usted está implementando, la velocidad del controlador y la aplicación que usted está ejecutando.

Note que todos los chasis en un enlace en serie comparten el mismo "conducto" o ancho de banda con el controlador principal al configurar un sistema y al calcular los requerimientos de rendimiento total. También, la razón del ciclo es afectada por la cantidad de dispositivos y los datos en el bus, ya que cada chasis y cable añade latencia al sistema.

Distancia

 

MXI-Express RIO está limitado a distancias de 7 m entre los chasis en el bus. Los chasis esclavo Ethernet RIO y EtherCAT soportan hasta 100 m antes de necesitar un hub, conmutador o repetidor entre los dispositivos.

Nota: Para ampliar el rango de una red EtherCAT, debe usar un dispositivo EtherCAT compatible; un conmutador Ethernet normal no es compatible con una red EtherCAT. 

Sincronización de múltiples dispositivos

La temporización y sincronización permiten la correlación o coordinación de eventos en el tiempo, lo cual es una parte integral de varias aplicaciones de medidas y control, especialmente cuándo se escalan a grandes cantidades de canales.

MXI-Express RIO y Ethernet RIO

Los chasis MXI-Express RIO y Ethernet RIO no soportan sincronización nativa a través del bus de comunicación (MXI-Express y Fast Ethernet, respectivamente). Compartir reloj no es parte de la arquitectura del bus y el retraso inducido por los paquetes faltantes o choques debido a la topología de la red no se toma en cuenta (la comunicación entre los nodos en el sistema es asincrónica). Sin embargo, todos los módulos en un solo chasis pueden ser sincronizados ya que comparten el plano trasero del chasis y múltiples chasis MXI-Express RIO o Ethernet RIO pueden ser sincronizados usando un módulo de E/S digital de la serie C para distribuir una señal de reloj de referencia entre los chasis.  

EtherCAT RIO

EtherCAT RIO se sincroniza automáticamente con otras partes del sistema ya que el estándar del bus de comunicación EtherCAT define un reloj maestro del sistema al que todos los dispositivos de la red hacen referencia. Esto hace al bus EtherCAT una opción ideal para sistemas que requieren una perfecta sincronización (menos de un microsegundo) y alto determinismo.

Fluctuación de comunicación

Esta especificación se refiere a la fluctuación introducida únicamente por el bus de comunicación. La fuente principal de la fluctuación en un sistema generalmente está asociada con el controlador en lugar de con el bus de comunicación (especialmente si es un controlador con Windows). También, la fluctuación en un sistema depende de la arquitectura del sistema y del número de chasis que los datos tienen que negociar en un enlace para llegar al servidor. 

La comunicación determinística es importante en aplicaciones donde la comunicación de datos entre los nodos de cómputo distribuidos en tiempo real es una parte integral del ciclo de control. Esto significa que cualquier fluctuación inducida por la red resulta en fluctuación para el ciclo de control. La fluctuación de ciclo de control aceptable depende del sistema en cuestión, pero un rango estándar es del ±10% del tiempo del ciclo de control. Considerando un ciclo de control de 1 kHz, esto significa que cada iteración debe ejecutarse entre 900 a 1,100 μs para que el sistema responda apropiadamente. 

La fluctuación de comunicación para MXI-Express RIO y EtherCAT RIO es menor a 10 microsegundos y menor a un microsegundo respectivamente. Los dispositivos Ethernet RIO no tienen una especificación para fluctuación. Esto se debe a que la transmisión inalámbrica y Fast Ethernet no son métodos determinísticos para transferir datos.

Rendimiento del bus

MXI-Express RIO proporciona el conducto más grande hacia el controlador con máximo ancho de banda teórico de 250 MB/s comparado con 25 MB/s para Ethernet RIO y 12.5 MB/s para EtherCAT. Tenga en mente que el rendimiento del bus depende de otros factores además del máximo ancho de banda teórico del bus; considere los factores como latencia, implementación, requerimientos de potencia y su aplicación además del ancho de banda. MXI-Express RIO es la mejor opción para aplicaciones de alto rendimiento.  Las capacidades de rendimiento de Ethernet RIO y EtherCAT RIO son suficientes para la mayoría de las aplicaciones de monitoreo y control.

API

Un API o interfaz de un programa de aplicación, es un conjunto de rutinas usado como bloques de construcción para aplicaciones de software. Existen dos métodos para programar dispositivos de expansión de E/S: Modo de escaneo de CompactRIO o el API de interfaz principal de LabVIEW FPGA.

Usted puede usar el modo de escaneo CompactRIO (también llamado interfaz de escaneo RIO o RSI) en los chasis EtherCAT y Ethernet. El modo de escaneo CompactRIO detecta automáticamente sus módulos de E/S y los añade a un proyecto de LabVIEW. Usted puede arrastrar las variables de E/S a los diagramas de bloques de su VI de LabVIEW Real-Time o de su aplicación principal y leer y escribir inmediatamente datos de E/S escalados y calibrados sin necesitar programación o compilación de FPGA. 

Figura 2. Usar el modo de escaneo NI CompactRIO

Si usted quiere programar el FPGA directamente, use el LabVIEW FPGA Module. Una vez que ha escrito su VI de FPGA, este es compilado a un archivo de bitstream e implementado en el FPGA. Para comunicarse con el FPGA desde su aplicación principal, use el API de interfaz principal de LabVIEW FPGA. Esto le permite realizar funciones como lectura y escritura de registros y transferencias DMA.

Note que con el chasis EtherCAT, usted puede usar solamente variables de E/S definidas por el usuario para comunicarse entre el VI en tiempo real del controlador y el VI de FPGA del chasis de expansión. (Las variables de E/S definidas por el usuario se usan para sincronizar datos de FPGA con el NI Scan Engine.) Esto significa que para el VI de FPGA del chasis de expansión, usted no tiene interfaz principal FPGA, funciones de transferencia DMA o depuración del panel frontal.

Usted solamente puede usar el API de interfaz principal de LabVIEW FPGA para conectarse con el MXI-Express RIO. 

También existen algunas limitaciones en los tipos de módulos de la Serie C que son compatibles con cada chasis en base a la habilidad de los módulos para soportar el modo de escaneo de NI. Ya que MXI-Express RIO solamente soporta LabVIEW FPGA, los módulos que dependen del modo de escaneo de NI, como los módulos CAN NI 986x, no son compatibles con MXI-Express RIO. Para una lista completa de compatibilidad con la serie C, vea la tabla de compatibilidad de la serie C.

Controladores principales

Las cuatro opciones de expansión utilizan diferentes buses, por lo que requieren diferentes conexiones del lado del controlador.

MXI-Express RIO

MXI-Express RIO requiere una interfaz MXI-Express al sistema principal: las opciones incluyen controladores CompactRIO multinúcleo, PXI o industriales, así como PCs que ejecutan un SO Windows o en tiempo real que tienen una interfaz de tarjeta MXI-Express PCI. Usted puede usar un adaptador MXI-Express ExpressCard para conectar el chasis MXI-Express RIO a los controladores que todavía no tienen una interfaz MXI-Express RIO, pero que tienen una ranura ExpressCard como el NI PXIe-8115. Usted también puede usar la interfaz MXI-Express NI PXIe-8364 para conectar un MXI-Express RIO a su sistema PXI. Usted puede usar un adaptador MXI-Express a PCI o PCI Express para conectar MXI-Express RIO a una PC.  

Ethernet RIO

Ethernet RIO se puede insertar en cualquier sistema que tenga un puerto Ethernet y puede usarse con la mayoría de las topologías estándares de red. Para conectar el Ethernet RIO directamente al puerto Ethernet secundario de un controlador en tiempo real, vea Conectar un chasis de expansión Ethernet RIO al puerto Ethernet secundario en un controlador en tiempo real. Los chasis Ethernet RIO 9149 y 9147 también incluyen un puerto USB para una fácil configuración del dispositivo. Sin embargo, este puerto no está diseñado para usarse en lugar del puerto Ethernet. 

EtherCAT RIO

El chasis EtherCAT RIO es compatible con todos los controladores en tiempo real con dos puertos Ethernet, incluyendo CompactRIO, PXI y plataformas de controlador industrial. Note que para EtherCAT, si un controlador PXI en tiempo real no tiene dos puertos Ethernet, usted debe incluir una interfaz Ethernet NI PXI-8231/8232 (la interfaz Ethernet NI 8234 no es compatible), la cual es soportada en controladores en tiempo real. Usted también necesita el software controlador NI-Industrial Communications for EtherCAT y el segundo puerto Ethernet debe estar en modo “EtherCAT”.