Hi,
I want to read out an LXI compatible power meter (Agilent N1912A) with
StreamDevice. Depending on its configuration (averaging etc.) this
device might need very different time to acquire a value. Nevertheless I
always want the device to acquire data continuously. I also want to get
the data with a time stamp that is close to the time the data
acquisition was finished.
Unfortunately I did not find a way to configure the device to send new
(unsolicited) data as soon as acquisition is finished. But the device
supports two read-out modes:
1. A synchronous "READ?" command that in some cases blocks for more than
a minute. Running this command continuously is obviously not exactly a
nice solution. But anyhow: Is there a way to issue the next "READ?"
command right after the previous one finished?
2. A free-running mode (device automatically starts the next acquisition
as soon as the first one is finished). In this mode the interface is
never blocked and data can always be read out with the "FETCH?" command
which immediately returns the last reading. Using this command with
SCAN=".1 second" leads to a lot of unneeded record processing (as well
as CA traffic to clients that monitor this PV and also archiving load).
Is it possible to avoid processing of my ai record if the VAL field did
not change? It seems to me that this is a limitation caused by the
asynchronous behavior of Asyn/StreamDevice...
Any ideas?
Martin