PXI

cancel
Showing results for 
Search instead for 
Did you mean: 

Multi-Device Synchronization with PXI-1044 + 6250M + 6143S

Solved!
Go to solution

Dear all,

 

I have a problem with multi-device synchronization with my PXI-System: When starting a measurement, the devices do not start at the same time in spite of using a start trigger. The delay in start time is varying randomly between 150 nanoseconds and about 80 milliseconds.

 

My PXI-System consists of the following components:

  • Controller PXI-8108
  • Chassis PXI-1044
  • 6*PXI-6143 S series (Slots 2-7)
  • 1*PXI-6250 M series (Slot 😎

 

The Software used is LabVIEW 8.2.1, NI-DAQmx 8.9 and MAX 4.5.  "Trigger Line Routing" is set to "Dynamic" for all 8 lines.

 

I have created 3 tasks in the attached VI: Task 1 ("Drehimpulsgeber" = shaft encoder, 1 channel, Rate:1.25MS/s), Task 2 ("Heißfilme 1-8" = hot-film probes no. 1-8, 8 channels, rate per channel 250kS/s) and Task 3 ("Heißfilme 9-16" = hot-film probes no. 9-16, 8 channels, rate per channel 250kS/s). The 3 tasks are intended to start simultaneously acquiring analog voltage when hitting the "Start"-button. As the start trigger I use a digital pulse created on /PXI1/PXI_Trig0.

After having read the samples, the first recorded timestamp of each task is extracted, displayed and the time delay is calculated (see zones "Start time" and "Time Delay" on the front panel).

 

How can I achieve to synchronize the start of all three devices without getting that random time delay?

Thank you in advance.

Regards,

Matze

0 Kudos
Message 1 of 6
(4,452 Views)

Hi MatzeK,

 

I would recommend to use as less sequence as posible, so I removed all the sequences from your VI. You can use the dataflow to sort the execution order. If you setup a trigger for a DAQ device it will halt until the trigger occurs or the timeout, but you can disable the timeout (use -1 as timeout value). I also would suggest to make the configuration before the acquisition starts. All these steps could have been done before.

I attached you a modified  verion of your VI.

 

One question is left, why is there routing with the counter output inside the case structure?

 

Regards

TomBaum 

0 Kudos
Message 2 of 6
(4,393 Views)

Hi TomBaum,

 

thank you very much for your answer.

I followed your recommendation to remove the sequence and to use the dataflow to sort execution order. Unfortunately I couldn't notice an improvement concerning the random time delay.

 

What exactly do you mean by "making the configuration before the acquisition starts"? (unfortunately the upload of your modified VI didn't work correctly)

 

The routing with the counter output inside the case structure is used create a digital (start) impulse on PXI_Trig0. Using this counter I achieved the best results for synchronized start of the measurement.

 

I appreciate your input.

 

Regards

Matze

0 Kudos
Message 3 of 6
(4,386 Views)

Hi MatzeK,

 

If you want to write in German we can also go on speeking German in this thread. I modified your VIs once again and I hope it works now. I used LabVIEW 8.2.1 to save it. Which version did you got? 

 

I also want to inform you about that link http://digital.ni.com/public.nsf/allkb/78E44565FD87E7D686257108007F94F8?OpenDocument . This is a Knowledge Base for Multidevice task issues.

 

TomBaum 

0 Kudos
Message 4 of 6
(4,377 Views)
Solution
Accepted by topic author MatzeK

Hi MatzeK,

 

Here is another example. Could you please try this too and send me information about the success?

 

TomBaum 

Message Edited by TomBaum on 02-13-2009 06:44 AM
Message 5 of 6
(4,371 Views)

Hi TomBaum,

 

thank you very much for your replies.

 

I have done a first test using your VI "testVI.vi" and the measurement now starts simultaneously. (S-series cards are perfectly synchronized: 0s delay between them; M-series card shows a tiny "delay" of 150 nanoseconds - this is completely sufficient for my application).

 

Many thanks for the solution of my problem.

 

Regards

MatzeK

0 Kudos
Message 6 of 6
(4,356 Views)