GUIA DE EJERCICIOS 2 LISTO instrumentacion avanzada

GUÍA DE EJERCICIOS
Nº 2
INSTRUMENTACIÓN AVANZADA
Estructuras en LabVIEW
PROGRAMACIÓN GRÁFICA

1

USO DE ESTRUCURAS

While Loop
Es una estructura similar a la utilizada en otros lenguajes (do While… Loop), en la que una
rutina se repite hasta que la condición impuesta se cumple. Para colocar un While Loop en el DB
lo seleccionamos desde Functions?Structures

Terminal
Condicionante

Terminal deIteración

While Loop ejecuta el subdiagrama hasta que la condición terminal reciba un específico valor
booleano. Por defecto el terminal condicional se detiene si es verdad
“Sop if True” y
haciendo clic sobre el mismo puede cambiarse a
continuar si es verdad “Continue is True”.
El contador de la iteración siempre arrancará desde cero.
Ejercicio 2.1.
Armar un VI que cuente la cantidad de iteracionespara alcanzar la igualdad con un número
ingresado por el operador:
En el panel frontal quedará esta presentación:

El diagrama de bloques será el siguiente:

Se ha introducido la función “Increment” (+1), para contar el número real de iteraciones, dado
que como se ha dicho se inician en cero.

2

FOR LOOP
Contador de Ciclos:
indica cuantas
veces se repite el
subdiagrama

N – Terminal de conteo
i- Terminal de Iteración

EJECUTA UN
SUBDIAGRAMA UN
DETERMINADO NÚMERO
DE VECES

Si N es cero o
negativo
el ciclo
no se
ejecuta

Terminal de iteración
Contiene el número de
iteraciones completas

For I=0 to N-1

NOTA: El CERO es indexado y
aparece en la primera iteración

Ejecuta Código
Next I

En For Loop la rutina se ejecuta un número determinado de veces, impuesto por el contador de
ciclos N(borde superior izquierdo).
Ejercicio 2.2
Simular el llenado de un tanque utilizando la estructura FOR LOOP.

Ejercicio 2.3
Ejecutar una aplicación VI que genere 100 números aleatorios y los muestre en un gráfico
(Waveform Chart).
Diagrama de Bloques:

3

Panel Frontal:

Opciones de Waveform Chart
Desde el menú propiedades (con clic derecho):
Update Mode: Strip Chart
Desde el menú Plot efectuar lossiguientes cambios:

Con la paleta Tools efectuar el cambio de color de fondo (negro a blanco) de la pantalla.

Ejercicio 2.4.
Multiplicar los primeros 10 números naturales por una constante igual a 10. Obtener el resultado
de cada producto entre intervalos de un segundo.

Generación de un Array
Se puede usar tanto la secuencia FOR como WHILE LOOP para generar un array.
Esto es llamadoautoindexado y se logra a través de un túnel en el borde de la estructura.
Ejercicio 2.5
De ejercicio anterior, obtener en un array los resultados de las operaciones realizadas en cada
iteración

Auto-Indexed Tunnel

Si en el túnel con clic derecho pasamos a Disable Indexing, aparecerá el cableado de salida
quebrado. Si apoyamos el cursor con Create habilitamos un nuevo indicador numérico, que soloentregará el último resultado de la iteración.

4

Comprobar lo anterior agregando un nuevo túnel a For:

Ejercicio 2.6
Obtener el resultado en un array de los cuadrados de los números de 0 a 10 y graficarlos.

SHIFT REGISTERS
?
?
?
?
?

“Shift registers” (SR) se utiliza tanto en los WHILE LOOP como en FOR LOOP.
Se utilizan para transferir datos desde una iteración a la siguiente.
Son similares a lasvariables estáticas en los lenguajes de programación basados en texto.
Un SR se crea haciendo click sobre el borde derecho o izquierdo del loop y
seleccionando “Add Shift registers” desde el menú emergente.
Los datos a cablear en los terminales de cada SR deben ser del mismo tipo.

5

Ejercicio 2.7:
Obtener el penúltimo y último resultado del cuadrado de los primeros cinco números naturalesutilizando la propiedad de Shift Registers.

CASE STRUCTURE
Esta estructura es equivalente a IF/ THEN/ ELSE de los lenguajes tradicionales de texto.
If condition=TRUE then
Ejecute el código 1
ELSE
Ejecute el código 2
Endif

Ejercicio 2.8
A partir de la estructura CASE, realice la aplicación siguiente:

Cuando el pulsador está en OFF debe aparecer “Pulsador en OFF” y el LED en color rojo.

Cuando el…