Instrument Control (GPIB, Serial, VISA, IVI)

cancel
Showing results for 
Search instead for 
Did you mean: 

Can I call separate GPIB instruments simultaneously?

Here is the example scenario:

I have a program where there are two VISA sessions, both doing a GPIB write immediately followed by a GPIB read to separate instruments on the same GPIB bus (imagine a loop polling data from two instruments at once to update a user interface). The two VISA sessions are not sequenced or connected to each other in any way.

I have actually done what I just described several times in LabVIEW programs, and never had problems. However, in a discussion with a colleague we debated whether or not this was just pure luck. I always thought that the VISA SW layer negotiated the communication to an extent that you did not have to worry about simultaneous GPIB calls as long as they were to different instrument addresses.

Am I wrong on this? Must GPIB calls to multiple instruments always be sequenced to avoid a possible communication error?
0 Kudos
Message 1 of 4
(2,874 Views)
Tom,

What you are doing works by design, not by luck. VISA and NI-488.2 do handle the use case that you're talking to two different instruments on the same GPIB bus. You would need to be careful about doing this if you were using board-level NI-488.2 calls. Since you are not, you shouldn't see any problems with what you're doing.

Craig A.
National Instruments Engineer
0 Kudos
Message 2 of 4
(2,859 Views)
Thanks Craig- what is a "board-level" 488.2 call? I have used instrument drivers that use the old "488.2" functions in LabVIEW but I don't know if this would qualify as a board-level call and thus be subject to the problems you mentioned.
0 Kudos
Message 3 of 4
(2,850 Views)
The list of NI-488.2 board level commands is in the NI-4882 Help file, just serach for "Board-Level". These commmand access the interface directly.

Some of the popular commands include: infind, ibonl, ibcmd, ibrd, ibwrt.
0 Kudos
Message 4 of 4
(2,829 Views)