Vous êtes sur la page 1sur 18

CAPITULO 6: FUNCIONES DE ENTRADA y SALIDA DE FICHEROS.

OBJETIVOS

Identificar los controles para el trabajo con ficheros.

Analizar las funciones para el trabajo con ficheros.

Analizar el almacenamiento de data en multiples formatos.

Analizar la lectura de data de multiples formatos.

NDICE

6.1

FUNCIONES DE ALTO NIVEL DE E/S. ........................................................................................ 2

6.2

ALMACENAMIENTO DE DATOS ............................................................................................... 4

6.2.1

Creando un archivo. ....................................................................................................... 4

6.2.2

Almacenando datos en el archivo creado. .................................................................... 7

6.2.3

Almacenando datos en mtiples archivos. ................................................................. 11

6.3

LECTURA DE DATOS............................................................................................................... 13

Captulo 03: Funciones de Entrada


y Salida de Ficheros.

INTRODUCCIN
Las aplicaciones actuales en LabVIEW implican no solo observar la informacin y/o tener un
historial grfico de stos, sino, estar en la capacidad de poder observar los datos de hace una
semana, un mes, u otra fecha con el fin de tener reportes estadsticos, organizar cronogramas de
calibracin, etc. Para esto existen funciones que permiten manipular ficheros, que son unidades
lgicas de almacenamiento, donde el ususario podr guardar la informacin en formatos muy
tiles adems de poder tener acceso a stos.
6.1

FUNCIONES DE ALTO NIVEL DE E/S.

Las operaciones de entrada y salida con ficheros nos permiten almacenar y recuperar informacin
desde la carpeta de un disco. LabVIEW presenta una gran variedad de funciones para tratar
diferentes tipos de operaciones con ficheros.
Para hacer uso de los bloques de Ficheros, nos dirigimos al Diagrama de Bloques dando click
derecho y en la paleta de funciones nos vamos a File I/O. Ver la figura 1.

Figura 1.

Explicaremos con detalle las funciones que se usan para manipulacin de ficheros.

Captulo 03: Funciones de Entrada


y Salida de Ficheros.

Almacenamiento de Resultados.
En un spreadsheet o tabla de resultados, los tabuladores separan columnas, mientras que los
saltos de lnea separan filas.

Write To Spreadsheet File.vi: Escribe el archivo en formatos como: documento de texto


(.txt); excel (.xls) y word (.doc) con problemas solucionables propias del convertidor.

Read From Spreadsheet File.vi: Lee el archivo de formatos como: documento de texto
(.txt); excel (.xls) y word (.doc).
Almacenamiento de Datos en un Archivo Nuevo.
Para guardar datos en un archivo de disco nuevo se han de seguir tres pasos: Crear el archivo
nuevo, Escribir los datos en el archivo y Cerrar el archivo. Tambin podemos abrir uno ya existente
y aadir la nueva informacin al final de ese fichero o sobreescribir su contenido.

Open/Create/Replace File: Al abrir un fichero se devuelve una referencia o manejador que


sirve para representarlo y trabajar con l. Si no se indica de forma explcita el fichero aparecer
una ventana pidiendo su ruta. Al abrir el fichero tambin se puede indicar la operacin (abrir,
crear o reemplazar) y el modo de acceso (lectura, escritura).

Write to Text File: Escribe un string de caracteres o un array de strings como lneas para un
archivo. Si la ruta est conectada en la entrada archivo, la funcin abre o crea el archivo antes de
escribir o reemplaza algunas archivos contenidos.

Close File: Cerrar es la operacin contraria a Abrir, libera el fichero.


Recuperacin de datos desde un archivo.
Cuando se lee desde un fichero, normalmente abrimos un fichero ya existente, leemos el
contenido en forma de strings o cualquier otro tipo de datos y cerramos el fichero. Los datos se
deben leer con el mismo formato con el que se almacenaron; es decir, si originariamente se
guardaron en formato ASCII usando tipos de datos de strings, deberemos leerlos como datos de
string.

Read from Text File: Cuando se lee se har a partir de la posicin que hubiera antes si se
conecta una referencia, o desde el principio si es un Path. Se leern los bytes indicados en count o
hasta el final del fichero si no se indica nada.
Ficheros Binarios.
3

Captulo 03: Funciones de Entrada


y Salida de Ficheros.

Estos VIs funcionan exactamente igual que los anteriores en cuanto al tipo de datos que se cablea
en el terminal file. La diferencia es que admiten cualquier tipo de datos y lo almacenan una vez
aplanado, mientras que los anteriores trabajan con cadenas de caracteres ASCII.

Write Binary File: Al igual que Write to Text File pero acepta todo tipo de dato.

Read Binary File: Similar al Read from Text File.

Format Into File y Scan Into File: Estos VIs son equivalentes a usar los tpicos de leer y
escribir con Scan From String y Format To String respectivamente. Al escribir, con un solo VI se
pueden convertir varios tipos de datos a string, concatenarlos y guardar en un fichero. El proceso
contrario ocurre en la lectura.

Build Path y Strip Path: El primero contruye una ruta a partir de dos entradas;
mientras que el segundo, separa de una ruta el fichero o ltimo directorio del resto.
Measurement File (VIs Express).
Estos VIs Express estn especialmente preparados para almacenar y recuperar datos provenientes
de formas de onda. Entre las opciones ms destacadas se encuentra la posibilidad de guardar los
datos en fomato LVM, TDM o TDMS. El formato LVM es un fichero de texto que bsicamente
consta de una cabecera con informacin sobre el fichero (autor, fecha, etc.) y canales; cada canal a
su vez tambin tiene una cabecera y los datos propiamente dichos.

6.2 ALMACENAMIENTO DE DATOS


Para almacenar datos tenemos que tener en cuenta la siguiente consideracin:
RUTA

CONFIGURACION

GUARDAR

CERRAR

RUTA Si queremos almacenar datos tenemos que tener una ruta, por ejemplo c:\Prueba.
CONFIGURACIN Adems necesitamos un archivo que ya exista o que recin va a ser creado.
GUARDAR Una ves que se tenga la ruta y el archivo se procede a almcaenar la informacin.
CERRAR Terminando de almacenar los datos se procede a cerrar el archivo, el no cerrar un
archivo puede generar prdida de datos o daos en el archivo.

6.2.1 Creando un archivo.


4

Captulo 03: Funciones de Entrada


y Salida de Ficheros.

Realice el siguiente programa como se muestra en la imagen del diagrama de bloques:

Funciones utilizadas:

Build Path
:
Construye ruta, en la entrada superior (color verde) se coloca la
ruta mediante un control o una constante, la entrada inferior (color rosado) sirve para
colocar el nombre del archivo con su respectivo formato. En el ejemplo se ha construido
la ruta siguiente: c:\archivo.txt, recuerde que este bloque construye una ruta pero no la
crea, adems tiene una salida que va a enviar la ruta generada. Si desea almacenar en un
archivo Excel solo tendra que cambiar el formato .txt a .xls y .doc para el caso de Word.
Open, Create, Replace File
:
Esta funcin se encarga de abrir, crear o
reemplazar un archivo en una determianda ruta, para acceder a stas configuraciones se
colocan dos contantes en las entradas como se muestra en la figura de arriba y que por
defecto abren el archivo y tienen como configuracin lectura y escritura, para modificar
stas configuraciones acerque el cursor en stas constantes y haga clic, inmediantamente
le aparecern las opciones, para el caso de almacenamiento ecogeremos la opcin create
y dejaremos como read/write (lectura/escritura).

Close File
: Observe como las funciones van concetadas por un hilo de color verde,
ste hilo es la que lleva la informacin del archivo (ruta, nombre, configuracin). El
5

Captulo 03: Funciones de Entrada


y Salida de Ficheros.

bloque Close FIle sirve para cerrar el archivo una ves terminado con el.
Corra el programa

y dirgase a la ruta para verificar que el archivo ha sido creado.

Note en la figura que se cre el archivo con formato txt y en el disco c.


Adems puede notar que pesa 0 kB y esto debido a que an no de han guardado datos,
solo se ha creado el archivo.
Se le recuerda que el formato puede cambiar a *.xls (Excel), *.doc(Word) o a un formato
que usted desee por ejemplo *.abc la diferencia es que al momento de leer el archivo
desde labVIEW tendr que darle la ruta con ese formato.
Si se vuelve a correr el programa surgir el siguiente error.

Captulo 03: Funciones de Entrada


y Salida de Ficheros.

Si lee el error es debido a que la ruta est duplicada, y es lgico pues se quiere volver a
crear archivo.txt en el disco c cuando ste archivo ya existe, para evitar este error
cambiaremos la confiruacin de create a replace or create.

6.2.2 Almacenando datos en el archivo creado.


7

Captulo 03: Funciones de Entrada


y Salida de Ficheros.

Realice el siguiente programa como se muestra en la imagen del diagrama de bloques:

Funciones utilizadas:

Write to Text File


:
Esta funcin almacena los datos que se ingresan en la
entrada en formato string (color rosado) como se ve en la figura de arriba, adems para
saber donde va a almacenar la informacin necesita la ruta, archivo y configuracin, sta
informacin le llega a traves de la referencia (hilo verde).
Toda informacin que se quiera almacenar debe estar en formato string.
Ahora procedemos a correr el programa y verificar la informacin almacenada.

Captulo 03: Funciones de Entrada


y Salida de Ficheros.

ACTIVIDAD 1
Almacenar datos de dos sensores simulados en un archivo con extensin txt cada 1
segundo.
DIAGRAMA DE BLOQUES

FUNCIONES UTILIZADAS:
Build Path.
Open/Create/Replace File.
Random Number
: Genera nmeros aleatorios entre 0 y 1, al multiplicarlo por 100
generar nmeros entre 0 y 100.
Number to Fractional String
(punto flotante).
Concatenate String
Write to Text File.
Close File:

: Convierte nmeros a string en formato fraccionario

: Concatena string (agrupa).

FUNCIONAMIENTO:
Primero: Se crea la ruta (c:\archivo.txt).
Segundo: Configuramos el archivo como lectura y escritura, y que lo abra o en caso exista
lo remplace.
Tercero: Se entra en un bucle controlado por el botn stop, donde cada 1 segundo se
generan dos nmeros aleatorios (0-100) y se convierten a string para finalmente ser
almacenados, note que el concatenador se encarga de darle forma al texto, primero va el
valor del primer sensor, luego una tabulacin, posteriormente el valor del segundo sensor
9

Captulo 03: Funciones de Entrada


y Salida de Ficheros.

y finalmente un salto de lnea, a la siguiente iteracin el cursor estar en la posicin en la


que se le dej (lnea siguiente) y se volver a repetir el proceso hasta que el usuario
presione el botn stop.
PANEL FRONTAL

RESULTADO

Note el orden en que se guard la informacin, esto gracias al concatenador.


10

Captulo 03: Funciones de Entrada


y Salida de Ficheros.

En caso desee colocar ttulo realice el siguiente programa:

La funcin Write to Text File puede ser usada muchas veces y el cursor se va a colocar en
la ltima posicin donde se le dej. En este caso primero se almacena SENSOR1, luego
doble tabulacin, posteriormente SENSOR2 y finalmente salto de lnea, al entrar al bucle
el cursor se encuentra en la segudna lnea y la primera ya fue creada correspoediendo a
los ttulos y siendo creada una sola ves.

6.2.3 Almacenando datos en mtiples archivos.


DIAGRAMA DE BLOQUES:

11

Captulo 03: Funciones de Entrada


y Salida de Ficheros.

FUNCIONES UTILIZADAS:
Format Date Time String
: Esta funcin retorna un string conteniendo
parmetros de hora y fecha de acuerdo al formato ingresado en la parte izquierda. En
este caso se est extrallendo la hora_minuto_segundo en formato string.

FUNCIONAMIENTO:
Se crea el nombre del archivo en base a la hora del sistema utilizando un concatenador
donde el nombre final ser File_H_M_S.txt, lo siguiente es lo mismo que se ha visto en la
creacin de un archivo. Note que el while de almacenamiento va a terminar cuando se
presione el botn stop se hayan almacenado 20 datos, una vez que se salga del while se
cierra el archivo y en la siguiente iteracin se vuelve a crear otro archivo pero con un
nombre diferente (ya que la hora del sistema va cambiando), al cambiar la hora, cambia
el nombre del archivo por lo tanto se evita el problema de archivos duplicados entonces
es suficiente configurar el bloque Open/Create/Replace File como Create.
RESULTADO

12

Captulo 03: Funciones de Entrada


y Salida de Ficheros.

6.3 LECTURA DE DATOS


Al igual que el caso de almacenamiento de datos, para leer datos tenemos que considerar lo
siguiente:

RUTA

13

LECTURA

CERRAR

Captulo 03: Funciones de Entrada


y Salida de Ficheros.

Par abrir un archivo se necesita la ruta, luego se extrae la informacin y finalmente cerramos el
archivo.
ACTIVIDAD 2
Extraer la informacin de los archivos creados anteriormente.
DIAGRAMA DE BLOQUES

FUNCIONES UTILIZADAS

Open/Create/Replace File
: Por defecto est comfigurado como Open y Read/Write. No se
configura ya que sus valores por defectos con los necesarios para la lectura de datos.

Read Text File

Close File

: Lee una cantidad de bytes de datos.

: Cierra el archivo

PANEL FRONTAL

14

Captulo 03: Funciones de Entrada


y Salida de Ficheros.

Controles utilizados:
File Path Control: En el almacenamiento de datos la ruta se ha estado dando mediante constantes,
pero tambin s emkencion que se podra hacer a traves de controles, este control se encuentra
en Panel FrontalString&PathFile Path Control.

Numeric Control.
String Indicator.
15

Captulo 03: Funciones de Entrada


y Salida de Ficheros.

FUNCIONAMIENTO:
A la funcin de Open File se le da la ruta del archivo mediante el control File Path (tambin se
podra mediante una constante que lleve consigo toda la ruta), esta funcin Open File abre y lleva
la referencia a la funcin Read Text File, la cual muestra la informacin a traves de un indicador
string pero condicionado por una cantidad controlada de bytes, la cual se controla desde la
entrada Count, en el ejemplo se puso un control numrico que lleva el nmero -1, lo cual significa
todo, si cambia este valor a 1 pues leer solo el primer byte, si pone 2 leer los dos primeros bytes
y as sucesivamente.
Retomando la actividad 2 se pide extraer los valores de los sensores para lo cual realice el
siguiente cdigo:

DIAGRAMA DE BLOQUES

16

Captulo 03: Funciones de Entrada


y Salida de Ficheros.

FUNCIONES UTILIZADAS

String Subset
:
Extrae una porcin del string a partir de una posicin (offset) y una
determinada cantidad de carcteres (length).

Spreadsheet String to Array


: Convierte un bloque de datos string separados por un caracter
especial (coma, tabulacin, salto de lnea, espacio)a un arreglo de esos valores numricos.

PANEL FRONTAL

17

Captulo 03: Funciones de Entrada


y Salida de Ficheros.

FUNCIONAMIENTO:
Una ves que se tiene la informacin en un string se va a tranformar a un arreglo de datos
utilizando la funcin Spreadsheet String to Array, pero para esto los datos deben estar alineados,
por lo que primero se extrae solo los datos (sin ttulo) utilizando la funcin String Subset , la cual
extrae todos los datos a partir del caracter 17 (a partir de la segunda lnea), esto lo pueded
observar en los indicadores text y text 2 de la figura de arriba. Una ves que se tienen los datos
ordenados se usa la funcin Spreadsheet String to Array, la cual necesita el bloque de datos
adems del formato de conversin (%f datos flotantes) y el tipo de separacin entre datos (por
defecto es tabulacin) para finalmente mostrar los valores en un arreglo tipo double, ahora
teniendo los valores como doubles se pueden realizar operaciones, grficos, etc.

18

Captulo 03: Funciones de Entrada


y Salida de Ficheros.