Académique Documents
Professionnel Documents
Culture Documents
Paletas de LabView
• Panel Frontal.- La paleta de Controls es utilizada para
seleccionar controles o indicadores que serán colocados en el
instrumento virtual. Se accede a través del menú de View-Controls
Palette
1
Material Importante referente a la filosofía de LabView
2
Material Importante referente a la filosofía de LabView
3
Material Importante referente a la filosofía de LabView
Los tipos de datos que pueden ser usados dentro de la estructura Formula Node son: int,
int8, int16, int32, uInt8, uInt16, uInt32, float, float32 y float64.
4
Material Importante referente a la filosofía de LabView
TIMING
La paleta de Timing nos proporciona herramientas de programación que se
relacionan con tiempo.
5
Material Importante referente a la filosofía de LabView
EJEMPLO:
Solución
6
Material Importante referente a la filosofía de LabView
Cabe hacer notar aquí, que si durante la ejecución del programa se modifica el
control Serie, comenzarán a aparecer múltiplos del valor nuevo de dicho
control ya que este control es leído una vez por cada una de las
ejecuciones del ciclo.
Túneles
Un túnel es la manera en que LabView pasa información de una parte del
diagrama a una estructura o viceversa. Hay túneles de entrada a una
estructura y túneles de salida de la estructura, además existen diferentes tipos
de túneles, cada uno opera de manera diferente, el más simple es el túnel
relleno, en este tipo de túnel el valor se pasa por una única vez hacia el interior
de una estructura o hacia fuera de una estructura. En este túnel o nodo el valor
transferido es almacenado dentro del mismo túnel para ser utilizado dentro de
la estructura (túnel de entrada) o fuera de ella (túnel de salida).
7
Material Importante referente a la filosofía de LabView
8
Material Importante referente a la filosofía de LabView
9
Material Importante referente a la filosofía de LabView
10
Material Importante referente a la filosofía de LabView
Por default la estructura aparece con una entrada tipo boolean (la cual puede
ser true o false), cada una de las 2 opciones se codifica dentro de la estructura.
Para cambiarse de una opción a otra se hace un clic en la parte superior y se
elije la opción que se desea codificar o visualizar.
11
Material Importante referente a la filosofía de LabView
12
Material Importante referente a la filosofía de LabView
Algo similar a la estructura Case pero más enfocado al control de flujo de datos
en el alambrado es el bloque Select encontrado en la paleta de Comparison
dentro de Programming. Dicho bloque permite que una de 2 entradas(t ó f en
la figura de abajo) pueda fluir hacia la salida del bloque acorde al valor
booleano de una entrada (s en la figura de abajo).
13
Material Importante referente a la filosofía de LabView
Una vez hecho esto se crea un nodo del control o indicador con el campo
Value (mostrado en la sig. Figura para el indicador Múltiplo 1). El valor del
control o indicador se puede obtener alambrando desde dicho campo (si la
punta que aparece después del nombre del campo se dirige hacia fuera) hacia
el lugar deseado.
15
Material Importante referente a la filosofía de LabView
La punta ahora aparecerá antes del nombre del campo y se dirigirá hacia
adentro de tal forma que podemos alambrar un valor nuevo hacia el control o
indicador. La siguiente figura muestra el mismo programa que produce
múltiplos de una serie pero utilizando Property Node´s. Nótese que los bloques
originales que se generan en el diagrama de bloques al crear los controles e
indicadores en el panel frontal no se están utilizando directamente.
Se pueden hacer cuantos nodos sean requeridos para cada indicador o control,
de esta forma se evita demasiado alambrado y confusión en un programa de
LabView.
16
Material Importante referente a la filosofía de LabView
Paralelismo en LabView
LabView es en esencia un programa que maneja paralelismo de manera muy
natural, estructuras no conectadas entre sí pueden estarse ejecutando
simultáneamente sin ningún problema. La siguiente figura muestra el diagrama
de bloques de 2 ciclos generando dos series diferentes. Ambos ciclos corren en
paralelo y generan series diferentes en los indicadores, El ciclo inferior genera
su serie más rápido ya que tiene un retardo menor.
17
Material Importante referente a la filosofía de LabView
18
Material Importante referente a la filosofía de LabView
En la primera sección aparece el ciclo que genera una serie, después aparece
un retardo de 5 segs. Y finalmente otro ciclo generando otra serie. A diferencia
del ejemplo encontrado en la sección de paralelismo, en este si existe un orden
de ejecución definido de izquierda a derecha en la estructura Sequence. El
retardo sólo se ejecutará cuando el usuario haya parado el primer ciclo a
través del botón stop 1. Cuando se acabe el retardo se generarán entonces los
múltiplos correspondientes al segundo ciclo y éste terminara sólo cuando el
usuario oprima el botón stop 2.
Cuando se crea un flat sequence sólo aparece un área o frame donde colocar
bloques de LabView, las demás secciones necesitadas para realizar
programación secuencial se hacen haciendo un clid derecho en el borde de la
estructura y eligiendo Add Frame After. La siguiente figura muestra este
concepto.
19
Material Importante referente a la filosofía de LabView
suma = 0;
suma = suma + i;
20
Material Importante referente a la filosofía de LabView
Nótese que se han creado 3 property nodes del control SUMA, dos de ellos de
escritura y uno de lectura. Al inicio de la estructura sequence se asigna un
valor de cero al control SUMA, después se ejecuta el ciclo que hace el proceso
de acumulación. La programación ahora es muy parecida a como se hace en
un lenguaje como C, sin embargo es mucho más elegante trabajar con Shift
Registers como se hizo al principio de este documento para el mismo ejemplo.
21
Material Importante referente a la filosofía de LabView
Se accede a Controls->Array, Matrix & Cluster -> Array para crear un arreglo
directamente en el Panel frontal.
Para definir el tipo de elementos que contendrá este arreglo se integra al área
vacía del mismo un indicador como lo muestra la figura de más abajo
(dependiendo de la problemática se podría integrar un control).
22
Material Importante referente a la filosofía de LabView
Una vez colocado el indicador o control se puede hacer más grande el arreglo
de tal forma que muestre más elementos como se muestra en la siguiente
figura:
23
Material Importante referente a la filosofía de LabView
24
Material Importante referente a la filosofía de LabView
25
Material Importante referente a la filosofía de LabView
26
Material Importante referente a la filosofía de LabView
27
Material Importante referente a la filosofía de LabView
Array Size
Entrada- Un arreglo
Index Array
Replace Subset
28
Material Importante referente a la filosofía de LabView
Initialize Array
Build Array
Entrada-Un arreglo
Salida- Cuatro valores, los valores mayor y menor dentro del arreglo
y las posiciones en donde se encuentran dichos valores.
Sort 1D Array
Entrada-Un arreglo
29
Material Importante referente a la filosofía de LabView
Reverse 1D Array
Entrada-Un arreglo
Salida- Un nuevo arreglo del mismo tamaño pero con los valores
invertidos respecto al arreglo de entrada.
Rotate 1D Array
Ejemplo Final
Diseñe un programa que cree un arreglo con 10 datos al azar entre 0 y 100,
cada dato será guardado en el arreglo cada 500 milisegundos, una vez
almacenados los datos en el arreglo, se deberá desplegar la información del
arreglo en un indicador y se desplegará en otros indicadores el valor mayor de
todos, la posición del mayor, el valor menor de todos y la posición del menor.
30
Material Importante referente a la filosofía de LabView
31
Material Importante referente a la filosofía de LabView
32
Material Importante referente a la filosofía de LabView
VARIABLES
La manera más simple de relacionar el concepto de variables en un lenguaje
de programación textual como C respecto a LabView es considerar a cada
control o indicador como una variable. A través de un Property Node en el
campo Value es posible acceder o modificar el valor de un control o indicador
como ya se había mencionado previamente.
33
Material Importante referente a la filosofía de LabView
34
Material Importante referente a la filosofía de LabView
Otra solución factible para el problema del ejemplo podría realizarse utilizando
Property Node´s en vez de shift registers, esta solución es mostrada en la
figura de abajo. Aquí se utilizan dos properties nodes, uno de lectura y otro de
escritura, nótese que en vez de alimentar el arreglo a través de un nodo se usa
el property node de lectura y con esto se asegura que la entrada al bloque
Replace Array Subset sean los valores del indicador del arreglo llamado Array y
no una copia del arreglo original inicializado en cero.
35