guia de ejercicios 2

11
Instrumentación Avanzada. J. A. Suárez- G. Murcia 1 GUÍA DE EJERCICIOS Nº 2 INSTRUMENTACIÓN AVANZADA Estructuras en LabVIEW PROGRAMACIÓN GRÁFICA

Upload: juanjtovarp

Post on 25-Oct-2015

283 views

Category:

Documents


23 download

TRANSCRIPT

Page 1: Guia de Ejercicios 2

Instrumentación Avanzada. J. A. Suárez- G. Murcia

1

GUÍA DE EJERCICIOS

Nº 2 INSTRUMENTACIÓN AVANZADA

Estructuras en LabVIEW

PROGRAMACIÓN GRÁFICA

Page 2: Guia de Ejercicios 2

Instrumentación Avanzada. J. A. Suárez- G. Murcia

2

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 FunctionsStructures

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 iteraciones para 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.

Terminal de

Iteración

Terminal

CondicionanteTerminal de

Iteración

Terminal

CondicionanteTerminal de

Iteración

Terminal

Condicionante

Page 3: Guia de Ejercicios 2

Instrumentación Avanzada. J. A. Suárez- G. Murcia

3

FOR LOOP

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:

Contador de Ciclos:

indica cuantas

veces se repite el

subdiagrama

Terminal de iteración

Contiene el número de

iteraciones completas

N – Terminal de conteo

i - Terminal de Iteración

For I=0 to N-1

Ejecuta Código

Next I

NOTA: El CERO es indexado y

aparece en la primera iteración

EJECUTA UN

SUBDIAGRAMA UN

DETERMINADO NÚMERO

DE VECES

Si N es cero o

negativo

el ciclo

no se

ejecuta

Contador de Ciclos:

indica cuantas

veces se repite el

subdiagrama

Terminal de iteración

Contiene el número de

iteraciones completas

N – Terminal de conteo

i - Terminal de Iteración

For I=0 to N-1

Ejecuta Código

Next I

NOTA: El CERO es indexado y

aparece en la primera iteración

EJECUTA UN

SUBDIAGRAMA UN

DETERMINADO NÚMERO

DE VECES

Si N es cero o

negativo

el ciclo

no se

ejecuta

Page 4: Guia de Ejercicios 2

Instrumentación Avanzada. J. A. Suárez- G. Murcia

4

Panel Frontal:

Opciones de Waveform Chart

Desde el menú propiedades (con clic derecho):

Update Mode: Strip Chart

Desde el menú Plot efectuar los siguientes 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 llamado autoindexado 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

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 solo

entregará el último resultado de la iteración.

Auto-Indexed TunnelAuto-Indexed Tunnel

Page 5: Guia de Ejercicios 2

Instrumentación Avanzada. J. A. Suárez- G. Murcia

5

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 las variables 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.

Page 6: Guia de Ejercicios 2

Instrumentación Avanzada. J. A. Suárez- G. Murcia

6

Ejercicio 2.7:

Obtener el penúltimo y último resultado del cuadrado de los primeros cinco números naturales

utilizando 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 pulsado está en ON debe aparecer la leyenda “Pulsador en ON” y el LED cambiar a color

verde.

Page 7: Guia de Ejercicios 2

Instrumentación Avanzada. J. A. Suárez- G. Murcia

7

Ejercicio 2.9

Ingresar dos números “x” e “y” y realizar mediante un control booleano combinado con una

estructura CASE la suma o resta de los mismos.

Ejercicio 2.10

Ejecute una aplicación para obtener la raíz cuadrada de un número. Si el número ingresado es

menor que cero debe aparecer un diálogo de advertencia: “Error ha ingresado un número

negativo”.

Ejercicio 2.11

Desarrolle una aplicación para obtener a partir de dos números ingresados las cuatro operaciones

matemáticas (suma, resta, multiplicación y división) utilizando como menú un control del tipo

RING.

Repita el ejercicio reemplazando el control RING por uno del tipo TAB

Page 8: Guia de Ejercicios 2

Instrumentación Avanzada. J. A. Suárez- G. Murcia

8

Ejercicio 2.12

Desarrolle una aplicación que adquiera la lectura de la temperatura desde una termocupla

(simulada con la entrada analógica de la placa USB) y muestre el valor en pantalla.

Controle el valor mínimo y máximo desde el panel frontal entre 300 y 700C.

Si estos valores son excedidos mostrar un alerta en placa y pantalla encendiendo un LED.

Page 9: Guia de Ejercicios 2

Instrumentación Avanzada. J. A. Suárez- G. Murcia

9

ESTRUCTURAS EN LABVIEW

EJERCICIOS SEGUNDA PARTE Ejercicio 2.13

Simular un proceso en donde una variable analógica (simulada con la placa USB) sube

gradualmente hasta alcanzar el valor 100. A partir de aquí y transcurridos 10s la variable se

ajusta a un valor doble, transcurridos otros 10s vuelve a duplicarse y dentro de otros 10s se

reduce a la mitad. Durante todo el proceso debe encenderse un LED indicador de “Proceso

Iniciado”.

Ejercicio 2.14

Construir un señalizador luminoso de cuatro LEDs que se iluminen en forma cíclica de izquierda

a derecha. Utilice la placa adquisidora para comprobar su funcionamiento real.

Ejercicio 2.15

Construir un VI que simule el llenado y vaciado de un tanque. El nivel del tanque debe

controlarse desde el panel frontal. Debe incorporarse el control de apertura y cierre de la válvula.

Válvula abierta – Llenado del tanque Válvula cerrada – Vaciado del tanque

Page 10: Guia de Ejercicios 2

Instrumentación Avanzada. J. A. Suárez- G. Murcia

10

Ejercicio 2.16

Construir un VI, en cuyo panel frontal se simule el arranque de una torre de enfriamiento

(ventilador en movimiento/LED encendido) y la detención con un pulsador de tarjeta USB.

Ejercicio 2.17 Simular y registrar las variaciones de tensión en una instalación eléctrica a partir de la

adquisición de datos de la entrada analógica de la placa USB.

La tensión debe ser graficada en sus valores: actual, mínimo y máximo (valores extremos).

El panel frontal debe tener el siguiente aspecto:

Page 11: Guia de Ejercicios 2

Instrumentación Avanzada. J. A. Suárez- G. Murcia

11

Ejercicio 2.18

Construir un VI con el siguiente aspecto en el panel frontal:

Debe controlar el encendido a voluntad del operador de tres motores, mediante el uso de la

estructura Event. Los LEDs deben quedar encendidos (tanto en el panel frontal como en la Placa

USB PIC18F2550) una vez que el motor entró en funcionamiento.

Ejercicio 2.19

Desarrollar la una aplicación que controle el encendido y corte de dos motores a voluntad del

operador, con un panel frontal similar al siguiente:

Los LEDs (Panel Frontal y Placa USB) deben quedar iluminados toda vez que el motor arranque

y apagado cuando está fuera de servicio.

Ejercicio 2.20

Construir un VI donde puedan simularse las cuatro operaciones matemáticas, utilizando la

estructura Event. Una vez iniciado la ejecución del programa, al introducir los números en las

variables “a” y “b” debe actualizarse el resultado.