Este documento presenta una introducción a LabVIEW. Explica que LabVIEW es un entorno de desarrollo gráfico que utiliza un lenguaje de programación gráfico en lugar de texto. Se detalla que LabVIEW es útil para comunicarse con dispositivos de laboratorio y acelera el desarrollo de sistemas. También cubre conceptos como cómo construir aplicaciones en LabVIEW utilizando el panel frontal y el diagrama fuente, y diferentes métodos y técnicas de programación como estructuras, funciones predefinidas y VI's definidas por el usuario.
2. ¿Qué es LabView?
Laboratory Virtual Instrumen Engineering
Workbench
Es un ambiente de desarrollo basado en un
lenguaje gráfico
Fue desarrollado por National Instruments para
los principales sistemas operativos
Desarrollado originalmente para comunicarse
con dispositivos de laboratorio
Una herramienta realmente útil
Introducción a LabView
3. ¿Por qué utilizar LabView?
Muy fácil de aprender, muy intuitivo
Fácil de utilizar
No tiene sintaxis que aprender
El código fuente puede leerse como un diagrama
esquemático
Acelera el desarrollo de un sistema
Tiene muchas librerías para muchos instrumentos
Soporte y foros
Muy potente, pueden programarse múltiples hilos
Tan versátil como los lenguajes basados en texto
Introducción a LabView
4. Desventajas
Costo
Las técnicas avanzadas son mas difíciles de
desarrollar
El código puede volverse algo ilegible si no se
controla el desarrollo
La creación de aplicaciones muy personalizadas
puede llevarse mucho tiempo
Introducción a LabView
5. Que vemos hoy:
El lenguaje
Construcción de una aplicación
Panel Frontal
Diagrama fuente
Programación
Estructuras
Funciones preconstruidas
Instrumentos Virtuales del usuario
Tips
Introducción a LabView
6. El lenguaje de programación gráfico, (G Languaje)
Es un lenguaje de programación completamente gráfico.
El código fuente es un diagrama de nodos y alambres
La información viaja a través de los alambres
El flujo de datos controla la ejecución, no el flujo del código
La posición del código es irrelevante
Saber de antemano un lenguaje de alto nivel como C puede ser
desventajoso
Introducción a LabView
7. Otra forma de programar
Flujo de información vs. Flujo de código
UnlockCAL(HeaterMat);
GetTempCAL(HeaterMat);
SetTempCAL(HeaterMat);
LockCAL(HeaterMat);
Principio de activación:
Un nodo no es ejecutado hasta que
se cumplan todas las condiciones
en las entradas.
Dependencia de la información
Introducción a LabView
9. Construcción de una aplicación
• Las aplicaciones son llamadas Instrumentos Virtuales (VI’s)
• Es necesario fabricar el Vi en dos partes:
1. Panel Frontal
2. Diagrama fuente
• Se recomienda comenzar con el panel frontal
• Hacer un boceto (en papel) de las funciones principales del
diagrama
• Desarrollar este diagrama en código G
• Fin…
Introducción a LabView
10. Panel Frontal
Como interactúa el usuario con el programa
Contiene tanto controles como indicadores
A cada elemento en el panel frontal le corresponde un nodo en
el diagrama fuente
Existen muchos controles prediseñados, lo que facilita la
construcción de simples
Existe forma de personalizar los controles, sin embargo, el
diseña definido por default es bueno
Introducción a LabView
11. Controles e indicadores
Existe una relación entre
objetos en el Panel Frontal y
los nodos en el Diagrama
Introducción a LabView
12. Controles e indicadores
Los objetos en el panel
frontal pueden ser tanto
controladores como
indicadores Controladores
Los controles son “fuentes”
de datos
Los indicadores son Indicadores
“receptores” de datos.
Existen “fuentes” de datos
que no tienen contraparte en
el Panel Frontal
Introducción a LabView
13. Controles e indicadores
Indicador
Control
Indicador
Indicador
Control
Introducción a LabView
14. Construcción del Panel Frontal
Establecer límites en los controles, de tal forma que
no se tenga que verificar durante la ejecución del
programa que un valor esté dentro de sus límites
permitidos,
Mantener un estilo consistente
No utilizar muchos colores
Agregar cajas de texto en algunas partes para hacer
explicaciones
Utilizar un diagrama esquemático si el sistema
representa un sistema físico
Introducción a LabView
15. Construcción del Diagrama Fuente
Hacer doble click en el panel forntal lleva al
nodo correspondiente en el Diagrama Fuente y
vice-versa
También en el menú,: “window, show diagram”
permite ver el diagrama fuente,
Introducción a LabView
16. Construcción del Diagrama Fuente
Los nodos se ubican de manera similar que los
controles en el Panel Frontal
Los alambres se añaden con la herramienta de
alambrado
Es lo mas latoso en LabView
Evitar que se crucen los alambres
Introducción a LabView
17. Tipos de nodos
Indicadores y controles
Funciones
Funciones predefinidas
VI’ definidos por el usuario (subrutinas)
Estructuras
Todos los nodos tienen uno o mas terminales, las
cuales solo admiten un tipo de datos
Introducción a LabView
18. Alambres
Los alambres transportan datos entre nodos
dentro del Diagrama Fuente
El color del alambre indica el tipo de datos
Una “x” roja indica que alguna conexión está
mal hecha
Introducción a LabView
19. Alambres
Un instrumento Virtual en LabView (Vi’s) es construido y
mantenido como una unidad mediante los alambres, que se
conectan a las terminales de los nodos, llevan información de
una terminal de salida a una terminal de entrada
Introducción a LabView
20. Alambres rotos
Esto pasa si se conecta
mas de un nodo fuente
o no se conecta
ninguna terminal
fuente
LabVIEW
AVISA que hay algo que no
se está haciendo bien y el
alambre aparecer roto
Introducción a LabView
21. Alambrado limpio vs alambrado desordenado
Limpio: Fácil de resolver
Desordenado: ¿que es esto?
Introducción a LabView
22. Alambres
Cada tipo de alambre tiene diferente color, dependiendo del tipo de datos que
transporta
Scalar 1D array 2D array Color
Floating-point orange
number
Integer number blue
Boolean green
String pink
Introducción a LabView
24. Control del Programa
Casi siempre es necesario poner el programa
en un loop que pueda ser detenido con un
botón de control
El ambiente de diseño también tiene botones
para el control del programa:
Correr una sola vez: el programa se ejecuta
cuando todos los datos se vacían.
Correr continuamente: el programa se ejecuta
nuevamente
Abortar ejecución: el programa se detiene
inmediatamente
Pausar ejecución: esto es útil para depurar el
programa
Introducción a LabView
25. En cuanto al ambiente de
desarrollo
Introducción a LabView
26. Paleta de herramientas
Seleccionar un elemento para editar o mover
Añadir y editar texto
Operar un control
Punto de prueba
Alambrado
27. Paleta de controles
Insert a boolean control
(button or switch)
Insert a digital
indicator or control
28. Paleta de funciones
Operadores matemáticos
Agregar estructuras de (+,-,…)
programa, como “Whiles”
y “Case” Operadores Booleanos
Temporización
Comparasiones
Archivos de entrada Salida
Análisis de Señales
Adquisición de datos
Funciones
matemáticas
30. Barra de Herramientas
Distribución de
Ejecución continua
Tipo de letra elementos
Alineación de
Ejecución Paro Pausa
elementos
Depuración
Reordenamiento
de objetos
32. Creación de un VI de Suma y Resta de constantes
Panel Frontal
Diagrama fuente
Terminales de
los
indicadores
Terminales de
nodos de control
33. Creación de un VI de Suma y Resta de Variables
Panel Frontal
Diagrama fuente
Terminales de
nodos de control
Terminales de
los
indicadores
34. Ejemplo 3: Generador de funciones y osciloscopio
Se utiliza una señal senoidal a la cual se le puede modificar la frecuencia y la
amplitud
Se visualiza en un osciloscopio digital
Se tiene un botón de paro
Introducción a LabView
37. Métodos y técnicas de programación
Estructuras
Funciones preconstruidas
VI’s definidas por el usuario
Clusters
Tips de programación
Introducción a LabView
38. Estructuras
Como controlar el flujo de datos
• Estructura CASE
• Lazo “While”
• Lazo “For”
• Secuencia
• Nodo de fórmula
Introducción a LabView
39. CASE
Contiene uno o dos marcos
El marco que se ejecuta depende de lo que esté alambrado a la
terminal de selección
Es posible alambrar diferentes tipo s de datos al selector
Introducción a LabView
40. CASE
Menú de la
estructura case
Indicador de salida
Túnel de entrada
Controles de
entrada
Control de Túnel de salida
selección
Frontera del case
Terminal de selección Subdiagrama
Introducción a LabView
42. Ciclo WHILE
índice Verificación (boolean)
•Similar a la instrucción While de “C”
•Contiene un marco que es repetido
•La verificación de continuación del lazo es verificada
después de la ejecución, de tal forma que siempre hay al
menos una ejecución.
•La terminal “i” indica la iteración actual, el primer marco
tiene el índice 0
•La terminal “stop” puede servir como “continuar si es
verdadero” o “parar si es verdad”, lo cual es seleccionado
desde menú.
Introducción a LabView
43. Ciclo FOR
Terminal de conteo
Terminal de iteración
•Similar al ciclo while
•Permite ejecutar parte del código cierta cantidad de veces,
de acuerdo al valor de la variable alambrado a la termina N
•Si se alambra un “0” a la terminal, el marco no se ejecuta
ninguna vez, las salidas generadas no serán válidas,
•Los arreglos de entrada pueden ser indexados
automáticamente y si N no está alambrada, se llegará
hasta el tamaño del arreglo de entrada mas grande,
Introducción a LabView
44. Nodo de FORMULA
•Evita alambrar una gran cantidad de artimética
•Puede tener mas de una señal de entrada y de
salida
•Utiliza sintaxis tipo C
Introducción a LabView