Cómo sincronizar los "tasks" de entrada o salida analógicas y digitales en NI-DAQmx con LabVIEW

Actualizado el Jul 26, 2019

Reportado en

Software

  • LabVIEW

Driver

  • NI-DAQmx

Detalles del problema

Me gustaría sincronizar mis tasks de salida analógica y salida digital en LabVIEW para poder emitir pulsos digitales exactamente cuando mi señal analógica se encuentra por encima o por debajo de cierto nivel. ¿Cómo debería hacer esto?
¿Cómo sincronizo mi entrada analógica y el task de entrada digital en LabVIEW para poder correlacionar entre dos eventos?

Solución

Hay muchas aplicaciones que requieren sincronización entre los tasks de entrada/salida analógica y de entrada/salida digital. Por ejemplo, uno podría necesitar emitir un pulso digital cuando una señal de salida analógica supera los 4,5 V o cuando desciende a menos de 0,5 V, como se muestra en el gráfico de señales mixtas a continuación:
Para lograr este rendimiento sincronizado, necesitamos cumplir dos objetivos:
  1. Generar dos formas de onda que estén correlacionadas de la manera deseada (por ejemplo, cree una forma de onda digital que sea alta cuando la forma de onda analógica esté fuera de un rango específico).
  2. Generar estas formas de onda en dos tasks DAQmx separados utilizando algún tipo de sincronización temporizada por hardware.

En el siguiente VI de ejemplo, las señales correlacionadas se generan derivando una forma de onda de una salida digital a partir de la forma de onda de una salida analógica utilizando los Comparison Nodes de LabVIEW. La sincronización del Sample Clock se logra especificando el Sample Clock del task de salida analógica como la fuente del Sample Clock para el task de salida digital. Vea el fragmento a continuación o el ejemplo adjunto para más detalles.

Cuando se inicia el task de salida analógica (suponiendo que el task de salida digital ya está iniciado y en espera de un Sample Clock), los tasks se ejecutarán de manera sincronizada, operando con el mismo Sample Clock, hasta que el usuario detenga la aplicación.

A continuación se muestra un ejemplo de sincronización de hardware entre los tasks de entrada digital y analógica:

Los mismos conceptos para salida analógica y salida digital se aplican al ejemplo de entrada.

Información adicional

No se necesita un start trigger en el fragmento de código anterior ya que ya se está utilizando un Sample Clock para asegurar que cada muestra de salida esté sincronizada entre los tasks.
También puede encontrar un ejemplo de entrada analógica y sincronización en <Archivos de programa>\National Instruments\<LabVIEW>\examples\DAQmx\Synchronization\.

¿FUE ESTE ARTÍCULO DE AYUDA?

No