LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 

GPIB controller in charge

I have a PC attached to a number of test equipment via GPIB.  This test rack is testing a UUT that has a GPIB interface we're trying to test.  Main PC code is in labview, and UUT software is in CVI.  I would like to (using LV) set the main PC to standby, then set the UUT as controller in charge.  I would like the UUT to send the main PC a "*IDN?", and have the main PC respond with some known name string.  Then, I need to set the UUT back to Standby mode (I guess after some predetermined time?).  Just wondering what LabVIEW widgets I would need to use.  Since I'm not talking to any specific GPIB instrument, I don't have a specific GPIB address, so how (in LV) do I refer to the GPIB interface at this level?

0 Kudos
Message 1 of 9
(3,320 Views)

VISA GPIB Pass Control is the function you would use (or the 488.2 PassControl) and of course the controller has a specific address. The one in the pc and the uut would each need different ones.

0 Kudos
Message 2 of 9
(3,308 Views)

How is the controller address set (at each) - using MAX?

0 Kudos
Message 3 of 9
(3,305 Views)

The box labeled 'Primary Address'. Have you looked at the help in the lower right corner as you move your mouse over the different options?

0 Kudos
Message 4 of 9
(3,296 Views)

I am struggling with the naming conventions.  What is the name of the string returned when the CIC issues a *IDN?.  When the UUT becomes the CIC and issues the *IDN? to the other controller, I want the UUT to have an expected string that it's looking for.  THAT's the name I'm trying to set.  How is that done?

0 Kudos
Message 5 of 9
(3,293 Views)

That is something you would have to write. I assumed you would do something as simple as running the *IDN? query on one of the instruments. What is the requirement for requesting something from the controller in the pc? That would not do any additional testing of the controller in the UUT as far as I would see.

0 Kudos
Message 6 of 9
(3,286 Views)

In the real system, the UUT is the controller, so we're trying to simulate that by making it the CIC.  Then, the UUT is supposed to issue the IDN? to the SystemController (SC), and listen for an expected string.  I ran a few experiments (without the UUT-unavailable), and a few things are more clear.  However, I'm still not sure about a couple of things.  (1) when the SC (in LabVIEW) uses PassControl, I'm not sure what to set the bus and address inputs to.  When  at the same computer, and the SC is talking to a sig gen, I tell it bus=0, and addr=19 (sig gen;s gpib addr).  With two controllers, however, would the SC PassControl with bus=1?  Not sure what address would be since UUT is a controller, and not a device on the its bus. (2) to get control back at the SC, would I (from the SC) send a SendIFC with bus=1?  I plan on having a timeout, in case the UUT never replies.

0 Kudos
Message 7 of 9
(3,275 Views)

If I recall, the bus number is for the existing CIC and the address is the address of the controller you are making CIC. The address is whatever you want it to be as long as it is between 0 and 30 and is not duplicated. I already said how you set the address in MAX. It IS a device on the bus. I have no idea what kind of software/driver/setup utility you have on this UUT of yours. You can either change the UUT's controller address or change the pc's. Up to you.

 

And yes, the SendIFC will get CIC status returned.

0 Kudos
Message 8 of 9
(3,270 Views)

I think I understand now.  Thanks for your patience.

0 Kudos
Message 9 of 9
(3,265 Views)