Está en la página 1de 44

TECNOLOGICO NACIONAL DE MEXICO

INSTITUTO TECNOLOGICO DE HERMOSILLO


Ing. Programación Gráfica para instrumentación y control

Instrumentación Digital
Ing. ____________
Especialidad:
Semestre 17-II-18-II-19-II
Instructor: Jesús M. Tarín Fontes

Instrumentación Virtual 1
TECNOLOGICO NACIONAL DE MEXICO
INSTITUTO TECNOLOGICO DE HERMOSILLO
Ing. Programación Gráfica para instrumentación y control

Estructuras Case y Sequence

En revisión
(Tarín)
17-II-19-II

Instrumentación Virtual 2
TECNOLOGICO NACIONAL DE MEXICO
INSTITUTO TECNOLOGICO DE HERMOSILLO
Ing. Programación Gráfica para instrumentación y control

CAPITULO

Estructuras Case y Sequence


 Este capítulo introduce los otros dos tipos de estructuras, disponibles en
LabVIEW. Para controlar el flujo de datos en el programa: La estructura
Case y la estructura Sequence. Este capítulo también introduce el Nodo de
Fórmula (Formula Node).
Al término de este capítulo se habrá aprendido
1. Cómo usar la estructura Case
2. Como usar la estructura Sequence
3. Cómo usar los nodos de Formulas

Instrumentación Virtual 3
TECNOLOGICO NACIONAL DE MEXICO
INSTITUTO TECNOLOGICO DE HERMOSILLO
Ing. Programación Gráfica para instrumentación y control

Estructura Case
 Coloque la estructura Case
en el diagrama de bloques
seleccionándola de la
subpaleta Structures de la
paleta de funciones.
 Al colocar la estructura se
pueden encerrar secciones
ya existentes del diagrama
de bloques o bien colocar la
estructura en un espacio
libre y arrastrar dentro de
ella elementos nuevos o
elementos ya existentes.

Instrumentación Virtual 4
TECNOLOGICO NACIONAL DE MEXICO
INSTITUTO TECNOLOGICO DE HERMOSILLO
Ing. Programación Gráfica para instrumentación y control

 La estructura Case es análoga a los estatutos de if… then… else en los


lenguajes convencionales de programación basados en texto.
 Se configura como una caja de tarjetas en donde cada tarjeta corresponde a
un caso y sólo una tarjeta es visible a la vez.
 Cada tarjeta contiene un subdiagrama, que corresponde a las acciones a
realizar para cada caso específico. Sólo un caso se ejecuta a la vez
dependiendo del valor almacenado a la terminal de selección.

Instrumentación Virtual 5
TECNOLOGICO NACIONAL DE MEXICO
INSTITUTO TECNOLOGICO DE HERMOSILLO
Ing. Programación Gráfica para instrumentación y control

 La terminal de selección puede ser numérica o booleana. Si el tipo de dato es


booleano, la estructura Case tiene dos casos, caso verdadero y caso falso, a los
cuales corresponden las ventanas True y False.
 Si el tipo de dato es numérico, la estructura puede tener hasta 231-1 casos.
 Si el valor alambrado a la terminal de selección es 0, el diagrama de bloques a
ejecutarse es el de la ventana 0 (0..X), si el valor alambrado a la terminal de
selección es de 2, el diagrama de bloques a ejecutarse es el de la ventana 2 (0…X) y
así sucesivamente. El termino (0..X) representa el número de casos en la estructura
Case.

Instrumentación Virtual 6
TECNOLOGICO NACIONAL DE MEXICO
INSTITUTO TECNOLOGICO DE HERMOSILLO
Ing. Programación Gráfica para instrumentación y control

 Ejemplo de una estructura Case booleana.


 En este ej., los números pasan a través de túneles a la estructura Case y son
sumados o restados, dependiendo del valor alambrado a la terminal de
selección. Si el control booleano alambrado a la terminal de selección es
verdadero, el VI sumará los números; de otra manera, el VI restará los
números.

Instrumentación Virtual 7
TECNOLOGICO NACIONAL DE MEXICO
INSTITUTO TECNOLOGICO DE HERMOSILLO
Ing. Programación Gráfica para instrumentación y control

 Asegúrese de alambrar los túneles de salida para cada caso de la estructura


Case. Cuando se crea un túnel de salida en una ventana de la estructura, el
túnel aparece, en la misma posición, en las otras ventanas.
 Los túneles sin alambrar lucen como cuadrados blancos. Se puede alambrar
constantes o controles a los túneles dando clic derecho sobre el cuadro en
blanco y seleccionando Create Constant o Create Control.

Instrumentación Virtual 8
TECNOLOGICO NACIONAL DE MEXICO
INSTITUTO TECNOLOGICO DE HERMOSILLO
Ing. Programación Gráfica para instrumentación y control

Ejercicio 6.1
Objetivo: Utilizar la estructura Case
 Construirá un VI que verifica si un número de entrada es positivo. Si lo es,
el VI calcula la raíz cuadrada del número, de otra manera, el VI mostrará un
mensaje de error.

Panel Frontal

Instrumentación Virtual 9
TECNOLOGICO NACIONAL DE MEXICO
INSTITUTO TECNOLOGICO DE HERMOSILLO
Ing. Programación Gráfica para instrumentación y control

Diagrama a bloques

Instrumentación Virtual 10
TECNOLOGICO NACIONAL DE MEXICO
INSTITUTO TECNOLOGICO DE HERMOSILLO
Ing. Programación Gráfica para instrumentación y control

Función Great or Equal to 0? (de la subpaleta Comparison). En este ejercicio,


verifica que el número de entrada no sea negativo. La función da como
resultado Verdadero si el número de entrada es mayor o igual a 0.
Numeric Constant (del menú emergente del Túnel). Coloque la
herramienta de cableado en el túnel que en este momento aparece en
blanco, active su menú emergente y seleccione Create Constant.
Utilice la herramienta de etiquetado y teclee el valor de la constante.
Llame el menú emergente de la constante y seleccione Format &
Precision… Modifíquelo para que presente un dígito de precisión en
notación de punto flotante.
Note que si en ambos casos el túnel no se encuentra cableado, este
permanece en blanco. Asegúrese de que el túnel esté cableado
internamente en ambos casos de la estructura Case.

Instrumentación Virtual 11
TECNOLOGICO NACIONAL DE MEXICO
INSTITUTO TECNOLOGICO DE HERMOSILLO
Ing. Programación Gráfica para instrumentación y control

Función One Button Dialog (de la subpaleta Time & Dialog). En este
ejercicio, esta función despliega una caja de diálogo que contiene el
mensaje “Error… Número Negativo”.

String Constan (de la subpaleta String). Teclee el mensaje de error


dentro de la caja con la herramienta de etiquetado.
En este ejercicio, el VI se ejecutará no importando si el caso es
verdadero o falso. Si el número es mayor o igual a cero, el VI
ejecutará el caso verdadero, y se desplegará la raíz cuadrada del
número.
El caso falso dará como salida -99999.0 y desplegará una caja de
diálogo con el mensaje “Error…. Número Negativo” si el número
es menor que cero.

Instrumentación Virtual 12
TECNOLOGICO NACIONAL DE MEXICO
INSTITUTO TECNOLOGICO DE HERMOSILLO
Ing. Programación Gráfica para instrumentación y control

Ejercicio 6.2
Objetivo: Utilizar la estructura Case
 Construye un VI para detectar cuando la temperatura es mayor a un límite
establecido. Si la temperatura excede este límite, un LED en el panel frontal
se encenderá y sonará un bip.

Panel Frontal

Instrumentación Virtual 13
TECNOLOGICO NACIONAL DE MEXICO
INSTITUTO TECNOLOGICO DE HERMOSILLO
Ing. Programación Gráfica para instrumentación y control

Diagrama a bloques

Instrumentación Virtual 14
TECNOLOGICO NACIONAL DE MEXICO
INSTITUTO TECNOLOGICO DE HERMOSILLO
Ing. Programación Gráfica para instrumentación y control

VI Beep (de la subpaleta Graphics & Sound >> Sound). Este VI hace
sonar un bip si el dato de entrada de la terminal de selección de la
estructura Case es verdadero.
Note que no hay iconos en la condición de Falso de la estructura Case.
Cuando la temperatura que Termómetro.vi entrega es mayor al límite
establecido, el VI ejecuta la condición verdadera de la estructura Case,
el LED se encenderá y el bip sonará. Si la temperatura es menor al
límite establecido, el VI ejecutará la condición falsa, el LED no
encenderá y no habrá ningún bip.

Instrumentación Virtual 15
TECNOLOGICO NACIONAL DE MEXICO
INSTITUTO TECNOLOGICO DE HERMOSILLO
Ing. Programación Gráfica para instrumentación y control

EVENT
 Es una estructura muy útil en VI con los que interactúa el usuario porque
mejora la eficiencia del programa.
 Al igual que la estructura CASE, los EVENT tienen varios subdiagramas y
un menú en la parte superior para cambiar el que se muestra. En este menú
también se indica una condición que hace que el código del subdiagrama
correspondiente se ejecute.
 La diferencia con CASE es que el EVENT detiene la ejecución del hilo del
programa hasta que se da esa condición, es decir, congela el programa
hasta que ocurre un evento.
 En la esquina superior izquierda hay un terminal llamado Event Timeout que
se usa en el evento por defecto: el Timeout. El código del diagrama para el
evento timeout se ejecutará cuando pase el número de milisegundos
indicados en el terminal Event Timeout.

Instrumentación Virtual 16
TECNOLOGICO NACIONAL DE MEXICO
INSTITUTO TECNOLOGICO DE HERMOSILLO
Ing. Programación Gráfica para instrumentación y control

Fig (a) Estructura EVENT

 Para añadir mas sub-diagramas hay que proceder de igual manera que con
CASE, es decir, a través del menú contextual.
 Cada diagrama debe tener asociado uno o varios eventos, que se configuran
desde la ventana Edit Events, como puede verse en la Fig. (b)

Instrumentación Virtual 17
TECNOLOGICO NACIONAL DE MEXICO
INSTITUTO TECNOLOGICO DE HERMOSILLO
Ing. Programación Gráfica para instrumentación y control

Fig. (b)
Instrumentación Virtual 18
TECNOLOGICO NACIONAL DE MEXICO
INSTITUTO TECNOLOGICO DE HERMOSILLO
Ing. Programación Gráfica para instrumentación y control

EJERCICIO SOBRE LA ESTRUCTURA EVENT


 La siguiente aplicación cuenta cuantos clicks se realizan con el ratón sobre el panel
frontal, y muestra si el clic se ha hecho con botón derecho, el izquierdo y la posición
dentro de la pantalla. Se ha configurado un tiempo de 100 ms de espera

Instrumentación Virtual 19
TECNOLOGICO NACIONAL DE MEXICO
INSTITUTO TECNOLOGICO DE HERMOSILLO
Ing. Programación Gráfica para instrumentación y control

Estructura Sequence
 Coloque la estructura Sequence en el diagrama a bloques seleccionándola
de la subpaleta Structures de la paleta de funciones.
 Al colocar la estructura se pueden encerrar secciones ya existentes del
diagrama de bloques o bien colocar la estructura en un espacio libre y
arrastrar dentro de ella elementos nuevos o elementos ya existentes.

Instrumentación Virtual 20
TECNOLOGICO NACIONAL DE MEXICO
INSTITUTO TECNOLOGICO DE HERMOSILLO
Ing. Programación Gráfica para instrumentación y control

Instrumentación Virtual 21
TECNOLOGICO NACIONAL DE MEXICO
INSTITUTO TECNOLOGICO DE HERMOSILLO
Ing. Programación Gráfica para instrumentación y control

 La estructura Sequence, la cual aparece como una especie de rollo de


película, ejecuta secuencialmente las secciones de diagramas de bloques
que contiene en cada una de sus ventanas.
 En los lenguajes de programación convencionales basados en texto, los
estatutos del programa se ejecutan en el orden en el que aparecen.
 En la programación de flujo de datos, un nodo se ejecuta cuando hay datos
disponibles en todas las entradas del nodo y por ello la secuencia en la
ejecución de los nodos es difícil de definir.
 Sin embargo, a veces es necesario asegurar la ejecución de un nodo antes
que otro. La estructura Sequence es la forma en que LV puede controlar el
orden específico en que los nodos se ejecutan.

Instrumentación Virtual 22
TECNOLOGICO NACIONAL DE MEXICO
INSTITUTO TECNOLOGICO DE HERMOSILLO
Ing. Programación Gráfica para instrumentación y control

 El diagrama de bloques a ejecutarse primero, se coloca dentro de la ventana


0(0..X), el diagrama de bloques a ejecutarse en segundo término, se coloca
dentro de la ventana 1 (0..X) y así sucesivamente. El término (0…X)
representa el rango de ventanas en la estructura Sequence. Al igual que en la
estructura Case, en la estructura Sequence sólo una ventana es visible a la
vez.

Instrumentación Virtual 23
TECNOLOGICO NACIONAL DE MEXICO
INSTITUTO TECNOLOGICO DE HERMOSILLO
Ing. Programación Gráfica para instrumentación y control

Variables Locales (Sequence locals)


 Sequence Locals son variables que pasan datos entre ventanas de una
estructura Sequence.
 Estas variables locales se pueden crear dando clic derecho en el borde de la
ventana y seleccionando Add Sequence Local del menú emergente.
 La información alambrada a una variable local está entonces disponible para
las subsecuentes secuencias o ventanas.
 La información, sin embargo, no está disponible en las secuencias que
preceden a la ventana en el cuál se creó la variable local.

Instrumentación Virtual 24
TECNOLOGICO NACIONAL DE MEXICO
INSTITUTO TECNOLOGICO DE HERMOSILLO
Ing. Programación Gráfica para instrumentación y control

 El ejemplo siguiente muestra una estructura Sequence de tres secuencias.


Una variable local en la ventana 0 pasa el valor, que la función Tick Count
(ms) entrega, a las ventanas siguientes. La función Tick Count (ms) regresa
el tiempo en milisegundos que ha pasado desde el inicio del VI.
 Notará que este valor está disponible tanto en la ventana 1 como en la
ventana 2 (como lo indica la flecha apuntando hacia adentro de la ventana).
 No olvide que el VI despliega sólo una secuencia a la vez. En la segunda
secuencia se hace una medición de temperatura y finalmente en la tercera
ventana se calcula el tiempo que toma la lectura de temperatura.

Instrumentación Virtual 25
TECNOLOGICO NACIONAL DE MEXICO
INSTITUTO TECNOLOGICO DE HERMOSILLO
Ing. Programación Gráfica para instrumentación y control

Instrumentación Virtual 26
TECNOLOGICO NACIONAL DE MEXICO
INSTITUTO TECNOLOGICO DE HERMOSILLO
Ing. Programación Gráfica para instrumentación y control

Ejercicio 6.3
Objetivo: Utilizar la estructura Sequence.
 Construirá un VI que calcula el tiempo que le toma al generador de números
aleatorios igualar un número que usted especifique.

Panel Frontal

Instrumentación Virtual 27
TECNOLOGICO NACIONAL DE MEXICO
INSTITUTO TECNOLOGICO DE HERMOSILLO
Ing. Programación Gráfica para instrumentación y control

 Abra el VI Auto Match que creó en la lección 4.


 Construya el panel frontal de acuerdo a la figura anterior. Asegúrese de
modificar los controles e indicadores como se indica.

Diagrama a bloques

Instrumentación Virtual 28
TECNOLOGICO NACIONAL DE MEXICO
INSTITUTO TECNOLOGICO DE HERMOSILLO
Ing. Programación Gráfica para instrumentación y control

Instrumentación Virtual 29
TECNOLOGICO NACIONAL DE MEXICO
INSTITUTO TECNOLOGICO DE HERMOSILLO
Ing. Programación Gráfica para instrumentación y control

1. Abra la ventana del diagrama a bloques y encierre dentro de una estructura


Sequence el ciclo While, la función Increment, y el número de iteraciones.
a) Seleccione la estructura Sequence de la subpaleta Structures.
b) Marque el área de la estructura Sequence alrededor del ciclo While,
la función Increment y la terminal del número de iteraciones.

Instrumentación Virtual 30
TECNOLOGICO NACIONAL DE MEXICO
INSTITUTO TECNOLOGICO DE HERMOSILLO
Ing. Programación Gráfica para instrumentación y control

Nodo de Formulas
 Coloque el nodo de Formulas (Formula Node) en el diagrama de bloques,
seleccionándolo de la subpaleta Structures de la paleta de funciones. Las
ecuaciones se pueden introducir dentro del nodo de fórmulas usando la
herramienta de etiquetado.
 El nodo de Formulas es una caja redimensionable, a través de la cuál, usted
puede introducir fórmulas algebraicas directamente dentro del diagrama de
bloques.
 Este elemento de programación es extremadamente útil cuando la función a
implementar tiene muchas variables o es complicada.

Instrumentación Virtual 31
TECNOLOGICO NACIONAL DE MEXICO
INSTITUTO TECNOLOGICO DE HERMOSILLO
Ing. Programación Gráfica para instrumentación y control
2
 Por ejemplo considere la ecuación y  x  x  1. Si usted implementa esta
ecuación usando las funciones aritméticas regulares de LabVIEW, el
diagrama a bloques luce con el mostrado abajo.

 Usted puede implementar la misma ecuación usando el nodo de fórmulas,


como se muestra a continuación.

Instrumentación Virtual 32
TECNOLOGICO NACIONAL DE MEXICO
INSTITUTO TECNOLOGICO DE HERMOSILLO
Ing. Programación Gráfica para instrumentación y control

 Con el nodo de fórmulas, usted puede introducir directamente una fórmula o


fórmulas complicadas, en lugar de crear subsecciones del diagrama a
bloques.
 Usted puede crear las terminales (variables) de entrada y salida del nodo de
fórmulas dando clic derecho en el borde del nodo de fórmulas y
seleccionando Add input o Add output, según corresponda, del menú
emergente. Puede escribir la o las fórmulas dentro de la caja empleando la
herramienta de etiquetado. Cada estatuto del nodo de fórmulas debe de
terminar en punto y coma (;).

Instrumentación Virtual 33
TECNOLOGICO NACIONAL DE MEXICO
INSTITUTO TECNOLOGICO DE HERMOSILLO
Ing. Programación Gráfica para instrumentación y control

 Cada variable usada en el nodo de fórmulas debe estar declarada ya sea


como variable de entrada o variable de salida. Las variables internas que
son usadas dentro del nodo de fórmulas para calcular valores intermedios,
deben ser declarados como variables de salida. Sin embargo, las terminales
de estas variables internas no necesitan ser alambradas a ningún nodo
externo.

Instrumentación Virtual 34
TECNOLOGICO NACIONAL DE MEXICO
INSTITUTO TECNOLOGICO DE HERMOSILLO
Ing. Programación Gráfica para instrumentación y control

Instrumentación Virtual 35
TECNOLOGICO NACIONAL DE MEXICO
INSTITUTO TECNOLOGICO DE HERMOSILLO
Ing. Programación Gráfica para instrumentación y control

Instrumentación Virtual 36
TECNOLOGICO NACIONAL DE MEXICO
INSTITUTO TECNOLOGICO DE HERMOSILLO
Ing. Programación Gráfica para instrumentación y control

 El siguiente ejemplo muestra cómo se pueden realizar pasos de ejecución


condicionales dentro del nodo de fórmulas. Considere el siguiente fragmento de
código que calcula la raíz cuadrada de x si x es positiva, y asigna el resultado a y. Si
x es negativa, el código asigna -99 a y.
if (x>=0
then
y = sqrt(x)
else
y = -99
 El fragmento de código anterior se puede implementar usando el nodo de fórmulas,
como se muestra a continuación:

Condición verdadera Condición falsa

Operador condicional

Instrumentación Virtual 37
TECNOLOGICO NACIONAL DE MEXICO
INSTITUTO TECNOLOGICO DE HERMOSILLO
Ing. Programación Gráfica para instrumentación y control

Ejercicio 6.4
Objetivo: Utilizar el Nodo de Fórmulas para evaluar expresiones matemáticas.
Construirá un VI que utiliza el Nodo de fórmulas para evaluar una expresión
matemática compleja y graficar el resultado.

a  tanh(x)  cos(x)

Instrumentación Virtual 38
TECNOLOGICO NACIONAL DE MEXICO
INSTITUTO TECNOLOGICO DE HERMOSILLO
Ing. Programación Gráfica para instrumentación y control

Diagrama a bloques

Instrumentación Virtual 39
TECNOLOGICO NACIONAL DE MEXICO
INSTITUTO TECNOLOGICO DE HERMOSILLO
Ing. Programación Gráfica para instrumentación y control

 Formula Node (de la subpaleta Structures). Con este


nodo de formulas, usted puede introducir formulas
directamente en el diagrama de bloques. Cree la
terminal de entrada al colocar el cursor sobre el
borde y activar el menú emergente, seleccione Add
Input. Cree la terminal de salida “a” al seleccionar
Add Output del menú emergente del borde.

 Cuando crea una terminal de entrada o salida, debe de darle un nombre que
sea idéntico al que tiene en la fórmula. Los nombres de las variables son
sensibles a las mayúsculas, ya que si nombra una terminal con la minúscula
“r” debe usar la variable “r” en la formula.
 Note que el punto y coma (;) debe terminar la declaración de cada formula.

Instrumentación Virtual 40
TECNOLOGICO NACIONAL DE MEXICO
INSTITUTO TECNOLOGICO DE HERMOSILLO
Ing. Programación Gráfica para instrumentación y control

Función Divide (de la subpaleta Numeric). En este ejercicio, esta función


divide durante cada iteración el valor de la terminal de iteración entre
15.0. El cociente es llevado al Nodo de Fórmulas, que calcula el valor de
la función . El VI guarda el resultado en un arreglo de datos en la frontera
del ciclo For (en modo autoindexado). Después de que el ciclo For
finaliza la ejecución, el VI despliega en la gráfica el arreglo de datos.

Fin capitulo 6
Instrumentación Virtual 41
TECNOLOGICO NACIONAL DE MEXICO
INSTITUTO TECNOLOGICO DE HERMOSILLO
Ing. Programación Gráfica para instrumentación y control

EJERCICIOS ADICIONALES
1. Construya un VI que use la fórmula de nodo para que evalúe la ecuación y =
sin (x) y grafique el resultado.
2. Construya un VI que use la formula de nodo para calcular las siguientes
ecuaciones:
y1  x 3  x 2  5
y2  m  x  b

Use solamente la fórmula de nodo para ambas ecuaciones (recuerde


siempre poner el punto y coma (;)

Instrumentación Virtual 42
TECNOLOGICO NACIONAL DE MEXICO
INSTITUTO TECNOLOGICO DE HERMOSILLO
Ing. Programación Gráfica para instrumentación y control

EJERCICIOS ADICIONALES (Cont…)


Angulo de conversión: Radianes a grados
 Este programa convierte un ángulo dado en radianes a grados, minutos y
segundos.
 Ejemplo: ¿Cuántos grados, minutos y segundos hay en un ángulo de 2.5
radianes? ¿En 118 Radianes?

Instrumentación Virtual 43
TECNOLOGICO NACIONAL DE MEXICO
INSTITUTO TECNOLOGICO DE HERMOSILLO
Ing. Programación Gráfica para instrumentación y control

QUE ES UN DOCENTE DE CALIDAD EN EL SIGLO XXI

EL MENOS OCUPADO EN HACER CARRERA Y SUBIR PUESTOS Y


MAS PREOCUPADOS POR SUS TAREAS DOCENTES Y EDUCADORAS.

Semestre 11-II: 13-I, II-15-II


Instrumentación Virtual 44

También podría gustarte