Plantillas y proyectos ejemplo de LabVIEW

Información general

LabVIEW tiene plantillas de producto y proyectos ejemplo, los cuales ofrecen puntos de inicio recomendados y diseñados para asegurar la calidad y escalabilidad de un sistema. Todas las plantillas y proyectos ejemplo son de código abierto e incluyen extensa documentación diseñada para indicar claramente cómo funciona el código y las prácticas recomendadas para añadir y modificar funcionalidad. Además de demostrar las arquitecturas recomendadas, estos proyectos también ilustran prácticas recomendadas para documentar y organizar código.

Contenido

Crear un proyecto a partir de una plantilla de LabVIEW o un proyecto de ejemplo

Puede crear un nuevo proyecto a partir de una plantilla existente o un proyecto de ejemplo en LabVIEW.

  1. Iniciar LabVIEW.
  2. Desde la pantalla de inicio de LabVIEW, seleccione Create Project.
  3. En la ventana Create Project, seleccione TemplateSample Project para que sirva como punto de partida para su proyecto de LabVIEW.
    1. La lista de opciones disponibles en la ventana Create Project depende de los módulos de software y controladores que usted ha instalado. Este documento enumera las plantillas y proyectos ejemplo que NI proporciona y soporta.
    2. Puede filtrar los proyectos que se muestran seleccionando Templates o Sample Projects en el panel izquierdo o puede buscar proyectos por palabra clave.
      1. A la derecha del nombre de cada proyecto, verá si se trata de plantillas o proyectos de ejemplo. 

         

Plantillas

Las plantillas demuestran los bloques de construcción fundamentales de la mayoría de las aplicaciones de LabVIEW. A menudo se utilizan una o más de las plantillas combinadas para construir sistemas del mundo real. Estas plantillas ofrecen arquitecturas comunes usando patrones de diseño que usted puede modificar para construir un sistema.

Máquina de estado simple

Máquina de estado simple

Esta plantilla hace más fácil definir la secuencia de ejecución para las secciones de código. Esta implementación particular generalmente se conoce como máquina Moore, la cual determina el siguiente estado en base a decisiones tomadas en el estado actual. El diseño de esta plantilla hace más fácil insertar nuevas secciones de código, eliminar secciones de código o cambiar el orden en el cual las secciones se ejecutan, sin hacer grandes modificaciones a la estructura de la aplicación.

Controlador de mensajes en cola

Controlador de Mensajes en Cola

Esta plantilla facilita que múltiples secciones de código se ejecuten en paralelo y se envíen datos entre ellos. Cada sección de código representa un proceso, como adquirir datos y está diseñada de manera similar a una máquina de estado. La separación de estos componentes permite una interfaz de usuario eficiente y la habilidad de registrar datos continuamente mientras que otros mensajes se están ejecutando.

Actor Framework

Actor Framework

Esta es una plantilla para crear las aplicaciones de LabVIEW, que consisten en múltiples tareas independientes que necesitan comunicarse entre ellas. Este framework fue diseñado, para enfrentar escenarios de desarrollo comunes que pueden conducir a una importante duplicación de código, al extender la funcionalidad o añadir procesos. El Actor Framework es una plantilla avanzada que hace un extenso uso de Clases de LabVIEW.

Proyectos ejemplo de escritorio

Los proyectos ejemplo de escritorio ilustran el uso de una o más plantillas en una aplicación actual. Estos proyectos cumplen con los requisitos más comunes de aplicaciones de medidas basados en escritorio, incluyendo interfaces de usuario eficientes, análisis asincrónico, registro de datos, diálogos de usuario, manejo de error y múltiples tareas independientes.

Finite Measurement

El proyecto ejemplo Finite Measurement adquiere una sola medida y ofrece opciones para exportar la medida al archivo. Este proyecto ejemplo está diseñado como una máquina de estado, que puede responder a las solicitudes del usuario para configurar y ejecutar una medida*, realizar análisis, mostrar resultados y registrar datos a disco.

*DAQmx 9.5.5 o posterior instala una segunda versión de este proyecto ejemplo que usa la API NI-DAQmx para configurar y adquirir una medida actual con E/S de hardware.

Registro y medidas continuos

Registro y medidas continuos

El proyecto de ejemplo Continuous Measurement and Logging adquiere medidas continuamente y los registra a disco. Ejecuta cinco ciclos en paralelo para asegurar que varias tareas puedan ser ejecutadas al mismo tiempo, respondiendo y poniendo en cola las solicitudes del usuario. Estos ciclos incluyen manejo de eventos, mensajes de IU, adquisición*, registro y visualización.

*DAQmx 9.5.5 o posterior instala una segunda versión de este proyecto ejemplo que usa la API NI-DAQmx para configurar y adquirir una medida actual con E/S de hardware.

Enfriador evaporativo de retroalimentación

Enfriador evaporativo de retroalimentación

El proyecto de ejemplo Feedback Evaporative Cooler está diseñado usando la plantilla Actor Framework e implementa un enfriador evaporatorio con hardware intercambiable en vivo, controladores e interfaces de usuario. El proyecto de ejemplo está hecho para múltiples VIs que se ejecutan de manera independiente, llamados actores, que representan la interfaz de usuario, el enfriador, sus ventiladores y su nivel de agua. Cada actor tiene la habilidad de pasar mensajes como comandos y recibir dichos mensajes de actores relacionados. La arquitectura soporta expansión de forma estática o dinámica incluyendo más actores.

Sistema de control supervisorio y adquisición de datos

Sistema de control supervisorio y adquisición de datos

Nota: Esta funcionalidad del proyecto ejemplo requiere del Módulo LabVIEW DSC.

Este proyecto de ejemplo implementa Supervisory Control and Data Acquisition (SCADA) para un sistema simulado basado en NI CompactRIO y controlador lógico programable (PLC). Con un servidor y una arquitectura de cliente de interfaz humano-máquina (HMI), utilizando el Módulo LabVIEW Datalogging and Supervisory Control (DSC) para conectividad con terceros, datos históricos y registro de alarmas en una aplicación de servidor. Para la aplicación de cliente HMI, implementa actualizaciones basadas en evento a las interfaces de usuario y carga dinámica de subpaletas para demostrar una arquitectura de interfaz de usuario eficiente y receptiva.

Leer la guía detallada sobre la comunidad de NI | Ver seminario web

Proyectos de ejemplo de LabVIEW Real-Time y LabVIEW FPGA

Los sistemas embebidos generalmente requieren una arquitectura que está diseñada para fiabilidad y rendimiento determinístico. Como resultado, varias aplicaciones embebidas requieren procesos dedicados al monitoreo del estado del sistema, manejo de error y temporizadores tipo watchdog. Los proyectos de ejemplo de LabVIEW para CompactRIO y PXI RT DAQ, ilustran las prácticas recomendadas para cumplir con estas necesidades, proporcionando arquitecturas de software recomendadas que pueden ser usadas en una variedad de sistemas de control y monitoreo embebidos. Estos proyectos ejemplo también ilustran las prácticas recomendadas para comunicación de datos, conectividad en red, rutinas de control registro de datos y más.

Para poder visualizar estas plantillas dentro de LabVIEW, debe tener instalado el LabVIEW Real-Time Module y/o el LabVIEW FPGA Module.

Proyectos de ejemplo de CompactRIO

Control de LabVIEW FPGA en CompactRIO

Control de LabVIEW FPGA en CompactRIO

Este proyecto de ejemplo está diseñado para aplicaciones que requieren control de alto rendimiento y/o lógica de seguridad basada en hardware. En lugar de ejecutar el algoritmo de control en software, el control es implementado en la estructura del FPGA, permitiéndole controlar ciclos para alcanzar rangos más rápidos a 10 kHz con fluctuación mínima. El VI de FPGA también contiene lógica de seguridad que inmediatamente pone cualquier salida en un estado seguro ante un error crítico o falla del software en tiempo real para máxima fiabilidad.

Leer documentación | Leer la guía detallada sobre la comunidad de NI

Control de LabVIEW Real-Time en CompactRIO (Interfaz de escaneo RIO)

Control de LabVIEW Real-Time en CompactRIO (Interfaz de escaneo RIO)

Este proyecto de ejemplo está diseñado para aplicaciones de control que requieren rendimiento determinístico con razones de E/S de un solo punto de 100 Hz o menos. Este proyecto ejemplo no usa el hardware FPGA, pero aprovecha el procesador determinístico en tiempo real para control. Usa la interfaz de escaneo RIO (RSI) para tener acceso a datos de E/S como variables en la aplicación en tiempo real.

Adquisición de formas de onda de LabVIEW FPGA y registro en CompactRIO

Adquisición de formas de onda de LabVIEW FPGA y registro en CompactRIO

Este proyecto ejemplo incluye adquisición de datos analógica personalizada y basada en FPGA de alta velocidad y registra los datos adquiridos a disco en el sistema en tiempo real cuando se cumple una condición de disparo. Este proyecto ejemplo está diseñado para ejecutarse de manera autónoma o puede conectarse a la interfaz de usuario opcional que es proporcionada.

LabVIEW Real-Time Sequencer on CompactRIO

LabVIEW Real-Time Sequencer on CompactRIO

Este proyecto de ejemplo implementa un motor de secuencia que ejecuta secuencias o fórmulas definidas por el usuario en LabVIEW Real-Time para aplicaciones de control. Incluye una interfaz de usuario basada en Windows, que genera las secuencias definidas por el usuario, los implementa en CompactRIO y monitorea el estado del motor de secuencias. La interfaz de usuario usa carga dinámica de subpaneles para demostrar una arquitectura de interfaz de usuario eficiente y receptiva.

Ver seminario web

 

Proyectos ejemplo en tiempo real (con DAQmx)

Los proyectos ejemplo de LabVIEW Real-Time (NI-DAQmx) están diseñados para aplicaciones que involucran control en tiempo real y/o registro y adquisición de forma de onda.

Control en tiempo real de LabVIEW (NI-DAQmx)

Control en tiempo real de LabVIEW (NI-DAQmx)

Implementa control determinístico basado en software de una planta. Este proyecto ejemplo usa NI-DAQmx. Este proyecto ejemplo está diseñado para aplicaciones de control que requieren rendimiento determinístico de E/S de control DAQ, usando controladores PXI en tiempo real y NI DAQ.

Leer documentación

Adquisición y registro de formas de onda de LabVIEW Real-Time (NI-DAQmx)

Adquisición y registro de formas de onda de LabVIEW Real-Time (NI-DAQmx)

Adquiere datos de forma de onda continua y los registra a disco. Este proyecto ejemplo usa NI-DAQmx. Este proyecto ejemplo incluye adquisición de datos analógica y registra los datos adquiridos a disco en el sistema en tiempo real cuando se cumple una condición de disparo. Este proyecto ejemplo está diseñado para ejecutarse de manera autónoma o puede conectarse a la interfaz de usuario opcional que es proporcionada. Está diseñado para aplicaciones que utilizan controladores PXI en tiempo real con NI DAQ o NI CompactDAQ Autónomo.

Leer documentación

Añadir plantillas personalizadas y proyectos ejemplo

Los usuarios avanzados pueden complementar la lista incluida de plantillas y proyectos ejemplo con los suyos, haciendo la ventana de diálogo del "Create Project" un excelente mecanismo para compartir y distribuir plantillas recomendadas entre un equipo de desarrolladores.

La ventana dialogo del Create Project para una plantilla personalizada o proyecto ejemplo puede cambiarse para incluir elementos adicionales, como plantillas del cliente, que pueden programar la creación del código personalizado.

Comenzar a trabajar con una plantilla o proyecto ejemplo

Las plantillas o proyectos ejemplo requieren el uso de una amplia variedad de habilidades de LabVIEW y conceptos de programación. La documentación proporcionada en cada proyecto enumera los conceptos con los cuales los usuarios deben estar familiarizados. Además, la documentación en el diagrama de bloques indica claramente en donde añadir o modificar código con comentarios en color azul.

También puede consultar la Guía de Habilidades de LabVIEW para ver la lista de habilidades recomendadas y recursos de formación y capacitación.

Was this information helpful?

Yes

No