¿Qué es LabVIEW?
LabVIEW – Laboratory Virtual Instrument Engineering Workbench – es un lenguaje de programación gráfico, algunas veces llamado simplemente como «G». Es desarrollado y vendido por National Instruments (NI), actualmente con dos versiones: LabVIEW y LabVIEW NXG.
El IDE (Integrated Development Environment) o en español «Ambiente de Desarrollo Integrado», está basado en el concepto de «drag and drop» o también llamado «tomar y soltar», y usa el flujo de datos para controlar la ejecución del programa. Los datos son pasados a través de cables y los tipos de datos son representados por colores, creando una representación visual de su programa muy fácil de seguir. Cualquiera que haya visto un diagrama de flujos será capaz de comprender el concepto básico.
Ademas de LabVIEW, National Instruments vende varios otros softwares y add-ons, así como gran cantidad de hardware. Los más comunes son:
TestStand – Un ambiente de pruebas secuenciales.
LabVIEW RealTime – Permite desarrollar programas para ambientes en Tiempo Real.
LabVIEW FPGA – Permite compilar programas para que corran sobre una FPGA.
Vision Toolkit – Módulos ya desarrollados para seguir técnicas avanzadas de visión, tales como detección de bordes, medidas de profundidad, etc.
¿Para qué puede ser usado LabVIEW?
Puede ser usado para cualquier aplicación que necesite mediciones, capturar datos, manipular datos, desplegar resultados, controlar hardware, etc. Podría ser desde una simple medición de potencia en un laboratorio, hasta una línea de producción de cohetes para la NASA.
Acá una explicación técnica
Si te desarrollas en el mundo de la ingeniería de software, lo siguiente puede tener sentido para ti.
LabVIEW puede manejar arquitecturas de programación sencillas, como máquinas de estado y ciclos productor/consumidor, así como arquitecturas más avanzadas, tales como Programación Orientada a Objetos (LVOOP) y Actor Framework.
La implementación de programación en paralelo es bastante simple, así como la creación de Capas de Abstracción de Hardware e Interfaz de Usuario interactivas.
Es posible además usar técnicas tales como eventos de usuario, notificadores, semáforos, manejo de booleanos, y colas (queues) de datos. Todas estas están organizadas dentro del IDE.
Para hacer pruebas y entregas de software, es posible usar procesos como Continuous Integration, Unit Testing, Regression Testing y otras. La creación de ejecutables (.exe) es muy simple y puede ser levantada con el Run-Time Engine gratuito de NI. Servicios de control de código tales como Git y Subversion pueden ser integrados directamente en el ambiente de desarrollo.
Es posible el uso de plug-ins adicionales como JSON, Python, Cloud storage, SQLite y muchos otros.
Ahora una explicación no-técnica
Si no conoces mucho acerca de ingeniería de software, ciencias de la computación o ambientes de desarrollo, no hay problema, esta sección es para ti.
Primero, LabVIEW es el nombre de una marca, por lo tanto así es como se escribe, y no Labview, LabView o labview, por favor, es LabVIEW.
Segundo, es un lenguaje de programación «real». Mira la descripción de más arriba e intenta buscar en Google alguno de los términos, verás que aparecen en la mayoría de los lenguajes «reales» de los que has oído hablar, como Java, C++, Python, etc.
Tercero, aunque no lo creas, puede ser muy sencillo programar en LabVIEW. Sin embargo esto es muy relativo, así como es fácil volar un Boeing 747 para un piloto con 20 años de experiencia. Sí, tu puedes crear programas muy simples en LabVIEW en algunos minutos para capturar y mostrar datos en un laboratorio. Pero, ¿conoces el CERN? El llamado «instrumento más grande del mundo» ubicado en Suiza a kilómetros bajo tierra. Ese gran haz de energía es controlado por LabVIEW.
Ahora que algunos de las mas comunes preguntas han sido aclaradas, te entrego algunos otros conceptos relacionados a LabVIEW.
Certificaciones
National Instruments posee un programa de certificación que consiste en 3 niveles:
Certified LabVIEW Associate Developer (CLAD) – Un examen de múltiples alternativas durante 1 hora.
Certified LabVIEW Developer (CLD) – Un examen práctico de 4 horas.
Certified LabVIEW Architect (CLA) – Un examen práctico de 4 horas.
CLAD
El CLAD es el nivel más bajo y solo nos dice que la persona está familiarizada con el ambiente y conoce algunas ideas básicas detrás de LabVIEW. Este examen mide conocimientos, los cuales se logran luego de tomar algunos de los cursos disponibles de LabVIEW y/o con algo de práctica al crear aplicaciones básicas.
El que posee esta certificación puede ser capaz de crear programas simples o contribuir en pequeñas partes de un desarrollo más grande.
CLD
El CLD es el nivel medio de certificación y muestra que la persona puede crear un programa basado en especificaciones dadas por el interesado en un tiempo acotado. Maneja conceptos de estructuras de programación, por lo que debería poder desarrollar una aplicación medianamente compleja, o podría liderar a uno o varios CLAD para el desarrollo de un proyecto mayor.
CLA
No muchos usuarios alcanzan este nivel de certificación, y esto es debido a varias razones, pero la más común es que el examen es más dificil. Los que han pasado este nivel han demostrado que pueden crear una arquitectura de software para aplicaciones medianas a grandes, las que pueden ser expandibles, ordenadas y en donde otros puedan contribuir. Para que puedas comprenderlo mejor, un CLA es el que crea la arquitectura de software en donde el CLD va a trabajar.
Otros
Hay otros conceptos que es bueno comprender para relacionarse con el mundo de LabVIEW:
– NI Alliance Partner
Son empresas que han sido elegidas por NI por alguna especialización en particular, como pruebas automatizadas, mediciones de vibración, etc.
Existe un portal de Partners en la página web de NI en donde puedes encontrar las empresas que son reconocidas por NI y en donde aparece que servicios entregan, los años que llevan trabajando en este programa y que nivel de certificación en poseen.
Recursos
Si quieres conocer un poco más sobre LabVIEW:
Hay muchos eventos que se desarrollan en el mundo:
Hay mucha gente en la comunidad de LabVIEW que escribe blogs, muchos solo por compartir experiencias y otros lo hacen para abordar problemas específicos que están teniendo. Por acá te dejo algunos.
Random Ramblings on LabVIEW Design
Hay muchas presentaciones disponibles para ver, principalmente creadas en los grandes eventos de NI, como CLA Summit, NI Week, etc.
Algunas consideraciones acerca de presentaciones y blogs:
La mayoría de éstos han sido escritos/presentados por líderes en la comunidad de LabVIEW, en donde su conocimiento de LabVIEW está dado por hecho. Ellos presentan sobre temas que les interesan, proyectos y áreas en donde NI podría hacerlo mejor. Esta presentaciones NO representan solo el conocimiento, la experiencia y habilidades de los presentadores, es solo una forma de retribuir a la comunidad de LabVIEW en general.
Fuente
Este artíclo ha sido traducido al español desde un blog de la empresa iNU Solutions. El artículo original está orientado a quienes entrevistan a personas con conocimientos en LabVIEW, pero ni los mismos seleccionadores saben qué es LabVIEW. Acá les dejo el original.