Instrument Control (GPIB, Serial, VISA, IVI)

cancel
Showing results for 
Search instead for 
Did you mean: 

Hardware timed GPIB. PXI-GPIB, PXI Chassis

Hi all,

 

I'd like to hardware-time the signals I'm sending with my GPIB board. I can create a counter or some sort of signal using another one of my PXI boards. However, I'm unsure if there is a way to somehow route this signal to the GPIB board so it will send out a signal when the timer ticks.

 

Is something like this possible? If not, I need to find some way to send out GPIB messages with fairly high timing precision, in the range of plus or minus 10 microseconds. I'm using CVI, but I'm also familiar with LabVIEW. Looking through the GPIB function tree, http://zone.ni.com/reference/en-XX/help/370051H-01/cvi/cvigpibgpib4882_library_function_tr/, I'm unsure of what would be useful for this purpose.

 

Thanks,

Dan

0 Kudos
Message 1 of 8
(3,556 Views)

Hi again,

 

I think a more succinct way of asking my question is this:

 

Is it possible to have my GPIB board wait on a hardware signal before it sends out or receives a message? E.g. can I have it wait until a timer signal goes high before sending out a message?

 

Thanks,

Dan

0 Kudos
Message 2 of 8
(3,529 Views)

No, a GPIB has no 'external trigger' input. Perhaps the instrument does?

 

Unclear why you would need this. What kind of command are you sending?

0 Kudos
Message 3 of 8
(3,521 Views)

Thanks for the reply. I need this, or something equivalent, because I must send out GPIB commands to various instruments with very high precision: precise to tens of microseconds. If a command is sent 10 microseconds too late it is unacceptable.

 

I'm not using a realtime OS, so the only way I can conceive of doing this is to somehow trigger GPIB commands off of a more precisely timed hardware signal from another board of mine.

0 Kudos
Message 4 of 8
(3,516 Views)

Precisely writing or reading to an instrument is not something that GPIB is designed to do. Precisely triggering an instrument to take a measurement or output a signal is.

 

You still have not explained exactly what commands need this sort of precision but to initiate a write is strictly a software operation.

0 Kudos
Message 5 of 8
(3,512 Views)

Dennis,

 

Thanks again for the reply. I'm sorry for being unclear before. What I want to do is, as you say, precisely trigger an instrument to take a measurement or to output a signal. For example, at one point in my program, I want to trigger a GPIB-controlled waveform generator to begin outputting a certain type of waveform. However, I cannot have the trigger arrive too late and thus have the waveform output begin too late, hence my need for high precision.

 

You say a GPIB is designed to precisely trigger an instrument. I'm sorry for sounding so confused, but does this mean it is indeed possible for me to send a trigger to a device with the required timing precision? If so, I assume this triggering is device-specific? I'm confused as to how I can achieve the necessary timing precision by calling a function, such as a GPIB trigger function, without having some sort of hardware signal to provide the necessary timing precision.

 

Thanks,

Dan

0 Kudos
Message 6 of 8
(3,487 Views)

Thanks for clearing things up. The triggering mechanisms are device specific. Check the specs of the instrument manual to see if it supports an external hardware trigger. Some instruments do and some don't. Some only have a bus trigger (i.e. the GPIB trigger function).

 

If you are attempting to synchronize multiple instruments, then you could still perhaps use the bus trigger. The GET (Group Execute Trigger) will send the trigger command to multiple instruments.

Message 7 of 8
(3,480 Views)

Thanks for the help. I'll check out the devices and see what my options are.

0 Kudos
Message 8 of 8
(3,471 Views)