LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 

CONTADOR DIGITAL MUY LENTO ?????

Hola...

 

Por favor quisiera q me ayudaran con una aplicaicion que mide voltaje, corriente y realiza un conteo digital, para un proyecto de un generador piezoelectrico.... diseñado para captar las pisadas de la marcha humana....

 

El problema radica en que el conteo se actualiza muy lentamente ????????.... asi mismo las actualizacion de las graficas....

 

 

entorno visual piezoelectricdad.png

 

diagrama bloques piezoelectricdad.png

0 Kudos
Message 1 of 4
(3,212 Views)

I hope you understand english. The first problem is that you are using three express VIs. These VIs are very inefficient inside a loop. For all three inputs, you should open a reference outside the loop like you did with the top signal, read it inside the loop as often as you want and then close it when the loop stops.

 

Also, are the various inputs arranged such that you can read all of them at once?

 

Mike...


Certified Professional Instructor
Certified LabVIEW Architect
LabVIEW Champion

"... after all, He's not a tame lion..."

For help with grief and grieving.
0 Kudos
Message 2 of 4
(3,164 Views)

Adding to Mike's comments, there is an easy way to use the DAQmx Assistant Express VIs to automatically generate LabVIEW code. Section 8 of this white paper shows you how: Using the DAQ Assistant to Automatically Generate LabVIEW Code. Once you generate the code, you should only have the DAQmx Read function inside the loop (as Mike suggested above). This will speed up your application.

Taylor B.
National Instruments
0 Kudos
Message 3 of 4
(3,152 Views)

Saludos DARIOORDOÑEZ!

 

No se si tuviste la oprtunidad de revisar las respuestas de mikeporter y TBirkulosis, tal como ellos apuntaron, existen varios puntos que podrian mejorarse en el programa, para mejorar la velocidad del mismo, por ejemplo:

 

- El uso de el DAQ assistant dentro de un lazo es ineficiente, debido a que el DAQ assistant abre y cierra la referencia al dispositivo en cada iteracion del lazo Lo más recomendable seria abrir la referencia fuera del lazo, adquirir en el lazo y luego cerrar la referencia una vez  detenido el lazo, tal y como lo menciono mikeporter. Otra posible mejora a tu codigo seria el separar la adquisicion de el despliegue de los datos. 

 

- Si no estás familiarizado con los Vis de DAQmx, la opción que TBirkulosis menciono podría serte de mucha utilidad. Podes configurar el DAQ assistant como ya lo has hecho y luego generar código de LabVIEW con VIs de DAQmx a partir del DAQ Assistant configurado. Esto se logra dándole click derecho al DAQ Assistant configurado y seleccionando “Convert to NI DAQmx code” Este documento  tiene mas información respecto a dicho proceso.

 

Finalmente, para detectar que partes de tu código son las que están causando el mayor retraso, podrías hacer un benchmark de distintas secciones, lo cual puede lograrse por distintos métodos, por ejemplo, el mostrado en las imágenes de este foro.

 

 

Tambien hay algunos ejemplos en la comunidad, como este, lo mejor es que encontres el que te haga sentir mas comodo y lo utilices a tu estilo. 

 

 

 

Si tenes alguna duda respecto a cualquiera de los puntos mencionados, dejanos saber!

 

Pura vida!

 

WenR

0 Kudos
Message 4 of 4
(3,128 Views)