Discusiones sobre Productos NI

cancelar
Mostrando los resultados de 
Buscar en lugar de 
Quiere decir: 

Mostrar tiempo eje X labwindows/cvi

Hola a todos,

 

Primero agradecer por leer el post e intentar hecharme una mano.

 

Estoy haciendo una aplicacion con LabWindows/CVI, que lee unos datos desde un microcontrolados. Estos datos los muestro en una grafica que en el eje X debe mostrar el tiempo que lo obtengo desde mi ordenador  (GetCurrentDateTime).

Despues de dar un formato al tiempo, coloco los segundos en el eje X. El problema es que los valores no se guardan. Quiero decir que si paro el mostreo de datos en la grafica cuando arranco de nuevo, los segundos se cambian a la hora actual. Me gustaria que los segundos anteriores se guarden y que la grafica mostre los valores con los nuevos segundos.

 

Espero que me he explicado bien y que me puedan ayudar.

 

Leo

0 kudos
Mensaje 1 de 3
2.712 Vistas

¿Acaso arreglas el eje X en la función de arranque? Si es así, esto es el problema.

Te comento esto porque aunque se ponga el tiempo en el eje X el Graph no tiene referencia al tiempo actual para que pueda arreglarse por si mismo, solo muestra lo que le vas indicando en tu programa.

Pero explicame mejor lo que pretendes hacer: ¿los datos tomados en un momento se van a quedar en la gráfica y los nuevos se colocan a la derecha de éstos? ¿U quieres mostrar las dos series en el mismo punto de la gráfica para compararlas? Si es así deberías usar el tiempo relativo y poner tiempo 0 al comienzo del muestreo



Proud to use LW/CVI from 3.1 on.

My contributions to the Developer Community
________________________________________
If I have helped you, why not giving me a kudos?
0 kudos
Mensaje 2 de 3
2.707 Vistas

Hola Roberto,

 

A ver, pulsando un boton "Start Plotting" voy a una funcion (callback function) que verifica la conexión del puerto serie con el hardware (el microcontrolador), y abilito un timer.

Este timer cada 300ms, lee los datos recibidos del microcontrolador y los grafica (uso un strip chart; que visto no puedo hacer zoom, y ahora he pasado a usar un graph, que esto es otro tema como hacer zoom con un strip chart). Bueno, volviendo al tema, en el eje Y tengo el valor de cada dato, que son 5, y en el eje X intento poner el tiempo actual de mi sistema. Esto lo hace bien, lo que pasa es que el grafico se va llenando y en el eje X me aparece seguido el tiempo actul, incluso si paro de graficar y voy a mirar los datos de atras el eje X me muestra el tiempo actual, no el pasado en el cual la aplicacion leio el dato. Lo que yo quiero averiguar es como hacer que los segundos pasados se queden en el valor cuando optuvo el dato y que no cambie al tiempo actual.

 

Como bien lo mencionas, estoy usando como formato el tiempo relativo.

 

 

Espero que ahora lo he exlpicado mejor.

 

 

Gracias

0 kudos
Mensaje 3 de 3
2.701 Vistas