Está en la página 1de 43

Estructuras en

LabVIEW.
Sumario:
1. Ejecucin segn el flujo de datos.
2. Estructuras bsicas disponibles en LabVIEW.
a) Estructura Sequence.
b) Estructura Case.
c) Estructura For Loop.
d) Estructura While Loop.
Flujo de datos : Principio que gobierna la
ejecucin de los programas (VI) en LabVIEW
Fundamentos
1- Un nodo se ejecuta solo cuando estn
disponibles todos los datos en sus entradas.
2- El nodo transfiere los datos a sus salidas,
solo cuando se termina la ejecucin del nodo.
3- Los datos pasan inmediatamente del terminal
fuente al terminal (o terminales) destino.
1. Ejecucin segn el flujo de datos.
Programacin convencional
* Se ejecutan instrucciones secuencialmente en el orden
especificado por el programador.
LabVIEW
* Las instrucciones se ejecutan cuando han recibido todos
los datos necesarios para su ejecucin.
* Las instrucciones entregan los resultados (datos) solo
cuando se han terminado de ejecutar completamente.
1. Ejecucin segn el flujo de datos.
1- Un nodo se ejecuta solo cuando estn disponibles
todos los datos en sus entradas.
Primero se ejecuta la multiplicacin y
despus se ejecuta la resta
Que operacin se ejecuta primero ?
1. Ejecucin segn el flujo de datos.
1- Un nodo se ejecuta solo cuando estn disponibles
todos los datos en sus entradas.
Se ejecutan primero y
simultneamente las funciones:
multiplicacin
divisin
generacin del # aleatorio
Que operacin se ejecuta primero ?
1. Ejecucin segn el flujo de datos.
1- Un nodo se ejecuta solo cuando estn disponibles
todos los datos en sus entradas.
Las cuatro funciones
se ejecutan a la vez.
La ubicacin en el D.B.
no determina el orden
de ejecucin.
Para garantizar un orden en la ejecucin de tareas:
* Utilizar la estructura sequence
* Obligar a que exista una dependencia de datos
Que operacin se ejecuta primero ?
1. Ejecucin segn el flujo de datos.
2- El nodo transfiere los datos a sus salidas,
solo cuando se termina la ejecucin del nodo.
b debe esperar por a para salir del nodo.
Que dato sale primero de la estructura While Loop ?
El dato del cable a o el dato del cable b ?
El nodo es una estructura while loop que se ejecuta una sola vez
1. Ejecucin segn el flujo de datos.
3- Los datos pasan inmediatamente del terminal
fuente al terminal (o terminales) destino.
1. Ejecucin segn el flujo de datos.
Que operacin se ejecuta primero ?
1. Ejecucin segn el flujo de datos.
Donde podemos
encontrar
las estructuras ?
Diagrama en bloques, Paleta de funciones, Subpaleta Programming,
Subpaleta Structures
2. Estructuras disponibles en LabVIEW.
Forma del Icono de las estructuras
2. Estructuras disponibles en LabVIEW.
Estructuras: permiten controlar la ejecucin del VI
Estructuras iterativas: For Loop, While Loop
Estructura condicional:
estructura case
Estructura para establecer orden en la ejecucin
(Estructuras Sequence):
1- Stacked sequence 2- Flat sequence
2 frames
multiframe
Selector booleano
Selector numrico
o del tipo string
* Single frame
* Multi frame
2. Estructuras disponibles en LabVIEW.
Algunas caractersticas de las estructuras
Las estructuras :
1- Se rigen tambin por la ejecucin basada en el flujo de datos.
2- Se ejecutan cuando estn disponibles todos los datos
en sus entradas
3- Suministran los datos a sus salidas solo cuando se han
terminado de ejecutar completamente
Cada estructura ejecuta su subdiagrama
Subdiagrama: comprende todos los objetos ubicados
dentro del borde de la estructura
Objetos
Terminales
Cables
Nodos
Otras estructuras
2. Estructuras disponibles en LabVIEW.
Cantidad de subdiagramas que presenta cada estructura
Presentan un solo subdiagrama
* Presentan varios subdiagramas.
* Solo se visualiza un subdiagrama
* Se puede seleccionar el
subdiagrama a visualizar
* For Loop
* While Loop
* Case
* Stacked Sequence
* Event
* Presenta varios subdiagramas.
* Se visualizan todos los subdiagramas * Flat Sequence
2. Estructuras disponibles en LabVIEW.
Tunnels: tipo de terminal que permite transferir datos
hacia (in) o desde (out) la estructura.
Los tunnels se ubican en el borde de la estructura.
In tunnels: permiten transferir datos hacia la estructura,
generalmente se ubican en el borde izquierdo de la estructura.
Out tunnels: permiten transferir datos desde la estructura,
generalmente se ubican en el borde derecho de la estructura.
Existen otros tipos de tunnels que dependen del tipo
de estructura.
2. Estructuras disponibles en LabVIEW.
Entradas / Salidas de las estructuras:
Creacin de la
Estructura
Igual que de los
dems objetos :
+
2. Estructuras disponibles en LabVIEW.
Estructura Sequence
Stacked (apilada) y
Flat (plana)
Stacked sequence structure : permite establecer un orden de
ejecucin entre tareas donde no existe una dependencia de datos
Stacked sequence de un solo frame:
un solo subdigrama
Estructura sequence de varios frames: varios subdiagramas,
No se pueden visualizar todos los subdiagramas simultneamente,
Solo es posible visualizar un subdiagrama
2. Estructuras disponibles en LabVIEW.
Identificador del frame cuyo subdiagrama
es el que se esta visualizando
Mostrar frame
anterior
Total de frames
Sequence Structure : Caractersticas
Cada subdiagrama esta contenido en un frame marco.
Primero se ejecuta el frame 0, despus el frame 1 y as
sucesivamente hasta el ultimo
Mostrar frame
siguiente
2. Estructuras disponibles en LabVIEW.
Los datos en los tneles de entrada estn disponibles para
todos los frames
Un tnel de salida
solo puede tener una
fuente de dato
Un tnel de salida puede ser
emitido por cualquier frame,
pero los datos solo estarn
disponibles cuando se termine
de ejecutar toda la secuencia
de frames.
Tneles de entrada
Tneles de salida
Para pasar datos entre frames se puede utilizar un terminal
denominado sequence local
2. Estructuras disponibles en LabVIEW.
Uso de la sequence local en la Stacked sequence structure
Sequence local
de un frame anterior
Sequence local disponible
para frames posteriores
Sequence local
no disponible
Tnel
2. Estructuras disponibles en LabVIEW.
Flat sequence structure : permite establecer un orden de
ejecucin entre tareas donde no existe una dependencia de datos
Flat sequence de un solo frame:
un solo subdigrama
Flat sequence de varios frames: varios subdiagramas,
Se pueden visualizar todos los subdiagramas simultneamente.
2. Estructuras disponibles en LabVIEW.
El diagrama en bloques queda mejor documentado
Evita el uso de la sequence locals
Se ejecutan todos los subdiagramas secuencialmente
de izquierda a derecha
2. Estructuras disponibles en LabVIEW.
Estructura Case
ESTRUCTURA CASE : Estructura condicional. Presenta varios
subdiagramas de los cuales solo se ejecuta un subdiagrama
segn el dato que llega al selector de subdiagrama
Selector de subdiagrama booleano:
solo dos subdiagramas
Selector de subdiagrama numrico o tipo string :
la estructura admite dos mas subdiagramas
2. Estructuras disponibles en LabVIEW.
Estructura Case
Selector de
Subdiagrama
(booleano)
Identificador de
subdiagrama
Mostrar
subdiagrama
siguiente
Mostrar
subdiagrama
anterior
2. Estructuras disponibles en LabVIEW.
Una variable booleana controla el selector de
subdiagrama. Solo hay dos subdiagramas.
Subdiagrama FALSE Subdiagrama TRUE
2. Estructuras disponibles en LabVIEW.
Una variable numrica controla el selector de subdiagrama.
Pueden existir dos mas subdiagramas
Subdiagrama 0
(default)
Subdiagrama 1
Subdiagrama 2 Subdiagrama 3
2. Estructuras disponibles en LabVIEW.
Una variable tipo ENUM (numrica) controla el selector
de subdiagrama. Pueden existir dos mas subdiagramas
Subdiagrama 0
(default)
Subdiagrama 1
Subdiagrama 2 Subdiagrama 3
2. Estructuras disponibles en LabVIEW.
Una variable tipo string controla el selector de subdiagrama.
Pueden existir dos mas subdiagramas.
Ahora cada subdiagrama se identifica a travs de una cadena de caracteres
Subdiagrama suma
(default)
Subdiagrama resta
Subdiagrama multiplica Subdiagrama divide
2. Estructuras disponibles en LabVIEW.
Un tunnel de salida se debe cablear desde todos los
subdiagramas, sino el programa da error y no se ejecuta
2. Estructuras disponibles en LabVIEW.
Cuando el selector de subdiagrama es un dato numrico,
el identificador de subdiagrama puede ser: un nmero, una lista,
un rango una lista y un rango
Nmero Lista
Lista y rango
Rango
Formas de especificar el rango:
..0 (incluye el cero y todos los nmeros
menores que cero)
10..20 (incluye el 10, el 20 y todos los
nmeros entre 10 y 20)
100.. (incluye el 100 y todos los nmeros
mayores que cien)
2. Estructuras disponibles en LabVIEW.
Estructura
For Loop
ESTRUCTURA For Loop : Estructura de iteracin. Permite ejecutar
N veces todas las operaciones colocadas dentro de su subdiagrama.
Se utiliza cuando previamente se conoce la cantidad de veces
que se desea ejecutar un subdiagrama.
Presenta un solo subdiagrama
el cual siempre es visible
Presenta un terminal contador (N)
y un terminal de iteracin (i)
N e i se pueden leer desde el interior de la
estructura, pero no se pueden modificar
2. Estructuras disponibles en LabVIEW.
Estructura For Loop
Terminal de
iteracin (i)
Terminal
contador (N)
Terminal contador: contiene el nmero
de veces que se ejecutara el subdiagrama
creado en el interior de la estructura.
N puede ser igual a cero
Terminal de iteracin: indica el nmero
de veces que se ha ejecutado el subdiagrama
creado en el interior de la estructura.
Iteracin i
primera 0
segunda 1
... ...
Iteracin N N-1
Subdiagrama
2. Estructuras disponibles en LabVIEW.
Estructura
While Loop
ESTRUCTURA While Loop : Estructura de iteracin. Permite
ejecutar todas las operaciones colocadas dentro de su subdiagrama
mientras que una determinada condicin sea TRUE o FALSE.
Se utiliza cuando no se conoce previamente la cantidad de veces
que se desea ejecutar un subdiagrama.
Presenta un solo subdiagrama
el cual siempre es visible
Presenta un terminal condicional
y un terminal de iteracin (i)
i se puede leer desde el interior de la estructura, pero no se
puede modificar. El terminal condicional se debe actualizar
en cada iteracin
En la primera iteracin el terminal
de iteracin (i) es igual a cero
2. Estructuras disponibles en LabVIEW.
Se vuelve a iterar si al terminal condicional llega FALSE
Por default esta configurada
de esta forma
2. Estructuras disponibles en LabVIEW.
Se vuelve a iterar si al terminal condicional llega TRUE
Terminal de iteracin: indica el nmero de veces que se ha
ejecutado el subdiagrama creado en el interior de la estructura.
# de veces que se
ha ejecutado el
subdiagrama
I
1 0
2 1
3 2
... ...
Terminal de condicional: A el se debe conectar la condicin por la cual
se pregunta para volver a ejecutar el subdiagrama. Se puede conectar
un terminal o el resultado de una operacin lgica.
2. Estructuras disponibles en LabVIEW.
Out Tunnel o tnel de salida: terminal colocado en el borde de la
estructura (generalmente en la derecha) para que otros nodos puedan
utilizar los datos generados durante las ejecuciones del subdiagrama
en el interior de la estructura.
Existen dos tipos de tunnels de salida:
Tunnel de salida no indexado: terminal que entrega solo el dato que
llego a el en la ultima iteracin.
Tunnel de salida indexado: terminal que entrega los datos que llegaron
a l en cada una de las iteraciones. Este terminal entrega un array del tipo
de dato que tiene conectado.
Tnel de salida indexado Tnel de salida no indexado
2. Estructuras disponibles en LabVIEW.
Out Tunnel indexado
Out Tunnel no indexado
El tunnel indexado entrega los cinco nmeros aleatorios generados
durante las cinco iteraciones
El tunnel no indexado entrega solo el nmero aleatorio generado
durante la ultima iteracin
Array: coleccin de elementos del mismo tipo. El nmero total de elementos
es variable, es decir, puede tomar cualquier valor.
2. Estructuras disponibles en LabVIEW.
In Tunnel o tnel de entrada: terminal colocado en el borde de la
estructura (generalmente en la izquierda) para que el subdiagrama
colocado en el interior de la estructura iterativa pueda utilizar este dato.
Cuando el In Tunnel o tnel de entrada corresponde a un array, el
mismo se puede configurar como indexado o como no indexado.
Tnel de entrada no indexado en el interior del subdiagrama se tienen
disponibles todos los elementos del array en cada iteracin
Tnel de entrada indexado en el interior del subdiagrama solo se tiene
disponible el elemento del array cuyo ndice corresponde con el numero
de iteracin
Utilizacin de los In tunnel en las estructuras iterativas
2. Estructuras disponibles en LabVIEW.

También podría gustarte