From Saturday, Nov 23rd 7:00 PM CST - Sunday, Nov 24th 7:45 AM CST, ni.com will undergo system upgrades that may result in temporary service interruption.

We appreciate your patience as we improve our online experience.

Usar software Python, MathWorks® MATLAB y C/C++ con LabVIEW

Información general

La conectividad de LabVIEW a otros lenguajes de programación es una característica atractiva para los ingenieros que construyen sistemas de pruebas. Integrar lenguajes, como Python, el software MathWorks MATLAB , C/C ++ y .NET en el flujo de datos gráficos de LabVIEW, combina lo mejor de cada lenguaje para crear un sistema de pruebas flexible construido en menos tiempo.

 

En esta nota técnica, aprenda cómo integrar código de cuatro tecnologías de programación populares con LabVIEW. Esta flexibilidad significa que usted siempre puede seleccionar la herramienta adecuada para el trabajo y tener éxito más rápido.

Contenido

Llamar scripts de Python desde LabVIEW

Durante los últimos 10 años, Python ha ganado popularidad y se ha expandido para ofrecer cientos de miles de bibliotecas para una amplia variedad de aplicaciones. La incorporación de Python en LabVIEW fusiona las capacidades flexibles de programación de Python con las herramientas de diseño de sistemas en LabVIEW.

Con el nodo de Python, LabVIEW proporciona una capacidad nativa para llamar a un script de Python desde un diagrama de bloques de LabVIEW . Esta característica permite la interoperabilidad entre los lenguajes con baja latencia.

Figura 1: Integrar scripts de Python en LabVIEW llamándolos con el nodo de Python.

En el nodo de Python, puede especificar qué versión usar y la ruta a Python al llamar a funciones, lo que permite el acceso a Python instalado en directorios personalizados. Esta capacidad significa que puede usar múltiples nodos de Python para abrir múltiples sesiones de diferentes versiones o ejecutables almacenados en directorios personalizados.

LabVIEW 2022 Q3 agregó soporte para pasar objetos de clase Python como parámetros. La salida de refnum en el nodo de Python representa un objeto de clase de Python, que luego puede pasar como una entrada a otro nodo de Python para actuar en el objeto de clase.

.

Figura 2: LabVIEW 2022 soporta el paso de objetos de la clase Python como parámetros.

LabVIEW 2023 Q1 agrega una nueva función para llamar a entornos virtuales Python con Anaconda y Venv.

NI está invirtiendo continuamente para mejorar la interoperabilidad Python y LabVIEW, con actualizaciones planificadas hasta 2023 y posteriores. Puede aprender más sobre las novedades de LabVIEW y nuestros planes futuros en nuestra página de descripción general de LabVIEW .

Integrar el software MATLAB de LabVIEW y MathWorks

Se pueden usar enfoques de programación comunes para análisis numérico, procesamiento de señales y matemáticas avanzadas para llamar a archivos .m desarrollados en MATLAB. Al combinar estos archivos en un VI con G utilizando el nodo MATLAB, las capacidades de análisis pueden integrar su sistema de pruebas y medidas.


Figura 3:  Integrar archivos .m en LabVIEW llamándolos con Call MATLAB Function desde el nodo MATLAB .

Además, LabVIEW ahora permite a los usuarios seleccionar versiones específicas de MATLAB para su ejecución.

Figura 4: Con el nodo MATLAB, seleccione una versión específica de MATLAB para su ejecución.

Las nuevas capacidades de depuración están disponibles a partir de LabVIEW 2022 Q3. Puede agregar puntos de interrupción en su editor de MATLAB , depurar su código con un solo paso desde LabVIEW a su archivo .m e iniciar su MATLAB IDE desde LabVIEW para editar su archivo .m sobre la marcha.


Figura 5: Utilice las herramientas de depuración de LabVIEW para ingresar a su archivo .m y depurar desde LabVIEW.

Llamar a DLL de C/C++ en LabVIEW

Con LabVIEW, puede reutilizar código existente llamando a bibliotecas de enlaces dinámicos (DLL) o bibliotecas compartidas.

Por ejemplo, si usted tiene una biblioteca compartida de C/C++ y necesita reutilizarla en LabVIEW, puede llamarla usando el Call Library Function Node. Para simplificar la importación de bibliotecas externas, LabVIEW también incluye el Import Shared Library Wizard. Este asistente crea o actualiza automáticamente una biblioteca de proyectos de VI Wrapper de LabVIEW que usted puede incorporar a su diagrama de bloques de LabVIEW .

Figura 6: Utilice el Call Library Function Node para reutilizar las bibliotecas compartidas de C o C++ existentes en línea con programación G.

Llamar a ensambles .NET en LabVIEW

Otra forma de reutilizar código existente con LabVIEW es llamando a ensambles .NET.

Para acceder a un ensamble .NET, use el Constructor Node. Cuando se coloca en el diagrama de bloques, aparece una ventana de diálogo que permite al usuario seleccionar el ensamble .NET apropiado. LabVIEW reconoce automáticamente todos los métodos y propiedades y los expone a través de los nodos de método y propiedad.

Figura 7: Cree una referencia al ensamble .NET utilizando la función .NET Constructor Node. Luego, pase la referencia a las funciones Property o Invoke Node, para que las funciones sepan en qué ensamble están operando.

LabVIEW puede cargar ensambles .NET que tienen como objetivo .NET CLR 4.0 o anterior. Sin embargo, LabVIEW carga todos los ensambles en .NET CLR 4.0.

Conclusión

Hemos cubierto cuatro formas de conectarse a lenguajes populares con LabVIEW, destacando su flexibilidad e interoperabilidad. Esta conectividad le ayuda a combinar a la perfección lo mejor de cada herramienta para crear sistemas de prueba flexibles, más rápido.

Pasos siguientes