Sie sind auf Seite 1von 86

Instrumentacin Virtual con LabVIEW

INTRODUCCIN

Trminos de LabVIEW
Componentes de aplicacin de LabVIEW
Herramientas de programacin de LabVIEW
Crear una aplicacin en LabVIEW

Qu es LabView?
Es un entorno de programacin grfica usado
para desarrollar aplicaciones de medida, pruebas y control
Diseado por National Instruments desde 1986

La mejor manera de aprender LabVIEW


es:
PRACTICAR, PRACTICAR,
PRACTICAR

Cul es el uso bsico de LabView en


un Sistema de Instrumentacin?

Monitorear sensores en un experimento

Procesar los datos y representarlos de forma eficiente

Guardar todos los datos obtenidos en el experimento para realizar el anlisis

ADQUISICIN DE DATOS (DAQ)


Es el proceso de importar
automticamente datos desde un
instrumento o circuito hacia
la computadora

Cmo se programa en LabView?


Se usan conos grficos e intuitivos y cables que parecen un diagrama de
flujo

PROGRAMACIN GRFICA
Contiene los mismos
conceptos de
programacin que se pueden encontrar en la
mayora de los lenguajes tradicionales.
Tipos de datos,
bucles, eventos,
variables

se ejecuta de acuerdo con las reglas


del
flujo de datos en lugar de serie secuencial de
comandos

Beneficios de la programacin G
Programacin grfica intuitiva
los ingenieros piensan mejor en imgenes

Los datos se originan en la funcin de adquisicin y luego fluyen a las funciones de


anlisis y almacenamiento a travs de los cables.

Programas de LabVIEW se llaman instrumentos


virtuales (VIs)
Panel frontal
Controles = entradas
Indicadores = salidas

Diagrama de bloque
Programa de acompaamiento
para el panel frontal
Componentes cableados
entre si

Un instrumento virtual es:


Una computadora equipada con software y hardware
especializados para cumplir las funciones de un
instrumento de medicin de seales ( temperatura,
presin, caudal, entre otras.)
Con los datos obtenidos de la medicin, realiza:

Procesamiento
Anlisis
Almacenamiento
Despliegue.
Disear algoritmos de control

Instrumento
Virtual
Definido por el usuario
Basados en software
Flexibilidad
Reutilizacin
Reconfiguracin

VS

Instrumento tradicional
Tiene funcionalidad fija
Basados en hardware

Panel frontal de VI
Barra de herramientas
del panel frontal

Control
Booleano

Icono

Leyenda del
grfico

Grfico de
Forma de onda
Leyenda de
La grafica

Leyenda de
la escala

VI Diagrama de bloque
Barra de
Herramientas
Del diagrama de
Bloque

Funcion de
dividir

SubVI
Terminal
grafica
Cableado
de
datos
Estructura
While loop

Constante
numerico

Funcion de
tiempo

Terminal de control
booleano

VIs Expreso, VIs y Funciones


VIs Expreso: VIs interactivos con pagina de dialogo
configurable
VIs estndar: VIs modulares y personalizables mediante
cableado
Funciones: Elementos fundamentales de operacin de
LabVIEW; no hay panel frontal o diagrama de bloque

VI Estandar

VI Expreso
Funcion

Paleta de controles y funciones


Paletas de control
(Ventana del panel frontal)

Paleta de funciones
(Ventana de diagrama de bloque)

Paleta de Herramientas
Paleta flotante
Utilizado para operar y modificar
objetos en el panel frontal y en el
diagrama de bloques.
Herramienta de seleccin automatica
Herramienta de operacin

Herramienta de desplazamiento

Herramienta de posicionamiento

Herramienta de punto de paro

y redimensin

Herramienta de prueba

Herramienta de etiquetado

Herramienta para copia de color

Herramienta de cableado

Herramienta para colorear

Herramienta de men (atajo)

Barra de herramientas de Estado


Botn de ejecucin (Run)
Botn de ejecucin continua
(Continuous Run)
Cancelacin de ejecucin
(Abort Execution)

Botones adicionales en
el diagrama de la barra
de herramientas

Botn de pausa/continuacin

Botn de ejecucin resaltada


(Highlight Execution)

Configuracin de textos
(Text Settings)

Botn de entrada al ciclo


(Step Into)

Alineamiento de objetos
(Align Objects)

Botn sobre (Step Over)

Distribucin de objetos
(Distribute Objects)

Botn de salida del ciclo


(Step Out)

Reordenamiento
Redimensionamiento de objetos
de panel frontal (Resize Objects)

Abra y Ejecute un Instrumento Virtual


Buscador de Ejemplos

Creando un VI
Ventana de Panel Frontal

Ventana de Diagrama de Bloques

Terminales
de
Control

Terminales
de
Indicador

Creando un VI Diagrama de
Bloques

Consejos Para Conectar Diagrama de Bloques


Punto Caliente de Cableado

Utilice la Ruta Automtica


del Cable

Haga Clic para Seleccionar los Cables

Limpiando el Cableado

Programando el Flujo de Datos


El diagrama de bloque se ejecuta
dependiendo del flujo de los datos;
el diagrama de bloques NO se
ejecuta de izquierda a derecha
El nodo se ejecuta cuando los
datos estn disponibles para
TODOS los terminales de entrada.
Los nodos suministran datos a
todos los terminales de salida
cuando termina.

Opciones de Ayuda
Contexto de la Ayuda

Ayuda en lnea
Congelar Ayuda
Ayuda del Diagrama Simple/Complejo
Ctrl + H

Referencias en Lnea
Todos los mens en lnea
Clic en las funciones del diagrama para tener acceso directo a
la informacin en lnea.

Tcnicas para Eliminar Errores


Encontrando los Errores

Haga clic en el botn de correr que esta roto;


Aparece una ventana mostrando los errores
Resaltar la Ejecucin
Haga clic en el botn de ejecucin resaltada; el
flujo de datos es animado utilizando burbujas.
Herramienta de Prueba
Los valores se despliegan en los cables.

Haga clic con el botn derecho sobre el cable para


exhibir la ventana de prueba y as mostrar los
datos mientras fluyen por el segmento de cable.

Tambin puede seleccionar la herramienta de


prueba desde la paleta de herramientas y hacer un
clic en el cable.

Todos los controles e indicadores estn asociados con un


tipo de dato y solo pueden contener uno solo de estos.

Cadenas de Caracteres
Crear mensajes de texto simples.

Controlar instrumentos
Almacenar datos numricos en disco.
Indicar o advertir al usuario con ventanas de
dilogos.

Datos Booleanos
Almacena datos como valores de 8 bits.
Un Booleano puede usarse para representar 0 o
1, o un TRUE o FALSE
Representan datos digitales

Funcionan como un control de panel frontal


actuando como un interruptor que tiene una
accin mecnica

Datos Numricos
Nmeros Enteros

Nmeros de Punto flotante

Nmeros complejos

Punto de coercin
Indica que dos tipos de datos numricos diferentes han sido aplicados a una
funcin.

Es preferible, para mejorar el rendimiento de la


memoria, hacer una conversin entre tipos de
datos

Conversin de datos
recomendada

Errores en el manejo de datos dinmicos

Las conexiones rotas aparecen


cuando tipos de datos invlidos son
unidos

Ejercicio 1 Convertir de C a F

Tips para trabajar en LabVIEW


Atajos desde el teclado
<Ctrl-H> Activa/Desactiva la Ventana de Ayuda
<Ctrl-B> Remueve todos los cables rotos del diagrama de
bloques
<Ctrl-E> Cambiar entre el Panel Frontal y el Diagrama de
Bloques
<Ctrl-Z> Deshacer cambios Undo (tambin disponible
en el menu
de edicin)

Herramientas Opciones Establecer Preferencias


en LabVIEW
Propiedades del VI Configurar la Apariencia del VI,
Documentacin, etc.

ESTRUCTURAS BSICAS
Las estructuras se comportan como cualquier
otro nodo en el diagrama de bloques,
ejecutando automticamente lo que est
programado en su interior.
Suministran los correspondientes valores a los
cables unidos a sus salidas. Sin embargo, cada
estructura ejecuta su subdiagrama de acuerdo
con las reglas especficas que rigen su
comportamiento.

ESTRUCTURAS BSICAS
Un subdiagrama es una coleccin de nodos,
cables y terminales situados en el interior del
rectngulo que constituye la estructura.

El For Loop y el While Loop nicamente tienen un


subdiagrama. El Case Structure y el Sequence
Structure, sin embargo, pueden tener mltiples
subdiagramas superpuestos, por lo que en el
diagrama de bloques nicamente ser posible
visualizar uno a la vez.

ESTRUCTURAS BSICAS
LabVIEW proporciona estructuras de programacin (Functions-Structures)
para realizar diferentes procesos; entre dichas estructuras se encuentran:
FOR.- Ejecuta un subdiagrama un nmero determinado de ocasiones.
WHILE.- Ejecuta un subdiagrama hasta que una condicin se cumpla.
CASE STRUCTURE.- Contiene mltiples subdiagramas, de los cuales solo
uno se ejecuta dependiendo de la variable de entrada a la estructura.
SECUENCE STRUCTURE.- Contiene uno o ms subdiagramas, los cuales se
ejecutan de manera secuencial.

MATHSCRIPT
.- Realiza operaciones matemticas utilizando
variables definidas por el usuario de la misma
estructura (
Mathscript
es similar a Matlab, pero integrado
en LabVIEW)

WHILE LOOP
Se ejecutar hasta que se cumpla una condicin y
se entregue el valor booleano de parada (parar
cuando sea verdadero es la ms utilizada)
El terminal condicional se ubica en la parte
inferior derecha del lazo.
Puede usar tneles (auto-indexado esta
deshabilitado por defecto).
Usualmente ms usado que el For loop porque
tiene un mecanismo para abortar la ejecucin y
el tener la capacidad de detener la ejecucin es
muy importante en cualquier programa.

WHILE LOOP

WHILE LOOP
Si se desea cambiar la lgica del terminal de
condicin

WHILE LOOP
Armar un VI que cuente la cantidad de
iteraciones para alcanzar la igualdad con un
nmero ingresado por el operador

WHILE LOOP

WHILE LOOP - EJERCICIO


Generacin de una onda seno

WHILE LOOP

FOOR LOOP
Es usado para ejecutar una seccin del cdigo
un nmero determinado de veces
El cdigo que necesita ser ejecutado repetidas
veces es ingresado en el lazo.
El nmero de iteraciones se especifica en la N
del cuadro si es cero el lazo no se ejecutar
i es un contador ascendente
Los datos salen del ciclo por un tnel, si este
tiene habilitado el indexado saldr un arreglo
si no, saldr el ltimo valor que entre a l

FOR LOOP

FOR LOOP
Es utilizado para crear arreglos y para
separarlos, lo que permite trabajar elemento
por elemento del array.
El auto-indexado puede manejar arreglos de
ms de una dimensin
Con un lazo dentro de otro se crean arreglos
de dos dimensiones donde el lazo interior
dar el nmero de columnas y el de fuera el
de filas.

FOR LOOP
Simular el llenado de un tanque utilizando la
estructura FOR LOOP

FOR LOOP
Grfica de 100 nmeros aleatorios entre 10 y
50

FOR LOOP

SHIFT REGISTER
While Loop y Foor Loop es necesario pasar datos
entre interacciones
Shift Registers permiten almacenar los datos que
ingresaron a l en un registro.
Permite retroalimentar los valores para la nueva
ejecucin
Consta de un elemento que entrega los datos y otro
que permite ingresarle datos al registro.
Permite inicializarse, si no se lo hace el primer valor
ser 0 si el registro es de datos numricos y la
prxima ves que se ejecute el programa el primer
valor que entregue ser el ltimo que lleg al registro

SHIFT REGISTER

SHIFT REGISTER
Estn formados por un par de terminales que
se adaptan a cualquier tipo de dato y que
estn localizados a cada lado de los bordes de
la estructura

SHIFT REGISTER

SHIFT REGISTER
El comportamiento del Shift Register con
elementos adicionados

SHIFT REGISTER
Para poder
tener acceso a iteraciones
anteriores se debe adicionar elementos al
registro de desplazamiento.

SHIFT REGISTER EJEMPLO


Sumar los nmeros entre 1 y 100

SHIFT REGISTER - EJEMPLO


Promediar los dos ltimos datos aleatorios

SEQUENCE STRUCTURE
Se encuentra en la paleta de estructuras
Luce como un cuadro de pelcula cuando se lo posiciona

Permite una ejecucin progresiva en relacin al orden establecido


en ella. Los objetos ubicados en el primer cuadro se ejecutaran
primero y as sucesivamente
Se le pueden aadir cuadros haciendo clic derecho sobre la
estructura e indicando Add Frame estos se pueden ubicar antes o
despus del cuadro actual

SEQUENCE STRUCTURE
Se pueden pasar datos de un cuadro a otro usando secuencias locales
(disponible en el men rpido) donde la flecha en ellas indica si el dato
esta ingresando en la secuencia o saliendo de ella y su color representa el
tipo de dato.
La secuencia local esta disponible en todos los cuadros
Los datos salen de la estructura por tneles pero el dato saldr por ellos
solo cuando todos los cuadros culminen

SEQUENCE STRUCTURE

SEQUENCE STRUCTURE
En la parte superior del marco de cada
estructura se encuentra el identificador de
diagrama que es utilizado para navegar entre
frames.

SEQUENCE STRUCTURE
Se puede aadir o borrar casos accediendo al
men rpido y seleccionando:
Add case after o before
Delete this case

SEQUENCE STRUCTURE

SEQUENCE STRUCTURE

SEQUENCE STRUCTURE

SEQUENCE STRUCTURE

SEQUENCE STRUCTURE
Determinar el tiempo que la PC demora en
generar 10000 datos aleatorios

SEQUENCE STRUCTURE - EJEMPLO

CASE STRUCTURE
Es una estructura condicional
Se ejecutar el caso correspondiente a su entrada
Si el caso no esta especificado se ejecuta el que esta
por defecto

CASE STRUCTURE

CASE STRUCTURE

CASE STRUCTURE

CASE STRUCTURE
Los datos en todos los tneles de entrada y en el
terminal de seleccin pueden ser accedidos por todos
los subdiagramas de casos
Para que un tnel de salida este completo se le debe
alimentar desde todos los casos

CASE ESTRUCTURE
A partir de dos entradas numricas y un control
tipo men con las opciones suma, resta,
multiplicacin y divisin, se busca generar una
salida ensee su resultado

CASE ESTRUCTURE - EJEMPLO

CASE ESTRUCTURE - EJEMPLO

CASE ESTRUCTURE - EJEMPLO

CASE STRUCTURE - EJEMPLO


Calcular la raz cuadrada de un nmero. Si la
raz existe se proporcionar un valor. De no
existir (nmero imaginario), aparecer un
mensaje acorde a la situacin.

CASE STRUCTURE - EJEMPLO

FORMULE NODE
Es un contenedor de formulas matemticas.
Acepta lenguaje c.
Las variables de la frmula deben ser
especificadas como entradas o salidas en sus
paredes con Add input o Add output para que
se creen los terminales para estos datos.
Todas las entradas deben ser conectadas para
que se ejecute.
Cualquier expresin debe terminar con ;
En el Context Help se encuentran las
funciones que se puede usar.

FORMULE NODE - EJEMPLO


Se realizar en forma convencional y con un nodo de frmula el clculo de la
Suponiendo conocidos x e y.

2
x
z

FORMULE NODE

SubVIs

Que es un subVI?
Elaboracin de un
icono y un conector
para un subVI
Utilizando un VI
como un subVI

Nodos del Diagrama de Bloques


Icono

Nodo Expandible

VI de Generador de Funciones
El mismo VI, visto en tres maneras
diferentes.
El campo amarillo designa un VI Estndar.
El campo azul designa un VI Expreso

Nodo Expandido

Das könnte Ihnen auch gefallen