01-16-2015 05:03 PM
I'm having trouble using the NI instrument drivers for the Agilent MSO-X 4000 oscope. I'm trying to use the trigger on channel 2 to acquire the waveform on channel 1. Currently, I always get this error code : "VISA Read in Agilent 2000 3000 X-Series.lvlib:Wait for Acquisition Complete.vi->Agilent 2000 3000 X-Series.lvlib:Read Waveforms (Single).vi->"
The problem comes from Read Waveform vi timing out. This does not occur if I set the trigger characteristic mode to "Auto" instead of "Normal". I've attached a screen shot of parts of the code. The top section is my initialization phase and I use the bottom section to read after the signal is setup. In both Auto and Normal mode, I get a full waveform on the oscilloscope, but obviously with it constantly triggering in Auto mode, I don't get the correct waveform. I'm completely baffled as to why this is happening. I've dug through the forums and someone recommended updating the firmware, which I did to no avail.
01-16-2015 05:15 PM
01-16-2015 06:19 PM
01-20-2015 02:19 PM
I've figured out the problem after digging through the MSO Programming guide.
I believe there's a programming error in the instrument driver that I downloaded from here:
http://sine.ni.com/apps/utf8/niid_web_display.model_page?p_model_id=21187
I removed the ":DIG;" command from the Initiate.vi (called by Read Waveform.vi) in the MSO Instrument driver and the program works fine. The "Read Waveform.vi" is actually reading the waveform twice using two different commands. The first read (:DIG) clears the screen, so if the oscope is in triggered/single mode, there won't be a waveform to read for the 2nd time and therefore it will time out. If the oscope is in Auto mode, the screen is updated with data so the .vi doesn't time out, but returns garbage data