practica 3 . agrupacion de datos(2010)

48
GUIA DE PRACTICAS DEL AUTOMATIZACION INDUSTRIAL\Practica 3 \Ismael Véliz Vilca - 65- PRACTICA 3 AGRUPACION DE DATOS CON ARREGLOS, CLUSTER , CADENAS Y FICHEROS MARCO TEORICO 1. consulte el articulo enviado en el correo, resuelva los ejercicios de arreglos en el CD 2. Consulte el capitulo 5 del libro Labview 7.1 de Manuel Lazaro ARRAY (ARREGLOS) Un arreglo consiste de elementos y dimensiones. Los elementos son los datos que conforman el arreglo. Una dimensión es la longitud, altura, o la profundidad de un arreglo. Un Arreglo puede tener una o más dimensiones hasta (2 31) - 1 elementos por dimensión, si la memoria lo permite. Creación de los arreglos. La creación de array de control o indicadores en el panel frontal mediante la combinación del Icono Array de la paleta Array & Cluster del menú controls, con un objeto de datos que pueden ser numérico ,booleano o string. En la Imagen que se sigue se presenta un arreglo vacio . para crear un arreglo hemos de llevar un objeto dentro de la ventana de objetos o situarlo directamente usando el menú Pop_Pup. Se pueden añadir dimensiones a un array control o indicador de dos maneras, desplegando el menú de Index display (visualización de indice) y a continuación , escogiendo la opción Add Dimensión ( Añadir

Upload: jano232005

Post on 27-Jun-2015

2.672 views

Category:

Documents


9 download

TRANSCRIPT

Page 1: PRACTICA 3 . AGRUPACION DE DATOS(2010)

GUIA DE PRACTICAS DEL AUTOMATIZACION INDUSTRIAL\Practica 3 \Ismael Véliz Vilca - 65-

PRACTICA 3 AGRUPACION DE DATOS CON ARREGLOS, CLUSTER , CADENAS Y FICHEROS

MARCO TEORICO

1. consulte el articulo enviado en el correo, resuelva los ejercicios de arreglos en el CD

2. Consulte el capitulo 5 del libro Labview 7.1 de Manuel Lazaro

ARRAY (ARREGLOS) Un arreglo consiste de elementos y dimensiones. Los elementos son los datos que conforman el arreglo. Una dimensión es la longitud, altura, o la profundidad de un arreglo. Un Arreglo puede tener una o más dimensiones hasta (2 31) - 1 elementos por dimensión, si la memoria lo permite.

Creación de los arreglos. La creación de array de control o indicadores en el panel frontal mediante la combinación del Icono Array de la paleta Array & Cluster del menú controls, con un objeto de datos que pueden ser numérico ,booleano o string.

En la Imagen que se sigue se presenta un arreglo

vacio . para crear un arreglo hemos de llevar un objeto dentro de la ventana de objetos o situarlo directamente usando el menú

Pop_Pup. Se pueden añadir dimensiones a un array control o indicador de dos maneras, desplegando el menú de Index display (visualización de indice) y a continuación , escogiendo la opción Add Dimensión ( Añadir dimensión) ; o situarlo el cursor sobre el Index Display y arrastrando hacia abajo tantas dimensiones como queramos.

Podemos indexar e introducir elemento dentro de los arrays en los bordes de las estructuras For Loop y While Loop de manera automática, esto es lo que se llama auto-indexing (autoindexado) . La Imagen inferior presenta un ejemplo de ello cada Iteración crea el siguiente elemento del array. Una vez que se ha completado el array pasa al indicador . Obsérvese que el cable se hace mas grueso al cambiar a array.

Ejercicio 1 Rellenar un arreglo de n números aleatorios

Page 2: PRACTICA 3 . AGRUPACION DE DATOS(2010)

GUIA DE PRACTICAS DEL AUTOMATIZACION INDUSTRIAL\Practica 3 \Ismael Véliz Vilca - 66-

Ejercicio 2 La variable temperatura podría representar con iconos como se muestra(la temperatura varía de 0 -100 grados)

Para anular el auto-indexed hemos de desplegar el menú sobre el túnel de salida y escoger la opción Disable Indexing (Deshabilitar indexado). Al deshabilitarlo sólo el ultimo valor pasará a través del túnel. (Para la versión 8.0 el dato distino debe ser un solo elemento)

Ejercicio 3 Rellenar un arreglo pero los datos deben ser modificados por el usuario y que obtenga el promedio de esos datos

ARREGLOS DE DOS DIMENSIONES.

Page 3: PRACTICA 3 . AGRUPACION DE DATOS(2010)

GUIA DE PRACTICAS DEL AUTOMATIZACION INDUSTRIAL\Practica 3 \Ismael Véliz Vilca - 67-

Si queremos introducir elementos en un arreglo de dos dimensiones podríamos usar un For Loop dentro de otro For Loop, El interior crea los elementos de columna, mientras que el exterior crea los elementos de fila .

Ejercicio 4.-Rellenar un arreglo de “m” filas por “n” columnas de números aleatorios de 0 a 20 ( notas de alumnos)

Las funciones aritméticas (sumar , restar , multiplicar, dividir , etc) son polimórficas, es decir, sus entradas pueden ser de diferentes tipos, por ejemplo, podemos sumar un escalar con un array o dos array juntos.

Ejercicio 5 ingresar los datos en una matriz de n x m obtener promedio por filas y el pormedio general b) obtener promedio por columnas

Panel frontal

Page 4: PRACTICA 3 . AGRUPACION DE DATOS(2010)

GUIA DE PRACTICAS DEL AUTOMATIZACION INDUSTRIAL\Practica 3 \Ismael Véliz Vilca - 68-

Ejercicio 6. Sumar un Escalar con un arreglo

Ejercicio 7 . Sumar dos arreglos

Nota.- En la operación de multiplicación se multiplica elemento a elemento ( no como la multiplicación de matrices)

Ejercicio 8 Operaciónes Booleanas con arreglos .- Inserte el Menu Rin de Ring & Enum y escoja Menú ring y a continuación hacer clic con el menú desplegable y escoja (Edit Items) y Llene la lista de la siguiente manera

Page 5: PRACTICA 3 . AGRUPACION DE DATOS(2010)

GUIA DE PRACTICAS DEL AUTOMATIZACION INDUSTRIAL\Practica 3 \Ismael Véliz Vilca - 69-

FUNCIONES CON ARRAY

Page 6: PRACTICA 3 . AGRUPACION DE DATOS(2010)

GUIA DE PRACTICAS DEL AUTOMATIZACION INDUSTRIAL\Practica 3 \Ismael Véliz Vilca - 70-

Labview Tiene en la paleta Array del Menu All Function de Functions un gran número de funciones para manipular arrays

EJERCICIOS CON LAS PRINCIPALES FUNCIONES DE ARREGLOS

1 Array Size (Tamaño del array) da el numero de elemento del arreglo

Ej. 1 Cree un arreglo y Introduzca números y vea la cantidad de elementos que tiene

2. Build Array (Construir array) Concatena array o añade elementos extras a un array. La La función aparace como

Page 7: PRACTICA 3 . AGRUPACION DE DATOS(2010)

GUIA DE PRACTICAS DEL AUTOMATIZACION INDUSTRIAL\Practica 3 \Ismael Véliz Vilca - 71-

Cuando se pone en el diagrama de bloques. Podemos redimensionarla para incrementar el número de entradas.

Ejercicio 2. -Formar un arreglo de dos elementos .A ese arreglo formado aumentar un arreglo de “n” elementos mas un elemento

3. Array Subset (subarray de un array). Devuelve una parte de un array a partir de un indice y longitud determinados (En el diagrama es para arreglos de 2D)

Ejercicio 3.1 Se tiene un arreglo de “n” elementos de los cuales queremos obtener “m” elementos a partir del elemento “p” lugar (arreglo Inicial de 5 elemento a partir del segundo lugar obtener 3 elementos)

Deshabilite View as Icon para ver el grafico mas pequeño

Page 8: PRACTICA 3 . AGRUPACION DE DATOS(2010)

GUIA DE PRACTICAS DEL AUTOMATIZACION INDUSTRIAL\Practica 3 \Ismael Véliz Vilca - 72-

Ejercicio 3.2 Obtener de una matriz de M Filas y N columnas una submatriz de M1 filas y N1 columnas a partir de la fila p y columna q (En el ejercicio se obtienen 2 filas y 3 columnas a partir de la fila 1 y columna 1)

4. Index Array( Indexar array) accede a un elemento de un array

Ejercicio 4.1 .Mostrar el contenido de un arreglo dado el índice mostrar también cuantos elementos tiene el arreglo

Puede representar también los elementos del arreglo gráficamente como se muestra

Ejercicio 4.2 Mostrar el valor un elemento de un matriz dado la fila y columna

Page 9: PRACTICA 3 . AGRUPACION DE DATOS(2010)

GUIA DE PRACTICAS DEL AUTOMATIZACION INDUSTRIAL\Practica 3 \Ismael Véliz Vilca - 73-

5. Insert Into Array (Insertar dentro de un array) inserta un elemento o un subarray en el array de entrada , en el punto que especifiquemos en el index

Ejercicio 5 Inserte un arreglo de una una dimensión en otros arreglo en un lugar especificado ( inserta un arreglo de 3 elementos a un arreglo de 5 elemento a patir del lugar 2)

6. Replace Array Subset (reemplazar una parte de un Array) reemplaza un elemento o array en el array de entrada, en el punto especificado por Index

Ejercicio 6. En el array anterior reemplazar el array de 5 elementos por un arreglo de 3 elementos a partir del segundo elemento

Page 10: PRACTICA 3 . AGRUPACION DE DATOS(2010)

GUIA DE PRACTICAS DEL AUTOMATIZACION INDUSTRIAL\Practica 3 \Ismael Véliz Vilca - 74-

7.

Delete from Array (Borrar del Array) Borra un elemento o subarray del array especificado en n-dimensión Array y devuelve el nuevo array en Array w/subset delete. El elemento o subarray eliminado es devuelto en deleted portion

Ejemplo 7 Eliminar m elementos de un arreglo de n elementos a partir del elemento p ( Por ejemplo borrar dos elementos del arreglo original a partir del elemento 2)

8.

Array Constant (Array Constante) Use esta constante para suministrar un arreglo de valores constantes para el diagrama de bloques.)

Ejercicio 8. Cree un arreglo constante para sumar y realizar otras operaciones. -Para crear un arreglo de valores constantes arrastre el arreglo que esta en el panel frontal al panel del diagrama de bloques

Page 11: PRACTICA 3 . AGRUPACION DE DATOS(2010)

GUIA DE PRACTICAS DEL AUTOMATIZACION INDUSTRIAL\Practica 3 \Ismael Véliz Vilca - 75-

Arreglo constante de dos dimensiones

9 Initialize Array (Inicializar Arreglo) Crea un arreglo n-dimencional en la que cada elemento se iniciliaza al valor del elemento

Ejercicio 9.1 inicializa una matriz de 4 filas por 3 columnas con el nro 5

10.Reshape Array (Redimensionar arreglo) Cambia las dimensiones de un arreglo a los valores de la dimensión de tamaño 0 .. m-1.

Ejercicio 10.1. redimensionar una matriz de n* m a una matriz de 3 x 2

11Rotate 1D Array (Rotar Arreglo de 1D)

Gira elementos de la matriz el número de lugares y en la dirección

indicada por n.

Ejercicio 11.1. Rotar los elementos de un arreglo n lugares a la derecha Por ejemplo 2 lugares ( si usted quiere rotar a la izquierda debe poner lugares negtivos)

Page 12: PRACTICA 3 . AGRUPACION DE DATOS(2010)

GUIA DE PRACTICAS DEL AUTOMATIZACION INDUSTRIAL\Practica 3 \Ismael Véliz Vilca - 76-

Ejercicio 11b. Rotar un control booleano a una velocidad determinada

12 .Search 1D Array (Buscar en Arreglo de 1D).Búsca un elemento en un array 1D a partir de índice inicial . Debido a que la búsqueda es lineal, no es necesario ordenar la matriz. LabVIEW deja de buscar tan pronto como el elemento es encontrado. Si el elemento no es encontrado , la función devuelve -1

Ejercicio 12.- Buscar un elemento en un arreglo ( en este caso el elemento 10 a partir del índice 1 y la función lo encuentra el lugar del elemento que es el 2).

Page 13: PRACTICA 3 . AGRUPACION DE DATOS(2010)

GUIA DE PRACTICAS DEL AUTOMATIZACION INDUSTRIAL\Practica 3 \Ismael Véliz Vilca - 77-

13 Sort 1D Array (Ordenar un Array 1D) Devuelve un arreglo ordenado de los elementos dispuestos en orden ascendente.

OTRAS FUNCIONES

De la ayuda de Labview Application Control VIs and Functions Utilice las funciones de arreglos y desarrolle las funciones que faltan

Paleta de objetos Descripción

Array Max & Min Array & Max Min

Devuelve el valor máximo y el mínimo de un arreglo junto con los índices para cada valor.

Array To Cluster

Array a Cluster

Convierte un array 1D a un cluster de elementos del mismo tipo del array. Clic con el botón derecho y seleccione la función Tamaño del cluster en el menú para configurar el número de elementos del cluster.

Array To Matrix

Array a Matriz

Convierte un arreglo a una matriz de elementos del mismo tipo que el arreglo

Cluster To Array Cluster a Array

Convierte un cluster de elementos del mismo del mismo tipo de datos de a un arreglo 1D de elementos del mismo tipo de datos.

Decimate 1D Array Decimal 1D Array

Divide a los elementos de arreglos en la salida de arrays, colocando elementos en las sucesivas salidas

Interleave 1D Arrays Intercalar Arrays 1D

Intercalar correspondientes elementos de los arreglos de entrada de salida en una sola matriz.

Interpolate 1D Array Interpolar Array 1D

Interpola linealmente un decimal y el valor de un arreglo de números o puntos utilizando un índice fraccional o valor x.

Matrix To Array

Matriz a Array

Convierte una matriz a un arreglo .El tipo de datos que usted cablea a la entrada de Real Matrix determina las instancias polimorficas usadas .

Reverse 1D Array Reverse Array 1D

Invierte el orden de los elementos en la matriz.

Split 1D Array

Split 1D Array

. Divide el arreglo a un índice y retorna las dos partes.

Threshold 1D Array Umbral 1D Array

Esta función compara el umbral y lo evalua en el arreglo de números o puntos a partir de inicio índice hasta que encuentra un

Page 14: PRACTICA 3 . AGRUPACION DE DATOS(2010)

GUIA DE PRACTICAS DEL AUTOMATIZACION INDUSTRIAL\Practica 3 \Ismael Véliz Vilca - 78-

par de elementos consecutivos, de tal manera que el umbral y es mayor que el valor del primer elemento e inferior o igual al valor de la segunda Elemento.

Transpose 2D Array Transponer Array 2D

Reorganiza los elementos de matriz 2D tal que 2D array [i, j] se convierte en la transposición de array [j, i].

CLUSTER (GRUPOS)

Clusters son grupo de elementos de datos de tipo mixto. Un Cluster en LabView es una colección ordenada de uno más elementos, similar a las estructuras Record de Pascal u otros Lenguajes. A diferencia de los array, los Cluster pueden contener cualquier combinación de tipos datos. Se accede a sus elementos unboundling ( literalmente “ desenvolviéndolos”) todos a la vez , en lugar de indexarlos uno a uno. Otra diferencia con los array es que los cluster tienen un tamaño fijo. Al igual que en caso de los array, los clusters no pueden contener combinación de indicadores y controles.

Creamos un cluster de indicadores o controles poniendo cualquier combinación de booleanos ,string, chart, graphs, escalares , arrays o, incluso otros clusters dentro de un cluster Shell, al cual se accede a través del menú Controls del panel frontal. Un Cluster Shell nuevo tiene un borde redimensional y una etiqueta funcional.

Cuando hacemos Pop.Pup dentro del area vacia del cluster shell aparece el menú Controls. Podemos situar cualquier elemento de este menú o bien arrastrarlo desde cualquier punto del panel frontal– Un cluster pasa a ser indicador o control dependiendo del primer elemento que situamos en su interior. Podemos utilizar las opciones Change To control (cambiar a Control) o Change to Indicator (cambiar a Indicador ) para contener todos los elementos de la opción deseada.

A continuación se presentan las funciones más comunes para los clusters:

Page 15: PRACTICA 3 . AGRUPACION DE DATOS(2010)

GUIA DE PRACTICAS DEL AUTOMATIZACION INDUSTRIAL\Practica 3 \Ismael Véliz Vilca - 79-

1. Unboundle ( separar) Descompone un cluster en sus elementos individuales

Ejercicio 1 Formar un cluster y luego separarlo por elementos

Para ello utilice la paleta de herramientas Array & Cluster y forme el cluster arrastrando los objetos dentro de ella.

2. Bundle (unir) une todas las entradas individuales en un único cluster o cambia los valores de los componenetes conectados ( de un cluster)

Ejercicio 2 . Formar un cluster de elemento individuales

Para remplazar valores de un cluster ponga un cluster del mismo tipo de los elementos que se crea

3. Undbundle by name (separar por nombre) devuelve los elementos del cluster cuyos nombres epecificamos .Seleccionamos los elementos a los que queremos

Page 16: PRACTICA 3 . AGRUPACION DE DATOS(2010)

GUIA DE PRACTICAS DEL AUTOMATIZACION INDUSTRIAL\Practica 3 \Ismael Véliz Vilca - 80-

aceder haciendo Pop-pup sobre el nombre de los terminales de salida y seleccionando un nombre de la lista de los elementos dentro del cluster

Ejercicio 3 Seleccione el primer elemento numérico del cluster

4. Bundle by name (unir por nombre) reemplaza componentes en un cluster ya existente. Siempre hemos de conectar las entradas del cluster. Si estamos creando un cluster como indicador podemos conectar una variable local de ese indicador. Si el cluster va a funcionar como control en sub VI, podemos hacer una copia de ese control sobre el panel frontal de VI y conectar los controles a la entrada al cluster

Ejercicio 4. Cambiar un elemento de un cluster

5. Array To Cluster (arreglo a cluster) .-Convierte un areglo de 1D a un cluster del mismo tipo de elementos

Page 17: PRACTICA 3 . AGRUPACION DE DATOS(2010)

GUIA DE PRACTICAS DEL AUTOMATIZACION INDUSTRIAL\Practica 3 \Ismael Véliz Vilca - 81-

Ejemplo 5.- Convertir los primeros 3 elementos de un arreglo a un cluster

6. Cluster To Array (cluster a arreglo)

Convierte un cluster de elementos del mismo tipo de datos a un arreglo del mismo tipo de datos

Ejercicio 6. Convertir un cluster de números a un arreglo

EJERCICIO .- Averigue las otras funciones no desarroladas de cluster que sonCluster ConstantFlattened String To VariantIndex & Bundle Cluster ArrayTo VariantVariant To DataVariant To Flattened String

LA AGRUPACION DE DATOS CON LAS CADENAS

Una cadena es una secuencia caracteres ASCII. Las cadenas proporcionar un formato independiente de la plataforma para la información y los datos. Algunas de las más comunes aplicaciones de las cadenas son las siguientes:

Creación de mensajes de texto simple.

Pasar los datos numéricos como cadenas de caracteres hacia los instrumentos y entonces convertir las cadenas a valores numéricos.

El almacenamiento de datos numéricos en disco. Para almacenar datos numéricos en un archivo ASCII, primero debe convertir datos numéricos a cadenas antes de escribir los datos a un archivo de disco.

Instruir o preguntar al usuario con cuadros de diálogo.

CONTROLES E INDICADORES STRING.-

Page 18: PRACTICA 3 . AGRUPACION DE DATOS(2010)

GUIA DE PRACTICAS DEL AUTOMATIZACION INDUSTRIAL\Practica 3 \Ismael Véliz Vilca - 82-

Se puede acceder a estos objetos a través de la paleta String & Path del Menu Controls

Un string(cadena de caracteres). es una colección de caracteres ASCII. No solo se usa como mensaje de texto. En el control de instrumentos pasamos los datos numéricos como cadenas de caracteres o strings a continuación convertimos esas cadenas en números, asi mismo se necesitan strings para almacenar datos numéricos en disco.

Se puede introducir o cambiar texto en un control string con las herramientas Operating o Labeling. El texto nuevo o cambiado no pasa al diagrama hasta que se pulsa enter del teclado numérico, se hace clic en cualquier otra parte del panel o se pulsa el icono Enter de la barra de herramientas. Pulsando la tecla Enter del teclado alfanumérico se consigue un salto de línea en el strings

Para hacer entrar una tabulación en el string se ha de seleccionar la opción \codes del menpu Pop-up del string y escribir \t En la tabla se listan todos los códigos de los caracteres no imprimibles que podemos usar con los strings.Codigo Interpretación en labVIEW00-\FF Valor hexadecimal de un carácter de 8 bits. Debe ir en mayúsculas \b backespace (ASCII BS , equivalente a \08)\f FormFeed (ASCII FF , equivalente a \0C)\n New Line (ASCII LF , equivalente a \0A)\r Return ((ASCII CR , equivalente a \0D)\t Tab (ASCII HR , equivalente a\09)\s Space ( a \28)\\ backslash (ASCII \ , equivalente a \5C)

Se necesitamos disminuir el espacio que ocupa un string en el panel frontal podemos usar la opción Scrollbar (Mostrar barra de desplazamiento) de su menú Pop-Pup

FUNCIONES DE CADENA

Labview presenta un gran número de funciones para manipular string. Estas funciones están disponibles desde la paleta string del menú function

Page 19: PRACTICA 3 . AGRUPACION DE DATOS(2010)

GUIA DE PRACTICAS DEL AUTOMATIZACION INDUSTRIAL\Practica 3 \Ismael Véliz Vilca - 83-

A Continuación de describen algunas de las funciones mas comunes (para mayor información vea String Functions de la yuda de LabView)

1. String Length (Longitud de la cadena).- devuelve el número de caracteres (bytes) en la cadena, que pueden ser un escalar , array n-dimensional o un cluster

Ejercicio 1.1.- Encontrar el nro de letras de un mensaje ingresado

Ejercicio 1. 2 .- Tambien las cadenas de entrada pueden estar en un cluster

2.

Concatenate String (unir cadenas) Concatena todos los strings de entradas en un único string de salida. String 0 y String1 son los terminales de entrada por defecto , se pueden añadir tantos como sean necesarios

Ejercicio 2. Ingresar dos cadenas luego unirlos insertado el tabulador entre ellos

Para constantes decadenas puedes usar las constantes que existen en la paleta string

Ejercicioo 2 1. Ingresar un pasword en un cuadro de texto ( si el pasword coincide con la clave se enciende un indicador). Modifique las propiedad Display Style del control string

Page 20: PRACTICA 3 . AGRUPACION DE DATOS(2010)

GUIA DE PRACTICAS DEL AUTOMATIZACION INDUSTRIAL\Practica 3 \Ismael Véliz Vilca - 84-

Ejercicio 2.2 .-El siguiente ejercicio concatena cadenas

3. String Subset (subcadena de un string) devuelve un substring del string original comenzando en el valor del offset y con la longitud determinada por length

Ejercicio 3. Extraer una subcadena de una cadena

4. Search and Replace String ( Buscar y reemplazar una subcadena)

Busca una subacadena luego lo reemplaza si lo encuentra

Ejemplo 4.- Buscar en la cadena “EL PERRO SALTA” la palabra “PERRO” y al encontrarlo reemplazarlo con “LOBO” y la cadena resultante debería ser “EL LOBO SALTA”

Page 21: PRACTICA 3 . AGRUPACION DE DATOS(2010)

GUIA DE PRACTICAS DEL AUTOMATIZACION INDUSTRIAL\Practica 3 \Ismael Véliz Vilca - 85-

TAREA. Desarrolle las otras funciones de cadena que no se desarrollaron (se encuentra String Functions ( la función de cadenas)

CONVERSION DE NUMEROS A CADENA Y VICIVERSA

Se encuentra en la paleta String/Number Comversion de la paleta String

1. Number To Fractional String (Número a cadena fraccional) Convierte un número en string de punto flotante con notación fraccional :El tamaño viene determinado por los parámetros width, “ancho” y precisión

Ejercicio 1. Convertir un número a cadena de formato fraccional

12 .Fract/Exp String To Number (Convierte desde los formatos exponencial fraccional/ingeniería). En String/ Number Conversion. Interpreta los caracteres de 0 a 9 , signo mas signo menos e, E y punto decimal dentro de una cadena y a partir del offset como un numero en formato coma flotante en notación de ingeniería , o formato exponencial o fraccional y devuelve ese número

Ejercicio 2. Convertir una cadena a número

Page 22: PRACTICA 3 . AGRUPACION DE DATOS(2010)

GUIA DE PRACTICAS DEL AUTOMATIZACION INDUSTRIAL\Practica 3 \Ismael Véliz Vilca - 86-

TAREA .- realizar las otras funciones de cadenas que no se estudiaron

FICHEROS DE ENTRADA / SALIDA

Las operaciones de entrada/Salida con ficheros nos permiten almacenar y recuperar información en y desde un disco. LabVIEW presenta una gran variedad de funciones para tratar diferentes tipos de operaciones con ficheros . Estas funciones se encuentran en la paleta File I/O (entrada y salida de ficheros) del menú funciones -> All Funtions

ALMACENAMIENTO DE DATOS EN UN ARCHIVO NUEVO

Para guardar datos en un archivo de disco nuevo se han de seguir tres pasoss: Crear el archivo nuevo, escribir los datos en el archivo y cerrar el archivo. Tambièn podemos abrir uno ya existente y añadir la nueva información al final de ese fichero o sobreescribir su contenido.

Con Lab View Podemos escribir cualquier tipo de datos en el archivo que hemos abierto. Si otros usuarios o aplicaciones necesitan acceder a él, se deben escribir string de datos , lo cual crea un fichero ASCCI . Si la prioridad está en la rapidez de acceso y en lo compacto se debe escribir la información con formato binario. Se crea un archivo con formato binario cuando se escriben datos no string (como un array de enteros) en el archivo.

Hay dos maneras de crear un archivo mediante la programacion o atravéz de dialog box (Ventana de dialogo). En el primer método, proporcionanmos el nombre del archivo y del pathname ( localización del archivo) dentro del VI. El pathname consta del nombrre de la unidad (por ejemplo C o A) seguido por los dos puntos, tantas barras inclinadas (\) como subdirectorios haya que separar y a continuación el nombre del archivo. Un ejejmplo sería C: \LVSE\TEST1.DAT donde el nombre del archivo es TEST1.DAT y se encuentra en el directorio LVSE de la unidad C:. En el método de

Page 23: PRACTICA 3 . AGRUPACION DE DATOS(2010)

GUIA DE PRACTICAS DEL AUTOMATIZACION INDUSTRIAL\Practica 3 \Ismael Véliz Vilca - 87-

Dialog Box, el VI visualiza una ventana que podemos usar para buscar un directorio y escribir el nombre del archivo

FUNCIONES DE ARCHIVOS .- Aquí se muestran algunas funciones de manejo de archivos obtenida de la ayuda de labVIEW File I/O VIs and Functions

1. Open/Create/Replace File ( Abrir / crear / reemplazar archivo)

Abre un archivo existente, crea un nuevo archivo, o reemplaza un archivo existente, usando una caja de diálogo interactivamente.

2. Read from Text File (Lectura de archivos de texto)

Lee un número especificado de carácteres o líneas de un byte del flujo de archivo Por defecto, esta función lee todos los carácteres del archivo del texto. Alambree un valor entero para contar y especificar cuántos carácteres individuales usted quiere leer empezando del primer caracter. pulse el botón derecho y seleccione las opciones de líneas leídas

3. Write to Text File ( escritura de archivos de texto)

Escribe una cadena de caracteres como lineas hacia una archivo. la función abre o crea el archivo antes de escribir a él y reemplaza cualquier contenido del archivo anterior. Para añadir a un archivo existente, ponga la posición del archivo al fin del archivo usando la función de Posición de Archivo Fija. Use la función de Posición de Archivo Fija si usted necesita realizar el acceso aleatorio.

4. Close File (cerrar el archivo)

Cierra un archivo abierto especificado por el refnum y retorna el camino del archivo asociado con el refnum. El operador de error I/O opera singularmente en esta función sin tener en cuenta que cierra si un error ocurrió en un funcionamiento precedente. Esto asegura que los archivos están correctamente cerrados.

5. Write To Spreadsheet File (almacenamiento de resultados en hoja de calculo)

Page 24: PRACTICA 3 . AGRUPACION DE DATOS(2010)

GUIA DE PRACTICAS DEL AUTOMATIZACION INDUSTRIAL\Practica 3 \Ismael Véliz Vilca - 88-

Los ficheros Spredsheet suelen tener extensión *.csv y son ficheros de texto que represetnan tablas, cada línea del fichero seria una fila de la tabla y para indicar las columnas se suele emplear el caracter tabulador o el “,” . Este tipo de fichero son utiles para guardar información de forma ordenada, además puede ser leído por otras muchas aplicaciones , por ejmplo MS Excel.

6. Read From Spreadsheet File ( lectura del archivo de hoja de calculo)

Lee un número especificado de líneas o filas de un archivo de texto numérico empezando en un carácter especificado . Usted puede usar este VI para leer un archivo de la hoja de cálculo guardado en el formato del texto.

7.- Path (camino). Contruye una ruta a partir de dos entradas.

8 Current VI's Path ( Camino actual el VIS) retorna el camino del archivo actual de VI. Se usted nunca a usado el archivo esta función returna <Not A Path>.

Esta función siempre devuelve la situación actual de los VI. Si usted mueve los VI, el valor devolverá los cambios

10 Set File Position ( fijar posición del archivo) Mueve la posición del puntero de fichero identificado en refnun de acuerdo a la posición indicada en Offset

Nota obtenga esta función de la paleta de funciones File I/O VIs and Functions y luego advancing file fucntion Y escoja set file position

11 Type cast. Convierte x hacia el tipo de datos type

TAREA.- Estudie y desarrole los demás funciones de manejo de ficheros

Page 25: PRACTICA 3 . AGRUPACION DE DATOS(2010)

GUIA DE PRACTICAS DEL AUTOMATIZACION INDUSTRIAL\Practica 3 \Ismael Véliz Vilca - 89-

EJERCICIOS SOBRE ARCHIVOS CON LABVIEW 7.1

1. Obtener la hora del sistema

2. Generar un grupo de datos de temperatura y almacenarlos en un archivo ascii.

3. CONSTRUIR UN ARCHIVO TIPO TAB DELIMITERLos archivos tab delimiter son aquellos en los cuales un arreglo 2D utiliza caracteres especiales para la separación entre columnas y filas.Este ejercicio busca crear un archivo de este tipo que contenga 2 columnas. Allí se almacenaran los datos arrojados por el Digital Thermometer.vi en una columna y en la otra columna el numero correspondiente al dato generado. Se debe guardar el archivo con extensión .txt y abrirlo posteriormente en un procesador de texto u hoja de cálculo.

En el siguiente diagrama se observa el proceso.

Page 26: PRACTICA 3 . AGRUPACION DE DATOS(2010)

GUIA DE PRACTICAS DEL AUTOMATIZACION INDUSTRIAL\Practica 3 \Ismael Véliz Vilca - 90-

4 Recuperacion de datos de un archivo ASCII

Page 27: PRACTICA 3 . AGRUPACION DE DATOS(2010)

GUIA DE PRACTICAS DEL AUTOMATIZACION INDUSTRIAL\Practica 3 \Ismael Véliz Vilca - 91-

5 Escribir un archivo binario para ello use la paleta Advanced file function

6 Leer un archivo binario

Page 28: PRACTICA 3 . AGRUPACION DE DATOS(2010)

GUIA DE PRACTICAS DEL AUTOMATIZACION INDUSTRIAL\Practica 3 \Ismael Véliz Vilca - 92-

EJERCICIOS ADICIONALES

1 Usando Strip Path separe el nombre del archivo completo en su directorio y el nombre del archivo

2 Cambiar el nombre del archivo con un nuevo nombre que nosotros le demos

Page 29: PRACTICA 3 . AGRUPACION DE DATOS(2010)

GUIA DE PRACTICAS DEL AUTOMATIZACION INDUSTRIAL\Practica 3 \Ismael Véliz Vilca - 93-

3 Grabar un archivo de texto y luego leerlo

4 Grabar un numero y luego recuperarlo

Page 30: PRACTICA 3 . AGRUPACION DE DATOS(2010)

GUIA DE PRACTICAS DEL AUTOMATIZACION INDUSTRIAL\Practica 3 \Ismael Véliz Vilca - 94-

5- Array To Spreadsheet String ( cadena a tabla de resultados)

Convierte un arreglo de un dimensión en un tabla de resultados( Los tabuladores separan columnas mientras que los saltos de línea separan filas )

6 Las productos salen de un horno a un temperatura de Li a Ls grados si desea rellenar esas temperaturas en un vector, grabarlos, luego recuperarlos y rellenar los datos recuperados a otro vector

7 Constuir un Vi que convierta un número en un string, el cual se ha de concatenar con otros dos strings para formar una única cadena de salida . Tambien hemos de determinar la longitud de la cadena final

8

Se tiene un matriz se desea encontrar la cantidad de fila y columnas que tiene la matriz

Page 31: PRACTICA 3 . AGRUPACION DE DATOS(2010)

GUIA DE PRACTICAS DEL AUTOMATIZACION INDUSTRIAL\Practica 3 \Ismael Véliz Vilca - 95-

9 Ejercicio de Cuadro combinado COMBO BOX

De la paleta Control / String Path , Escoja combo Box y luego con clic derecho escoja Edit Item y modifique values match Items de la siguiente manera

10 Generar números aleatorios en forma de tabla para copiarlo a Excel o grabarlo

Page 32: PRACTICA 3 . AGRUPACION DE DATOS(2010)

GUIA DE PRACTICAS DEL AUTOMATIZACION INDUSTRIAL\Practica 3 \Ismael Véliz Vilca - 96-

Use la función de conversión de arreglo a cadenas Spreadsheet (de find examples de labVIEW 8)

La aplicación tiene el siguiente menú

0- la Serie flotante-- Usa el formato prede-finido (%f). El número total de carácteres por el valor es 10, incluso el punto decimal, y 6 carácteres corresponden a la precisión.

1 - la Serie decimal--, los VI usan el formato decimal (%d). El número total de carácteres por el valor es 4.

2- la matriz--VI usan un formato personalizado (%8.4f). El número total de carácteres por el valor es 8, incluso el punto decimal, y 4 carácteres corresponden a la precisión.

3 –La tabla los VI usan el formato de la tabla (% t). El número total de carácteres y la precisión ya se da por el formato de valores presente en la tabla.

Los valores del menú rin son

Page 33: PRACTICA 3 . AGRUPACION DE DATOS(2010)

GUIA DE PRACTICAS DEL AUTOMATIZACION INDUSTRIAL\Practica 3 \Ismael Véliz Vilca - 97-

Opcion 0

Opción 1

Opción 2 y 3

TAREA

Ejecute y estudie los ejemplos de labview 8

Estudiar el programa 46 de los ejercicios resueltos

Se desea encontrar el promedio de dichas temperaturas para ello genere números aleatorios de Li a Ls para simular las entradas a)encontra la temperatura mayor, menor

Page 34: PRACTICA 3 . AGRUPACION DE DATOS(2010)

GUIA DE PRACTICAS DEL AUTOMATIZACION INDUSTRIAL\Practica 3 \Ismael Véliz Vilca - 98-

y el promedio de las temperaturas, Mostrar la variación de en un control grafico muestre los datos generados en un arreglo

EJERCICIOS RESUMEN DE PRACTICA3

1. Ingresar n temperaturas a un vector,encontrar el promedio

Page 35: PRACTICA 3 . AGRUPACION DE DATOS(2010)

GUIA DE PRACTICAS DEL AUTOMATIZACION INDUSTRIAL\Practica 3 \Ismael Véliz Vilca - 99-

2. ingresarn n elementos a un vector, ingresar un numero y determinar cuantos veces se repite ese numero en el vector

PANEL FRONTAL Diagrama de bloques

ARCHIVOS

1. Grabar un archivo de texto

file path

<Not A Path>

start path (Not A Path)

open or create 1

function (open:0)

refnum

arequipa peru

character string

LEER UN ARCHIVO DE TEXTO

Page 36: PRACTICA 3 . AGRUPACION DE DATOS(2010)

GUIA DE PRACTICAS DEL AUTOMATIZACION INDUSTRIAL\Practica 3 \Ismael Véliz Vilca - 100-

file path

<Not A Path>

start path (Not A Path)

open (read only) 4

function (open:0)

refnum

11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,

character string

Problema 1. Se tiene un sistemas de control que inspecciona 3 tipos de productos ( el produto tipo 1 hace prender el led de color rojoel producto 2 hace prender el producto de tipo 2 y el producto 3 de color azul) los productos pasan por el sistema de control cada 500 mseg (medio segundo), el sistema debe informar a que hora se ha realizado el control y de color a sido el producto, tambien debe contar la cantidad de productos de cada tipo que a pasado

PANEL FRONTAL

Diagrama de BLOQUES

Page 37: PRACTICA 3 . AGRUPACION DE DATOS(2010)

GUIA DE PRACTICAS DEL AUTOMATIZACION INDUSTRIAL\Practica 3 \Ismael Véliz Vilca - 101-

Problema 2 .Se ingresa la temperatura de 0 a 100 grados la computadora debe devolver un mensaje de acuerdo a la temperatura ingresada

TEMPERTURA C° Resultado

0-20 FRIO

Mayor a 20 y ≤ 30 MODERADO

Mayor a 30 y ≤ 50 CALIENTE

Mayor a 50 y ≤ 80 MUY CALIENTE

Mayor a 80 QUEMANTE

PANEL DE CONTROL

Page 38: PRACTICA 3 . AGRUPACION DE DATOS(2010)

GUIA DE PRACTICAS DEL AUTOMATIZACION INDUSTRIAL\Practica 3 \Ismael Véliz Vilca - 102-

DIAGRAMA DE FLUJO

3. se tiene nombres en arreglos se debe grabar esos nombres

Page 39: PRACTICA 3 . AGRUPACION DE DATOS(2010)

GUIA DE PRACTICAS DEL AUTOMATIZACION INDUSTRIAL\Practica 3 \Ismael Véliz Vilca - 103-

PRACTICA ESTRUCTURA DE DATOS

Ejercicio 1 Rellenar un arreglo de n números aleatorios pág. 66

Ejercicio 2 La variable temperatura podría representar con iconos como se muestra (la temperatura varía de 0 -100 grados) pág. 66

Ejercicio 3 Rellenar un arreglo pero los datos deben ser modificados por el usuario y que obtenga el promedio de esos datos pag 66

ARREGLOS DE DOS DIMENSIONES.

Ejercicio 4.-Rellenar un arreglo de “m” filas por “n” columnas de números aleatorios de 0 a 20 (notas de alumnos) pág. 67

Ejercicio 5 ingresar los datos en una matriz de n x m obtener promedio por filas y el promedio general b) obtener promedio por columnas pág. 67

Ejercicio 8 Operaciones Booleanas con arreglos.- Inserte el Menú Rin de Ring & Enum y escoja Menú ring y a continuación hacer clic con el menú desplegable y escoja (Edit Ítems) y Llene la lista de la siguiente manera pág. 68

Elaborar dos ejercicios con funciones con arreglos pág. 70 al 77

CLUSTER (GRUPOS)

Ejercicio 1 Formar un clúster y luego separarlo por elementos pág. 79

Ejercicio 2. Formar un clúster de elemento individual pág. 80

Page 40: PRACTICA 3 . AGRUPACION DE DATOS(2010)

GUIA DE PRACTICAS DEL AUTOMATIZACION INDUSTRIAL\Practica 3 \Ismael Véliz Vilca - 104-

Ejercicio 3 Seleccione el primer elemento numérico del clúster pág. 80

Ejercicio 4. Cambiar un elemento de un clúster pág. 81

Realizar dos ejercicios de clúster

LA AGRUPACION DE DATOS CON LAS CADENAS

Elabore dos ejercicios de funciones de cadena

Ej.2 1. Ingresar un pasword en un cuadro de texto (si el pastor coincide con la clave se enciende un indicador). Modifique las propiedad Display Style del control string pág. 84

Ejercicio 1. Convertir un número a cadena de formato fraccional pág. 85

Ejercicio 2. Convertir una cadena a número pág. 86

7Constuir un Vi que convierta un número en un string, el cual se ha de concatenar con otros dos strings para formar una única cadena de salida. También hemos de determinar la longitud de la cadena final pág. 95

FICHEROS DE ENTRADA / SALIDA

1. Obtener la hora del sistema PAG 89

2. Generar un grupo de datos de temperatura y almacenarlos en un archivo ASCII. Pág. 89

3. CONSTRUIR UN ARCHIVO TIPO TAB DELIMITER pág. 90

4. Recuperación de datos de un archivo ASCII pág. 90

5. Escribir un archivo binario 91