LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 

Synchronization of multiple GPIB Instruments

All,

I am relatively new to LabVIEW and thus would really appreciate your assistance/patience. I am writing a program that has three Yokogawa GS200 that put out voltages as assigned on the front panel. If I set all the times to be the same the outputs are different. Is there a way a can set it up to synchronize the instruments while still having the ability to independently enter times and voltages? I have attached my program, thank you in advance.

 

Kelsey

0 Kudos
Message 1 of 4
(2,851 Views)

For starters, you can only control a single instrument at a time on a single GPIB bus.  All of your commands within your loop are all happening sequentially and possibly interleaving between rows.  Why do you need to adjust those parameters on the fly?  To control all three of these instruments simultaneously you would need to do one of the following:

  1. (A) Control each instrument with a separate GPIB controller. (B) Separate each Yokogawa control into its own loop.  (C) Possibly setup an alignment trigger.
  2. (A) Set up for a producer/consumer event engine. (B) Configure all to wait for trigger to begin test.  (C) Prepare all with new settings.  (D) Send Trigger (External or GPIB trigger).
Help the Community (and future reviewers) by marking posts as follows:
If it helped - KUDOS
If it answers the issue - SOLUTION
Message 2 of 4
(2,833 Views)

So if I understand you want to have all three GS200 units enable their output at the same time?

 

You are going to have to dig out the manual and see if these can be set to respond to a GPIB bus trigger.

 

For instance I need to capture inrush current at several phase angles with an AC source and oscilloscope:

 

I send the command TRIG:SOUR BUS  (bus trigger mode)

OUTP ON (turn on output)

VOLT:TRIG 120 (set output to 120 volts)

TRIG:SYNC:PHASE 90 (turn on at 90 degrees phase angle)

I also send *CLS;ARM; to an oscilloscope to arm its single sweep trigger.

 

Nothing happens until I send the command:

*TRG

At that moment the AC source turns on its output at 90 degrees phase angle and the oscilloscope starts a single sweep catching the inrush current.

 

Sorry about the smiley's they are mandatory on this board.  

========================
=== Engineer Ambiguously ===
========================
0 Kudos
Message 3 of 4
(2,808 Views)

It is very unclear what is your goal and what you're trying to achieve. The fact that you use a FOR loop already provides some synchronisation: the sequence for all equipment must complete before the next iteration. Because of that If you change any timing it will change the synchronisation. Why do you need to change timing and amplitude on the fly?

 

Have you looked at chapter 8 (Synchronisation) and chapter 6 (Programs) of the manual?

 

Ben64

0 Kudos
Message 4 of 4
(2,792 Views)