Utilizando el Modo de Escaneo de NI CompactRIO con NI LabVIEW
Visión General
El módulo de LabVIEW Real-Time 8.6 introduce nuevas funciones poderosas para la programación de hardware CompactRIO que reducen el tiempo de desarrollo y la complejidad, así como proporcionar herramientas para monitorear y mantener las aplicaciones en CompactRIO. CompactRIO es un controlador de automatización programable (PAC) de alto desempeño, que es diferenciado por un arreglo de compuertas programables en campo (FPGA) en el corazón de su arquitectura. Al más alto nivel, un FPGA es un integrado de silicón reprogramable. Los FPGAs ofrecen desempeño y confiabilidad de hardware personalizado mientras mantienen la flexibilidad de un sistema definido por software. Tradicionalmente, el uso de los FPGAs se ha restringido a ingenieros de diseño de hardware que son expertos en VHDL y otros lenguajes descriptores de hardware; sin embargo, LabVIEW le permite beneficiarse de los FPGAs sin esta experiencia. LabVIEW es un poderoso lenguaje de programación grafica intuitivo con cientos de funciones incluidas para control, análisis, comunicaciones, y almacenamiento. CompactoRIO es completamente programable con LabVIEW, incluyendo FPGA, procesador de tiempo real e interfaz de hombre maquina (HMI). Utilizando el Modo de Escaneo de CompactRIO, nuevo con el modulo de LabVIEW 8.6 Real Time, usted puede elegir entre acceso a cada módulo de E/S directamente en LabVIEW Real Time y crear aplicaciones sin programación FPGA o con LabVIEW FPGA para máxima flexibilidad y desempeño. También puede utilizar la nueva funcionalidad de paneles de prueba y forzado de E/S para acelerar su aplicación, realizar depuración avanzada y monitorear el desempeño del sistema.
Contenido
Reduzca el Tiempo de Desarrollo y Complejidad
Figura 1. El Modo de Escaneo de CompactRIO proporciona acceso directo a E/S en LabVIEW Real-Time y hospeda VIs sin programación o compilación FPGA.
Las E/S de CompactRIO se utilizan tradicionalmente programando el FPGA y luego utilizando los VIs de Interfaz de LabVIEW FPGA en LabVIEW Real-Time. El Modo de Escaneo de CompactRIO detecta automáticamente sus módulos de E/S y los agrega a su proyecto de LabVIEW. Usted puede arrastrar y liberar las variables de E/S en los diagramas a bloques de LabVIEW Real-Time y de su VI huésped, e instantáneamente escribir y leer datos de E/S escalados y calibrados sin ninguna programación o compilación de FPGA (vea la Figura 2).
Figura 2. Acceso directo de E/S en LabVIEW Real-Time al arrastrar y liberar variables de E/S a su diagrama a bloques
Un nuevo componente de LabVIEW Real-Time llamado el Motor de Escaneo de NI actualiza los valores de sus variables de E/S a la taza que usted especifique (hasta 1 kHz). Todos los escaneos de canales son temporizados por hardware con sincronización módulo a módulo. Usted puede configurar el motor de escaneo desde el Proyecto de LabVIEW o programáticamente con una librería incluida de VIs. El motor de escaneo también proporciona una fuente de temporización para que usted pueda sincronizar código con actualizaciones de E/S para aplicaciones de control de bajo desfasamiento. Usted puede crear alias para las variables de E/S para proporcionar una capa adicional de abstracción para el canal físico de E/S. Además, está disponible el escalamiento lineal en variables de E/S y alias.
El Modo de Escaneo de CompactRIO agrega funcionalidad de contador, encoder de cuadratura, y modulación de ancho de pulso (PWM) a cualquier módulo existente de ocho canales digitales de la Serie C sin requerir ninguna programación. Usted configura estas funciones de especialidad digital desde el proyecto de LabVIEW, pero se ejecutan el FPGA para precisión y velocidad. Ahora, sin compilar, usted puede realizar cuentas de flancos de hasta 1 MHz, mediciones de ancho de pulso y frecuencia, decodificación de cuadratura, y control PWM.
Características Específicas de Contador
- Conteo de 1 MHz en ocho canales
- Registro de cuenta de 32 bits, sin terminal de cuenta programable
- Terminal de cuenta y comportamiento de terminal de cuenta configurable
- Cuenta de flanco configurable (subida, bajada, o ambos), fuente, y compuerta
- Mediciones de periodo, PWM, y frecuencia con base de tiempo configurable
Características Específicas de Cuadratura
- Taza de cuenta máxima de 1 MHz
- Registro de cuenta de 32 bits
- Registro de medición de velocidad de 32 bits
- Medición de base tiempo de velocidad configurable (256 µs, 512 µs, ... 16384 µs, o 32768 µs)
- Codificación X4
- Dos canales de cuadratura con entradas A+B+Indice por módulo
- Polaridad de encoder seleccionable
Características Específicas de PWM
- Ocho canales de salida
- Configuración de ciclo de trabajo y periodo por canal
- Periodo de frecuencia configurable (1 Hz, 50 Hz, 250 Hz, 500 Hz, 1 kHz, 5 kHz, 10 kHz, o 20 kHz)
Fácil Configuración, Depuración y Monitoreo
El “NI Distributed System Manager”, también nuevo en LabVIEW 8.6, proporciona una locación central para monitorear sistemas en la red y administrar datos publicados. El nuevo administrador de sistema ofrece paneles de prueba para módulos CompactRIO utilizando el Modo de Escaneo de CompactRIO. Tan pronto como su sistema se encuentre disponible en la red, usted tiene acceso a valores de E/S en tiempo real y tendencias históricas para que pueda verificar rápidamente sus conexiones y la integridad de señal. Además de los paneles de prueba, el administrador de sistema le da visibilidad de uso de memoria y carga en procesador para controladores CompactRIO.
Figura 3. El Nuevo “NI Distributed System Manager” le ayuda a iniciar rápidamente al agregar paneles de prueba a CompactRIO.
El Modo de Escaneo de CompactRIO introduce forzado de E/S, la cual es una herramienta de depuración que puede utilizar para sobre escribir un valor de una variable de E/S sin parar o cambiar su aplicación de tiempo real. Usted puede forzar entradas para probar la respuesta de su aplicación sin un estímulo físico, así como forzar salidas para sobre escribir valores de salida de su programa. Usted puede forzar valores de canal utilizando el administrador de sistema con los nuevos VI’s de forzado de E/S.
LabVIEW FPGA y el Modo de Escaneo de CompactRIO
Con el Módulo LabVIEW 8.6 Real-Time, usted puede tener acceso a cada módulo ya sea con el Modo de Escaneo de CompactRIO o con LabVIEW FPGA. Utilizando LabVIEW FPGA, usted puede implementar disparos personalizados, análisis y procesamiento de señales basado en hardware o procesamiento analógico de alta velocidad. Para utilizar los módulos de E/S en el modo LabVIEW FPGA, simplemente arrastre el módulo al objetivo FPGA en el proyecto de LabVIEW removiéndolo del modo de escaneo. Luego utilice LabVIEW FPGA para programar los módulos y utilizar las variables de E/S para leer y escribir E/S en el resto de los módulos (vea la Figura 4).
[+] Ampliar ImagenFigura 4. Este VI accesa las E/S con el Modo de Escaneo de CompactRIO mientras se calcula la transformada rápida de Fourier de una entrada de aceleración con LabVIEW FPGA.
Cuando se utiliza el Modo de LabVIEW FPGA en uno o más módulos, la lógica de Modo Escaneo de CompactRIO en el FPGA conocido como la “RIO Scan Interface” se compila con el VI de LabVIEW FPGA VI en una sola aplicación de FPGA. Si no se configura ningún módulo para usarse en el modo de escaneo, la Interfaz de Escaneo RIO no se incluye en la compilación.
Modo de Escaneo de CompactRIO
El Modo de Escaneo de CompactRIO se conforma de dos tecnologías, el Motor de Escaneo de NI y la Interfaz de Escaneo de RIO. La Interfaz de Escaneo RIO es un conjunto de propiedad intelectual (IP) FPGA desarrollado por National Instruments que es descargada al FPGA de CompactRIO y es responsable de la detección de módulos de E/S, temporización, sincronización y comunicación. La Interfaz de Escaneo RIO se ejecuta en un ciclo de escaneo temporizado por hardware que actualice los valores de las E/S físicas. Se utilizan dos canales DMA para transportar datos de E/S entre el FPGA y el sistema operativo de tiempo real. La preconstrucción de funcionalidad digital especial también es un componente de la Interfaz de Escaneo RIO. Para más información sobre la Interfaz de Escaneo RIO, vea la sección de Recursos Relacionados en la parte inferior.
El Motor de Escaneo de NI es un componente nuevo de LabVIEW Real-Time que se ejecuta en una prioridad superior a tiempo crítico o entre tiempo crítico y estructuras temporizadas, lo cual usted puede configurar. Cada vez que la Interfaz de Escaneo RIO termina de ejecutar el último escaneo de E/S, LabVIEW agrega las variables de E/S a un mapa de memoria global de escaneo y actualiza los valores de todas las variables de E/S concurrentemente. De cualquier forma, usted puede configurar cada nodo de variable de E/S para utilizar ya sea acceso por escaneo o acceso directo. Por defecto, LabVIEW configura los nodos de variable de E/S para utilizar las E/S por escaneo la cuales utilizan el mapa de memoria global de escaneo para realizar lecturas y escrituras de E/S sin bloqueo (vea la Figura 5). El acceso directo de E/S sobrepasa el mapa de memoria global de escaneo y se comunica directamente con el manejador del dispositivo de E/S para realizar lecturas y escrituras de E/S con bloqueo (vea la Figura 5). El Motor de Escaneo de NI también publica las variables de E/S en la red permitiéndoles estar disponibles para lectura y escritura en aplicaciones de huésped, paneles de prueba, y forzado de E/S. El motor de escaneo, a diferencia del motor de la variable compartida de LabVIEW, maneja la publicación de las variables de E/S, el cual puede deshabilitar desde la página de propiedades de las variables de E/S.
Cuando utiliza LabVIEW FPGA con el Modo de Escaneo de CompactRIO (algunos módulos utilizando el Modo de Escaneo de CompactRIO y algunos utilizando el Modo de LabVIEW FPGA), la Interfaz de Escaneo RIO y el VI de FPGA se compilan en una sola trama de bits y se despliega en el FPGA. Usted puede tener acceso a los módulos de E/S en el Modo LabVIEW FPGA con los VIs de Interfaz FPGA en LabVIEW Real-Time y también en el modo de escaneo utilizando variables de E/S. Si usted remueve todos los módulos del modo de escaneo, entonces la Interfaz de Escaneo RIO no se compila en la trama de bits. El espacio consumido por la Interfaz de Escaneo RIO en el FPGA se escala con el número de módulos utilizando el modo de escaneo.
[+] Ampliar Imagen Figura 5. Descripción del Modo de Escaneo de CompactRIO
¿Cuándo Debo Utilizar el Modo de Escaneo de CompactRIO?
El Modo de Escaneo de CompactRIO está diseñado para aplicaciones que requieren actualizaciones síncronas de E/S con tazas de hasta 1 kHz. Usted puede utilizar la funcionalidad digital especial proporcionada por el modo de escaneo para convertir cualquier módulo de E/S digitales existente de ocho canales en un módulo de PWM avanzado, contador, o encoder de cuadratura. Con la funcionalidad de E/S forzadas y el panel de prueba del manejador del sistema usted puede utilizar el modo de escaneo para configuración inicial, monitoreo de desempeño del sistema y solución de problemas avanzados. Para aplicaciones con requerimientos de alto desempeño, tales como adquisición analógica cerca de 1 MHz, ciclos de control PID de alta velocidad de más de 1 kHz, análisis y procesamiento de señales por hardware personalizado, o E/S de módulos no soportados por el modo de escaneo, utilice el Módulo de LabVIEW FPGA con el modo de escaneo. Usted también puede quitar carga de procesamiento del controlador en tiempo real con el Módulo de LabVIEW FPGA.
El modo de escaneo es soportado por controladores corriendo el VxWorks RTOS con FPGAs con al menos 2M de compuertas debido a los requerimientos de espacio del RSI FPGA. Los controladores soportados son el NI 9012, NI 9014, NI 9073, y el NI 9074. Los planos traseros soportados incluyen el NI 9103, NI 9104, NI 9073, y el NI 9074.
Hay algunas consideraciones de desempeño cuando se utiliza el Modo de Escaneo de CompactRIO. Por ejemplo, la funcionalidad digital especial soporta contadores de hasta 1 MHz contra contadores de hasta 20 MHz que se pueden lograr con LabVIEW FPGA. El motor de escaneo utiliza recursos del sistema que incluyen espacio del FPGA, dos canales DMA, memoria y una cantidad de tiempo del CPU que se escala con la taza de escaneo. El espacio consumido por el RSI en el FPGA se escala con el número de módulos que utilizan el modo de escaneo.
Conclusión
El Módulo de LabVIEW 8.6 Real-Time agrega un conjunto de características poderosas diseñadas para reducir el tiempo de desarrollo y complejidad de CompactRIO. Con el Modo de Escaneo de CompactRIO, usted puede tener acceso a las E/S con LabVIEW Real-Time y con aplicaciones de host sin programación FPGA, teniendo la opción de programar directamente el FPGA para los requerimientos más avanzados. El Administrador de Sistemas Distribuidos de NI y las E/S forzadas también proporcionan paneles de prueba y depuración avanzada para CompactRIO, haciendo sencillo el monitoreo y el mantenimiento de aplicaciones en CompactRIO.
Recursos Relacionados
Seminario Web: Las Nuevas Características de LabVIEW para PACs de Alto Desempeño basados en FPGAs
Módulos de la serie c soportados por CompactRIO Scan Mode
Tutorial: Utilizando la variable de E/S de Labview y NI Scan Engine
Tutorial: La Interfaz de Escaneo RIO
Legal
Este tutorial (este "tutorial") fue desarrollado por National Instruments (NI). Aunque el soporte técnico para este tutorial sea proporcionado por National instruments, el contenido de este tutorial puede no estar completamente verificado y probado y NI no garantiza su calidad, ni que NI continuará proporcionando soporte a este contenido en cada nueva revisión de productos y controladores relacionados. ESTE TUTORIAL ES PROPORCIONADO "COMO ES" SIN GARANTÍA DE NINGUN TIPO Y SUJETO A CIERTAS RESTRICCIONES QUE SE EXPONEN EN LOS TÉRMINOS DE USO EN NI.COM (http://ni.com/legal/termsofuse/unitedstates/us/).
