La descarga está en progreso. Por favor, espere

La descarga está en progreso. Por favor, espere

Instrumentación Virtual con LabVIEW

Presentaciones similares


Presentación del tema: "Instrumentación Virtual con LabVIEW"— Transcripción de la presentación:

1 Instrumentación Virtual con LabVIEW
ESTRUCTURAS

2 Estructuras For Loop: se ejecuta un subdiagrama un número determinado de veces While Loop: se ejecuta un subdiagrama hasta que se cumpla una condición determinada. Flat Sequence Structure: Uno o más subdiagramas se ejecutan en una secuencia determinada. Case Structure: se ejecuta un subdiagrama dependiendo del valor de entrada. Formula Node: Realiza operaciones matemáticas basadas en entradas. Stacked Sequence Structure (Similar a Flat Sequence) Event Structure: Uno o más subdiagramas se ejecutan según el usuario interactúe con el VI

3 Do While Loop Terminal de Condición Terminal de Iteración
Do While condition is true Execute Sub diagram Loop Ejecuta una rutina hasta que se cumpla una condición determinada. While Loop revisa la condición al final del ciclo. El ciclo se ejecuta al menos una vez. El terminal de iteración contiene el número de veces que el ciclo se ha ejecutado.

4 Contador de Ciclos: indica cuantas veces se repite el subdiagrama
For Loop Contador de Ciclos: indica cuantas veces se repite el subdiagrama Dos atributos: N – Terminal de conteo i - Terminal de Iteración Haciendo click sobre “WHILE loop” en el diagrama de bloques puede cambiarse por “FOR loop” 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 Ejecuta Código Next I NOTA: El CERO es indexado y aparece en la primera iteración Blank.vi Ejercicio

5 CASE Blank Ejemplo

6 Sentencias de secuenciación
La herramienta de desarrollo de aplicaciones LabVIEW ofrece dos sentencias de secuenciación. Flat Sequence y Stacked Sequence Structure y se encuentran en Functions/Programming/Structures. Cuando es insertada en el diagrama de nuestra aplicación, aparece con una única ventana o Frame: es la unidad o elemento donde irá un módulo dado del código de nuestra aplicación. Para añadir más ventanas, se pulsa sobre la ventana con el botón derecho del ratón y se ejecuta Add Frame Before o Add Frame After, para añadir la ventana antes o después de la actual, respectivamente. Simulan como fotogramas de una película Ejercicio

7 Presentación del Problema
Código a procesar cada vez que se pulse un botón Supongamos que a voluntad del operador queremos encender y detener los motores 1, 2 y 3. Con las estructuras vistas esto lo podíamos hacer con Flat Sequence o Stacked Sequence, pero en forma ordenada y no a criterio del operador. Hay una estructura que cumple con este cometido, es la llamada Structure Event.

8 Solución Case-While ejemplo
Supongamos que a voluntad del operador queremos encender y detener los motores 1, 2 y 3. Con las estructuras vistas esto lo podíamos hacer con Flat Sequence o Stacked Sequence, pero en forma ordenada y no a criterio del operador. Hay una estructura que cumple con este cometido, es la llamada Structure Event. ejemplo

9 Solución Case-While Ejemplo

10 Solución Case-While

11 Structure Event Ejemplo

12

13

14

15 a)Agregue el evento al mover el mouse sobre el control booleano de Proceso 1.

16

17 Structure Event

18 Structure Event TimeOut

19

20

21 c) Incorpore presionando la tecla F10 la opción de grabar pantalla simulada por un diálogo de confirmación del operador.

22 Structure Event

23 Al presionar la tecla “a”:

24 Al presionar la tecla “F10”:

25

26

27 Presionando la tecla F10:

28 Structure Event

29

30 Recomendaciones de NI sobre el uso de Event
No usar un Event dentro de otro Si en un Event se inserta dentro de un While y éste finaliza con un botón de stop, se debe incorporar dentro del subdiagrama asociado al cambio de valor de dicho control.

31 FORMULA NODE Planteo del problema:
Evaluar si un número es positivo o negativo. Obtener como resultado un 1 si es positivo y -1 si es negativo.

32 FORMULA NODE Planteo del problema:
Evaluar si un número es positivo o negativo. Obtener como resultado un 1 si es positivo y -1 si es negativo. Ejercicio

33 FORMULA NODE Ejercicio

34 FORMULA NODE Ejercicio

35 Ejercicio 3.- Ingrese dos variables de entrada x e y en una estructura FORMULA NODE. Si el producto de ambas es positivo obtener el resultado Si el producto es negativo realice la operación: Ejercicio

36

37 Ejercicio 4. Ingresando los valores de resistencia y reactancia inductiva de una carga monofásica y la tensión de alimentación a través de controles numéricos, calcule con el uso de FORMULA NODE, la corriente, potencia activa y reactiva que deberán leerse a través de los siguientes indicadores Ejercicio

38 Ejercicio 4. Ingresando los valores de resistencia y reactancia inductiva de una carga monofásica y la tensión de alimentación a través de controles numéricos, calcule con el uso de FORMULA NODE, la corriente, potencia activa y reactiva que deberán leerse a través de los siguientes indicadores Ejercicio

39 CREACIÓN DE VARIABLES

40 Trabajando con Variables
Muchas veces dentro de la programación es necesario almacenar el valor de una variable para poder usarla posteriormente. En LabVIEW también puede realizarse estas sentencias, almacenando una variable para luego usarla dentro de otro bloque del VI o bien en otro VI. LabVIEW dispone de dos tipos de variables locales y globales.

41 Creación de una Variable Local
A continuación hay dos pasos fundamentales a realizar: Primero: determinar a que objeto del programa va a estar enlazado Segundo: elegir si va a ser de lectura (read) o escritura (write). Para el caso del ejemplo hacer click derecho sobre la variable local y seleccionar Select Item/Boolean y luego Change to Read

42 Ejercicio 5 Desarrolle un VI, en el que se obtienen mediante simulación valores eficaces de corriente y tensión. Sabiendo que el factor de potencia siempre es constante e igual a 0.95, obtenga a partir de variables locales el valor de la potencia activa en intervalos de 100ms.

43 Ejercicio 5 ejemplo Ejercicio 5

44 Ejercicio 6. Construir un VI que cumpla con las siguientes secuencias de tareas:
Capturar 20 lecturas de tensión con intervalos de 250ms provenientes de una DAQ simulada. Mostrar un aviso al operador de esta tarea finalizada. Capturar 50 lecturas de corriente cada 100ms, también desde una DAQ simulada. Mostrar el aviso de tarea concluida. Las lecturas de tensión y corriente deben ser mostradas en un mismo gráfico (Waveform Chart). Ejercicio

45 Ejercicio 6.

46 Ejercicio 7. Un ciclo While recibe lecturas de tensión en intervalos de 250ms. En paralelo otro ciclo While recibe lecturas de corriente cada 100ms. Encontrar la forma de detener ambos ciclos en forma simultánea. Analice si es válida esta opción: Ejercicio 7a

47 Ejercicio 7a

48 Solución con uso de variable local para el control booleano “Stop”
Ejercicio 7b

49 Ejercicio 7

50 Creación de una Variable Global
Las variables locales solo tienen vida dentro de un mismo VI y no pueden ser llamadas desde otro VI. Esto si ocurre con las variables globales. En el ejercicio siguiente se va a utilizar una variable global para almacenar un número generado en un VI para ser llevado a otro VI. Para esto primero desde el DB creamos desde Structures la variable global Ejercicio Blank

51 Variable Global Blank Ejemplo

52 Creación de una Variable Global
1.- Colocar una variable global en el diagrama de bloques: Diagrama de bloques >> Botón derecho ratón >> Paleta de funciones >> Programming >> Structures >> Global Variable. 2.- Hacer doble click en la variable global sita en el diagrama de bloques. Esto abrirá el panel frontal de la misma. Colocar los controles o indicadores en este panel frontal. 3.- Cerrar el panel frontal de la variable global y grabar cambios. 4.- Seleccionar la variable global, en el diagrama de bloques, con el botón derecho del ratón y selecciona Select Item. Asocia la variable al control o indicador que se quiera y definido en pasos anteriores. 5.- Si se desea usar esta variable global en otro VI, simplemente ir al diagrama de bloques de ese nuevo VI y botón derecho ratón >> Select VI y buscar la variable donde previamente fue guardada.

53

54 PERSONALIZAR CONTROLES

55 I. Navigator

56

57

58 Ejemplo

59

60 Personalizar controles

61 Personalizar controles

62 Personalizar Controles

63 Personalizar Controles

64

65 A partir del agregado de un botón OK, haciendo clic derecho con el mouse seleccionamos Advanced, y luego customize.

66

67

68 EJEMPLO DE APERTURA Y CIERRE DE UNA VÁLVULA

69 Simulación llenado y vaciado de un tanque
Válvula abierta – Llenado del tanque Válvula cerrada – Vaciado del tanque Ejercicio 8

70 Ejercicio 8

71 Ejercicio 10.- Resolver el ejercicio anterior utilizando la estructura “stacked sequence”.

72

73 Ejercicio 9

74 Ejercicio 9

75 Ejercicio 9

76 Creación de una Variable Local (Control de la Válvula apertura-cierre de entrada de líquido)
Haciendo con el mouse clic derecho sobre el control Válvula vamos a Create y luego Local Variable Seteado en Write Ahora lo movemos al segundo cuadro de la estructura sequence y le anexamos una constante booleana (falso).


Descargar ppt "Instrumentación Virtual con LabVIEW"

Presentaciones similares


Anuncios Google