Uso de DAQmx Start Task y Stop Task VIs en LabVIEW

Actualizado el Jan 6, 2020

Reportado en

Software

  • LabVIEW Base
  • LabVIEW Full
  • LabVIEW Professional

Driver

  • NI-DAQmx

Detalles del problema

  • ¿Por qué algunos ejemplos de LabVIEW usan el DAQmx Start Task VI y el DAQmx Stop Task VI y algunos no?
  • ¿Cuándo tengo que usar estos VIs?

Solución

Debe utilizar DAQmx Start Task VI y DAQmx Stop Task VI cuando use DAQmx Write VI o DAQmx Read VI repetidamente.

Por ejemplo, cuando se utiliza el DAQmx Read VI con la propiedad autostart establecida en True , el DAQmx Read VI iniciará la tarea de adquisición y la detendrá una vez que se obtenga la última muestra. Si utiliza el DAQmx Read VI en un bucle, la medición o generación comienza y se detiene en cada iteración del bucle debido. Para evitar esto, puede indicarle explícitamente que comience y se detenga con DAQmx Start Task VI y DAQmx Stop Task VI.

El inicio explícito de la tarea antes del bucle y la detención de la tarea después de la ejecución del bucle mejora significativamente el rendimiento. Esto se debe al estado de la tarea DAQmx. Iniciar una tarea antes de un bucle garantiza que la tarea se encuentre en estado de ejecución, lo que puede ayudar a reducir el tiempo de ejecución si se usa antes de un bucle. Detener una tarea después del bucle permitirá que la tarea permanezca en el estado de ejecución dentro del bucle y no vuelva a un estado de tarea anterior después de que se haya detenido. Para obtener más información sobre los estados de tarea y el modelo de estado de tarea de DAQmx, consulte el enlace relacionado a continuación.

Información adicional

Para una demostración de esta idea, puede ejecutar una prueba que evalúe la diferencia de rendimiento como en el ejemplo a continuación, lo que le permite realizar una adquisición de un solo punto en un dispositivo DAQ utilizando dos métodos:
  • Inicio y detención explícita de la tarea con DAQmx Start Task VI y DAQmx Stop Task VI fuera del bucle.
  • Iniciar y detener implícitamente la tarea dentro del bucle.


Abra el Start Stop Compare VI y seleccione utilizar los VI Start y Stop o no usar el Control Booleano en el Panel frontal. Ejecutar el VI en ambos modos. Cuando presiona el botón Detener, el VI Calcular la frecuencia calcula la tasa de adquisición. Debería ver un aumento significativo en la tasa de adquisición al usar DAQmx Start Task VI y DAQmx Stop Task VI.

Puede leer los temas de ayuda de LabVIEW relativos a estos dos VI abriendo la LabVIEW Help , seleccionando la pestaña Contents y navegando a  VI and Function Reference » Measurement I/O VIs and Functions » DAQmx - Data Acquisition VIs and Functions.