ARRAYS EN LABVIEW Relacionando Datos Arrays y Clusters
Objetivos 1. Event Structure 2. Arrays 3. Funciones 4. Ejercicios 5. Cluster 6. Simulación de adquisición de señales de tensión 7. Adquisicion de datos con la placa USB 18200-10 8. Adquisición de una señal de tensión 9. Adquisición de dos señales (corriente y tensión)
Structure Event Código a procesar cada vez que se pulse un botón
Structure Event Código a procesar cada vez que se pulse un botón
Structure Event Ejercicio
Ejercicio
Ejercicio: Realizar un VI con las cuatro operaciones matemáticas utilizando la estructura event. Ejercicio
Arrays INSTRUMENTACIÓN N AVANZADA Los arrays o arreglos son un conjunto de datos del mismo tipo ordenados que pueden ser números, booleanos,, waveform, path, strings, etc. Determinado por los elementos y dimensiones. Pueden ser utilizados como un indicador o un control (de entrada). El cableado de un array es del mismo color que el tipo de datos que contiene, pero más grueso y en el caso de los numéricos es de doble línea para dos o más dimensiones. En el terminal del DdB aparecerá el tipo de datos entre corchetes. Se utilizan cuando se trabaja con una colección de datos similares y cuando se quiere optimizar subrutinas repetitivas
Arrays- Creación INSTRUMENTACIÓN N AVANZADA Para crear un Array vamos al PF y con clic derecho con el mouse seleccionamos Array desde Array,Matrix & Clusters Ejercicio
Arrays Creación INSTRUMENTACIÓN N AVANZADA El siguiente paso es determinar que tipo de arreglo se va a generar. Existen dos tipos de arreglos: indicadores y de control. En el primer caso solo recibe datos por parte del programa, mientras que en el segundo (control) el usuario puede ingresar los datos manualmente. En nuestro ejemplo creamos un arreglo de control, agregando un control numérico y lo colocamos dentro del Array.
Arrays INSTRUMENTACIÓN N AVANZADA Como se puede apreciar el arreglo tiene una entrada, si lo que deseamos es una matriz de cinco entradas habrá que colocar el puntero en dicho arreglo de tal forma de obtener la selección siguiente: Colocar el puntero y estirar para aumentar las entradas hasta observar cinco celdas.
Arrays INSTRUMENTACIÓN N AVANZADA Si queremos obtener tres filas (Array de dos dimensiones) hacemos clic en en la primera celda hasta obtener la siguiente forma:
Arrays Creación INSTRUMENTACIÓN N AVANZADA 1. Al usar un Array no hay que declarar el tamaño de cada dimensión, ya que puede redimensionarse cuando sea necesario. 2. Si el Array se deja vacío en el DdB aparecerá el terminal en negro con un paréntesis vacío. Vacío Ejercicio
Arrays INSTRUMENTACIÓN N AVANZADA Siguiendo los mismos pasos podemos crear un array con indicadores. En el ejemplo siguiente creamos un VI que genere cinco números aleatorios y lo almacenamos en un array: Ejercicio 1
Arrays Auto-indexando Output Cuando auto-index queda habilitado a la salida del túnel, el Array de salida recibe un nuevo elemento en cada iteración del ciclo. Auto-indexed output arrays tiene igual número de elementos que el número de iteraciones.
Construir un Array con constantes desde el DB Función Build Array Ejercicio 2
Arrays 2D Array INSTRUMENTACIÓN N AVANZADA Requiere de un índice de columna y un índice de fila para localizar a un elemento, ambos índices se inician en cero. Para crear un multidimensional array sobre el PF, click derecho sobre el display de índice, se selecciona Add Dimension desde el menú emergente. Con la herramienta de posicionamiento podemos cambiar el tamaño del despliegue del índice hasta que tenga las dimensiones que queramos.
Arrays Inicialización El array puede inicializarse ingresando los datos desde el PF. Para inicializar arrays, se define el número de elementos en cada dimensión y el contenido de cada elemento. Los arrays sin inicializar tienen dimensión pero no tienen elementos.
Arrays Creando constantes Para crear un array constante: Seleccionar Array Constante desde la paleta de Functions Coloque la función en el DdB Arraste e inserte una constante dentro del Array. Se usa un array constante para almacenar varios datos que permanecen constantes en la ejecución de un VI. Arrays constantes también son útiles para pasar datos dentro de un subvi Ejercicio 3
Arrays Auto-indexado For Loop o While Loop, cada iteración puede volcar información como un elemento del array habilitando autoindexado sobre el túnel. El túnel cambia de forma: de un cuadrado sólido a la imagen siguiente:
Arrays Auto-indexando Input For Loop se ejecuta un número de veces igual al número de elementos del Array Ejercicio 4
Arrays Creando Arrays 2D Usando dos For Loops, uno dentro del otro generamos un array 2D Ejercicio 5
Trabajando con arrays usando funciones de LabVIEW Build Array (Agregando un nuevo elemento a un array existente) Ejercicio 6
Build Array (Agregando un nuevo elemento a un array existente)
Trabajando con arrays usando funciones de LabVIEW Array Index (desplegar un elemento del array 1D por su índice) Ejercicio 7
Trabajando con arrays usando funciones de LabVIEW Array Index (elemento de un Array 2D) Ejercicio 8
Trabajando con arrays usando funciones de LabVIEW Ejercicio 9
Trabajando con arrays usando funciones de LabVIEW Ejercicio 10
Trabajando con arrays usando funciones de LabVIEW Dimensión de un Array Ejercicio 11
Trabajando con arrays usando funciones de LabVIEW Si la función no encuentra el elemento devuelve -1 Ejercicio 12
Trabajando con arrays usando funciones de LabVIEW Build, Insert, Sort (Ejercicio 13)
Función Subset: Regresa parte de un array iniciando por el index y determinado por lenght Ejemplo Ejercicio 14
Ejercicio 15
Trabajando con arrays usando funciones de LabVIEW Ejercicio 16
Ejercicio 16
Ejercicio 17
Construir un VI con una rutina de una función de estructura que genere el array de la Figura. A partir de este array genere otro donde se intercambien los elementos 3 y 8, obteniendo el array resultante: Ejercicio
Clusters
Clusters INSTRUMENTACIÓN N AVANZADA Estructura de Datos que agrupa datos juntos. Pueden contener datos de tipos diferentes (a diferencia de los arrays). Similar a un registro de una base de datos Los elementos deben ser todos Controles o todos Indicadores. Ejemplo
Clusters Array vs. Cluster INSTRUMENTACIÓN N AVANZADA Los Clusters difieren de los arrays en que tienen una medida fija. Clusters pueden contener datos mixtos mientras que los arrays contienen datos de un único tipo. Igual que un array, un cluster es o un control o un indicador y no puede contener una mezcla de controles e indicadores.
En el ejemplo siguiente, se muestra cómo tres tipos de datos distintos (número real, número entero y cadena de caracteres) que se encuentran en los controles de la izquierda son llevados a la parte derecha del diagrama como una única unidad. Para aguparlos, se utiliza el objeto Bundle, que se encuentra en Functions/Programming/Cluster, Class & Variants. En cambio, en el lado derecho, tanto del diagrama como del panel, se encuentran los indicadores que permiten visualizar los valores enviados desde los controles antes mencionados. Para ello, se utiliza el objeto Unbundle, cuya misión es obtener los elementos individuales del grupo que llega a su entrada.
Ejercicio 18
Ejercicio 19
Ejercicio 20
Clusters Creación Para crear un cluster control o indicador en el PF: Colocar la pre-forma (punteada) del Cluster sobre el PF desde Controls- >>Array & Cluster Arrastrar objetos dentro, que bien puede ser numérico, Booleano, string, etc. El cluster se convierte en indicador o control de acuerdo al primer objeto que fue ingresado dentro del grupo Ejercicio
CREACION DE UN CLUSTER DESDE EL PANEL FRONTAL INSTRUMENTACIÓN N AVANZADA Ejercicio 21
Cluster Constante Para crear un cluster constante: Seleccione un cluster constant desde la paleta de Functions Coloque el cuadro cluster en el DdB INSTRUMENTACIÓN N AVANZADA Ejercicio 22
El orden de los datos en el interior es en el que se añaden. Este orden se puede modificar haciendo click derecho en el borde del cluster y seleccionando Reorder Controls In Cluster desde el menú contextual Clusters Orden El orden lógico inicia en 0 Ejercicio 23
Clusters INSTRUMENTACIÓN N AVANZADA Ejercicio 1
Clusters INSTRUMENTACIÓN N AVANZADA Ejercicio
Clusters y Waveform Graph Ejercicio
Trabajando con arrays usando funciones de LabVIEW x =1 Ejercicio x 0
Ejercicio