06-23-2010 02:07 AM
I am doing some measurements using a current source(Keithley 6221 and Nanovoltmeter Keithley 2182A) and a custom current sweep.When I try to read the data from my device(over the GPIB bus) it only reads a maximum of 255 bytes, which depending on the number of sweep points is not enough. A second VISA-read does not work, because of some Timeout-error.
This way, when I initiate a second measurement(run this SUB-VI again), VISA-read gets me the missing data points from the first measurement and then continues with as many data points from the second measurement as there are bytes left to reach 255.
Is there a way to read as many Bytes as there are in total or to repeat the VISA-read-process until the complete device buffer has been read?
(PS: There was a property node named "Bytes at serial port" which can be connected to the VISA-Read, but when I include it in my circuit I always receive: error -1073807331, so is there another way to do the same thing?)
06-23-2010 07:02 AM
VISA is not limited to 255 bytes. You should be able to set the byte count to some large number. The read will automatically terminate when the instrument asserts EOI. I did notice that you issued a query for the tracdata but did not read it. Instead, you did another query. Why?
Your use of the VISA Bytes at Serial Port is wrong since you are not using the serial port.
06-23-2010 07:39 AM
the voltmeter is directly connected to the current source via RS-232 and the source is connected via GPIB to the computer, so the first query gets the data from the voltmeter to the current source and the second query then gets the data to the pc...
I have already tried larger values e.g. 1024 for VISA-Read, but it did not work.
Meanwhile I have found a (maybe not too beautiful) solution:
When I repeat the second query and the read command it fetches the remaining data, so I have to repeat this sequence depending on the amount of data that I'm gathering.