LABVIEW FILE I/O CLASE 5
MANEJO DE ARCHIVOS EN LABVIEW
Manejo de Archivos desde LabVIEW Funciones FILE I/O Abrir y cerrar archivos Grabar y leer datos txt y binarios a un archivo, (txt, dat). Grabar y leer datos tipo “hojas de cálculo”,(csv) Grabar y leer archivos “LabVIEW Measurement File”, (LVM).
Diagrama de Bloques: File I/O
Cuando usar archivos de texto? 1.- Recuperar datos en otras aplicaciones (Word, Excel, etc.) 2.- Si el espacio del disco es suficiente 3.- Cuando recuperamos lecturas de instrumentos de control usan cadenas de “strings”
Escribir desde una aplicación texto a un archivo Si no ponemos la ruta aparece diálogo de selección de archivo Ejemplo
Leer desde un archivo de texto Insertar Path desde el P.F. Ejemplo
Escribir desde una aplicación texto a un archivo Ejemplo
Leer desde un archivo de texto Ejemplo
Descripción de Errores Archivos: Descripción de Errores
Escribir desde una aplicación texto a un archivo (Manejo de Errores) Ejemplo
Escribir desde una aplicación texto a un archivo (Manejo de Errores) Construir un VI que escriba en un archivo de texto, un mensaje con las opciones de indicar error si la ruta de grabado es incorrecta. Agregar la opción de borrar el mensaje desde el panel frontal: Ejemplo
Escribir desde una aplicación texto a un archivo (Manejo de Errores) Ejemplo
Escribir desde una aplicación texto a un archivo Ejemplo
Escribir desde una aplicación texto a un archivo Ejemplo
Escribir desde una aplicación texto a un archivo Ejemplo
Escribir desde una aplicación texto a un archivo Agregar la opción de borrar el mensaje desde el panel frontal: Propiedades Node Para limpiar e introducir nuevo texto Ejemplo
Ejemplo
Ejemplo
Convertir números a cadena de texto
Conversión números a cadena de texto Ejemplo
Conversión números a cadena de texto Ejemplo
Funciones de bajo nivel: Open, Write, Close Abrir archivo y escribir Abrir/Crear Escribir Archivo Cerrar Ejemplo
Ejemplo
ÚNICA MEDICIÓN! Ejemplo
Escribir registros múltiples de lecturas Ejemplo
Escribir registros múltiples de lecturas Ejemplo
Escribir registros múltiples de lecturas: agregando texto con Build Text Ejemplo
Escribir registros múltiples de lecturas: agregando texto con Build Text Ejemplo
Write to Spreadsheet File Ejemplo
ESCRIBIR ARCHIVO HOJA CALCULO Fraccional con 3 decimales .3f Exponencial con 3 decimales .3e T: TRASPONE Ejemplo
Usando Funciones de Alto Nivel Ejemplo
Ejemplo
Funciones Para grabar “waveforms” Ejemplo
Funciones Para Recuperar “waveforms” Ejemplo
Funciones Para Recuperar “waveforms” Ejemplo
ESCRIBIR ARCHIVOS LVM Ejemplo
LEER ARCHIVOS LVM
STRINGS CLASE 5
Objetivos: Conocer sobre las opciones para controles e indicadores strings. Aprender como usar las funciones de strings Convertir datos numéricos a datos strings y viceversa Usar File I/O para grabar datos a un archivo y recuperarlo con LabVIEW
Como crear controles e indicadores string Strings Como crear controles e indicadores string Aplicación de funciones string Page 7-1: This lesson introduces string and ASCII file I/O operations. File I/O involves saving collected data to a file or reading data from a file. This lesson covers: String controls and indicators String functions and their uses ASCII file input and output operations
String Modos Display Normal display \ code display Password display Hex display Pages 7-2 to 7-3: String controls and indicators can be configured for several different display modes. You can change display modes by popping-up on the control or indicator while in edit mode. Password Display: Asterisks replace the string text on the front panel. This is useful for concealing passwords for logging into VI. ‘\’ Codes Display: Replaces all “unprintable” characters in the string with a ‘\’ followed by a letter. A list of backslash codes is given on page 7-3. For unprintable characters not on this list, LabVIEW displays a \ followed by the hex value of the unprintable character (for example, “\23” = ASCII table character 23). Hex Display: Replaces every character in the string with its ASCII table equivalent. This is useful for serial and GPIB communication.
String Modos Display Normal display \ code display Password display Hex display Pages 7-2 to 7-3: String controls and indicators can be configured for several different display modes. You can change display modes by popping-up on the control or indicator while in edit mode. Password Display: Asterisks replace the string text on the front panel. This is useful for concealing passwords for logging into VI. ‘\’ Codes Display: Replaces all “unprintable” characters in the string with a ‘\’ followed by a letter. A list of backslash codes is given on page 7-3. For unprintable characters not on this list, LabVIEW displays a \ followed by the hex value of the unprintable character (for example, “\23” = ASCII table character 23). Hex Display: Replaces every character in the string with its ASCII table equivalent. This is useful for serial and GPIB communication.
Codigos de caracteres no imprimibles a usar con strings \b backspace \n nueva linea \r return \t tab \s espacio Control Indicador
Usando Funciones Express ‘Build Text’ Ejemplo
Función: Build Text Ejercicio 1
Funciones String: Match Pattern (Patrón de coincidencia) Ejemplo
Funciones String: Match Pattern (Patrón de coincidencia) Ejemplo
Funciones String: Scan From String En el ejemplo anterior rescatamos el valor de la medición como «string». Si queremos obtener el valor numérico aplicamos «Scan From String»: Ejemplo
Funciones String: String Length Funciones String: Concatenated String ejemplos
String Funciones Convirtiendo números a strings Convitiendo strings a números Pages 7-5 to 7-6: String functions (cont.): Format into String: Converts the input argument into a string based on the format string input. The resulting string is the concatenation of the initial string input and the argument converted to a string. More arguments can be added by “stretching out” more input terminals. Scan from String: Converts the input string containing valid numeric characters to individual numbers. Format string can specify multiple outputs with differing data types (numeric, Boolean, etc.). The function can be stretched out to add more output terminals. Explain the examples on the slide.
Ejercicio 2
\b backspace \n nueva linea \r return \t tab \s espacio Ejercicio 2
Ejercicio 2
Funciones String: String Subset 6 Devuelve un substring del string original comenzado por el valor del offset y con la longitud determinada por length ejemplos
Funciones String: Format Into String Convertir numéricos a caracteres .2 cantidad de decimales Funciones String: Scan From String ejemplos
Strings: Función Scan From String (Número)
Ejercicio 3
Ejercicio 4
Ejercicio 4
Edit Scan String %10.2f ejemplos Ancho total de 10 dígitos Tanto Format como Scan tienen un “Edit Scan String” que aparece con clic derecho en la función (formato, precision, tipo de dato, ancho del valor convertido) %10.2f Dos decimales Ancho total de 10 dígitos ejemplos
Editar Formato String Format Into String & Scan From String Functions Page 7-7: Format into String and Scan from String have an Edit Format String option in their pop-up menus. You can also access the format string editor by simply double-clicking on the string formatting functions. Allows users to easily specify the cryptic formatting strings using a simple menu interface. Discuss the example on the slide. Demonstrate the use of Edit Format String on your machine.
Strings: Función Scan (cadena caracteres)
FUNCION GET DATE/TIME STRING
Presentación de resultados en Tablas Pages 7-5 to 7-6: String functions (cont.): Format into String: Converts the input argument into a string based on the format string input. The resulting string is the concatenation of the initial string input and the argument converted to a string. More arguments can be added by “stretching out” more input terminals. Scan from String: Converts the input string containing valid numeric characters to individual numbers. Format string can specify multiple outputs with differing data types (numeric, Boolean, etc.). The function can be stretched out to add more output terminals. Explain the examples on the slide. Ejemplo
Mostrar resultados en Tablas Ejemplo
Mostrar resultados en Tablas TableCreate Property Node Column Header String Change to Write Array Constante Ejemplo
Mostrar resultados en Tablas Ejercicio
Ejercicios Guía 6
Ejercicio 1 -6
Ejercicio 1 - 6
Ejercicio 1-6
Construir un VI que capture 50 lecturas de la tarjeta USB para luego ser grabadas a un archivo txt. Ejercicio 2 -6
Ejercicio 2 -6
Ejercicio 2 -6
Ejercicio 2 -6
Ejercicio 2 -6
Ejercicio.: Construir con estructura Event las opciones, escribir y leer a y desde un archivo de texto. Ejercicio 3 -6
Ejercicio 3- 6
Ejercicio 3- 6
Ejercicio 3 -6
Ejercicio 4. A partir del promedio de 10 lecturas obtenidas con el SubVI “Entrada Analógica”, construir una cadena de texto con la función Build Text desde el panel frontal con los datos que se detallan en la Figura y posteriormente grabarla a archivo TXT (funciones Open, Write y Close File). Ejercicio 4-6
Ejercicio 4-6
Ejercicio 4-6
Lectura de un archivo txt Ejercicio 5. Recupere el archivo TXT del Ejercicio 4, utilizando la función Open, Read y Close File. Ejercicio 5-6
Lectura de un archivo txt Ejercicio 5-6
Lectura de un archivo txt Ejercicio 5-6
Ejercicio 6. Utilice las funciones “Simulate Signal” y “Write To Measurement File”, para generar y grabar una señal de onda triangular de 100 V de amplitud y 50 Hz. Ejercicio 6-6
ESCRIBIR ARCHIVOS LVM Ejercicio 6-6
Ejercicio 7.- Recupere la señal grabada en el ejercicio anterior aplicando la función “Read From Measurement File”.
LEER ARCHIVOS LVM Ejercicio 7-6
Ejercicio 8. Construya una aplicación para grabar un archivo que contenga 20 muestras de lecturas de tensión (adquiridas desde la placa USB PIC), usando la función “Write to Spreadsheet”. Debe tomarse una lectura por segundo, reflejando los resultados en un XY Graph. Ejercicio 8
Ejercicio 8
Leer desde archivo: Read From Spreadsheet Ejercicio 9. Aplique la función “Read from Spreadsheet” para recuperar los datos del ejercicio anterior. Agregue una gráfica que represente las lecturas en función del tiempo. Ejercicio 9
Ejercicio 10.- Genere y grabe una señal triangular de 1V pico a un archivo utilizando la función “Write Waveform To File” Ejercicio 10
Ejercicio 11.- Recupere la señal grabada en el ejercicio anterior utilizando la función “Read Waveforms From File” Ejercicio 11
Ejercicio 12. Construya la siguiente aplicación que graba un Array 2D a un archivo “hoja de cálculo”. Ejercicio 12
Write archivo en formato csv Ejercicio 12
Ejercicio 12
Read archivos en formato csv Recuperar un Array 2D desde un archivo Excel (csv) Ejercicio 13
Ejercicio 12.- Utilice la función “Write to Binary File” para grabar la señal generada por “Sine Wave” con los parámetros indicados en la Figura. Ejercicio 12
WRITE ARCHIVO BINARIO Ejercicio 12
Ejercicio 13.- Recuperar la señal grabada en el ejercicio anterior utilizando la función “Read from Binary File”. Ejercicio 13
READ ARCHIVO BINARIO Ejercicio 13
Ejercicio 13
Ejercicio 14.- Genere un Array de 2D (10 filas x 5 columnas) con las lecturas del SubVI (Demo Thermometer), para ser grabados a un archivo TXT (que pueda ser recuperado con Excel) agregando a cada una de las columnas los encabezamientos de C1, C2, C3, C4 y C5. Ejercicio 14
Write to Spreadsheet Ejercicio 14
Ejercicio 15.- Desarrolle un VI que detecte el ingreso incorrecto de un password haciendo que parpadee un LED con mensaje de error. Si la contraseña es válida el LED se ilumina en verde y un mensaje de “Ingreso con Éxito” aparece. Ejercicio 15
Ejercicio 16.- Construya un VI que detecte las variaciones de tensión (simuladas desde la entrada analógica de la placa USB) . Las lecturas deben ser grabadas en en un archivo de texto guardando la siguiente información: Ejercicio 16