AnsweredAssumed Answered

DSO 5000 failure continuous run (Remote)

Question asked by Gayne on Oct 4, 2010
I have a DSO 5054A and am writing a program using VISA (the Agilent IO VISA Implementation) to continuously run. Roughly, the program works as follows.

1. Connect to the Scope.
2. Set Trigger information (trigger on EXT signal) and start SINGLE run on scope.
3. Wait for Scope to PreStore
4. Trigger Scope from an external source
5. Wait for the Scope to PostStore
6. Download data and waveform information to be displayed.
7. Back to step 2.

Now this works fine for a few hours, but eventually the scope will timeout on a VISA command (usually a read or write) causing the program to fail since it registers as an ESR error and I don't want to disregard errors from the ESR. Also, the scope usually displays QUERY UNTERMINATED, which i understand means the scope basically doesn't understand what I sent to it.  I can reconnect to the scope without power cycling it, but I'm concerned that valid commands are timing out when they worked fine several hundred times before.

I've gone over the commands several times and I'm very sure that they are correct and valid commands.  The only clue I have is that running with the IOMonitor on (to watch the VISA calls and see what fails) allows the scope to run indefinitely (I ran for 51hrs without issue), but as soon as I turn it off, without an hour or 2, there is a timeout.  Placing 1ms sleeps after each VISA call seems to work as well (i ran for 4 hrs before I had to stop it purposely).  My question is why does slowing the program down seem to work?  (I'm assuming running the monitor slows the calls down a little)

Is there a fundamental problem with using the scope this way remotely or have I left out an important step?  

Outcomes