el 01-30-2019 09:30 AM
Hola a todos.
Tengo un VI que hace una lectura cada 20 segundo, pero no importa el tiempo que lleve el ensayo, siempre pesa 1 KB y está vacío. Tan pronto termina el ensayo, se actualiza el archivo. El problema es que si la máquina se apaga inesperadamente, pierdo todo tiempo y ensayo.
¿Cómo podría hacer que grabe cada 20 segundo, parecido como cuando se usa la herramienta Write to measurement file?
No quiero que grabe cada segundo, pero al menos cada vez que hace una lectura de datos.
Estoy usando LabVIEW 2011.
Adjunto capturas. Cualquier cosa que necesiten, favor dejarme saber.
Gracias.-
el 01-30-2019 11:56 AM
Hola senacuevas, las imagenes son de ayuda pero sería mejor si adjuntaras tu VI. La razón de que tu archivo se actualicé hasta el final es el principio de programación en LabVIEW (Flujo de Datos) estas generando un arreglo de resultados dentro de un ciclo while que se detiene cuando se cumple algun tiempo por lo que veo en la imagen, tus resultados se guardan en un archivo ASCII, dependiendo del número de muestras que guardes, el peso y la velocidad que necesites podrías reemplazarlo por un archivo TDMS, y escribir bloques de datos cada cierto tiempo, si adjuntas tu VI quizá te podamos ayudar mejor.
Saludos
el 01-30-2019 12:29 PM
Gracias por responder.
Bueno, Desde que llegué a este laboratorio ya los archivos se trabajaban de esta forma, e incluso, hay un código de MatLab que corre el archivo generado, y creo que hacer modificaciones en la forma de grabar podría afectar la forma en que se lo hacemos. Lo único que nos preocupa es que no graba al instante, y la data se podría perder. Nunca ha pasado, pero a veces Windows se manda solo y se actualiza, o uno podría desconectar el ordenador sin querer.
Hay otra máquina con una programación de LabVIEW similar, con la misma forma de grabar, que graba al instante. Entonces, no entendemos cómo es que esta no lo hace.
el 01-30-2019 03:43 PM
Hola de nuevo, la solución a tu problema es usar los VIs de bajo nivel para archivos, he simplificado un poco el código también, entiendo tu argumento sobre los archivos, no obstante si graban por mucho tiempo, semanas o meses, es mejor que evalues el cambio a archivo TDMS, puedes leer sobre ellos en la web de NI, Matlab también puede abrir estos archivos al igual que Excel.
Tienes experiencia en LabVIEW?, tu programa puede ser altamente optimizado usando una máquina de estados, de esta forma se simplificaria y se volveria mas fácil cambiar cosas en el futuro, el desarrollador original evitó usar cables para transferir los datos y los sustituyó por variables locales, cosa que esta mal en este caso, pero se ve un sistema bastante interesante 😉
Espero el VI que adjunto cumpla tus necesidades. Saludos