Instrument Control (GPIB, Serial, VISA, IVI)

cancel
Showing results for 
Search instead for 
Did you mean: 

Instrument I/O Asst timeout expires before operation completed even though command sent and valid response received

Hi:
I am connecting a New Era Pump Systems automatic syringe pump, Model NE-1000, to a Labview 8.2 station via an RS-232 connection. The syringe pump is fully functional in Hyper Terminal with the following parameters: baud rate - 9600, data bytes - 8, stop bit - 1, parity - none, handshaking - none. I am connecting the pump to Labview through the Instrument I/O Assistant since ni.com does not currently offer drivers for this model pump.
 
When I Query and Parse in the Instrument I/O Assistant using timeout 3,000 and termination character \r, Labview will send the command to the pump (for example, VOL for volume dispensed) and the pump will return the correct values in the Byte index/Binary representation/ASCII representation box. However, the "timeout expires before operation completed," which means I cannot then parse the data. This also happens when I use timeout of upto to 300,000. After 300,000, the Labview program crashes.
 
Does anyone recognize this problem and know how to fix it?
 
Thanks.
0 Kudos
Message 1 of 5
(4,503 Views)
Try \n (linefeed) instead of \r
and be sure that the string control indeed is in \mode before typing.

Instead of using the io assistant it is even more simple to write (VISA) the command and read back with read (VISA)
Don't forget to open the serial port and don't forget to wire error in/out and be sure an indicator for the last error out is present.

greetings from the Netherlands
0 Kudos
Message 2 of 5
(4,499 Views)
Thanks, Albert, but it appears that the termination character in the device manual is <CR> or \r, and the pump won't send a response back if I use \n and it timeout expires a lot sooner. I do not know what: "be sure that the string control indeed is in \mode before typing" means. Can you elaborate on this?
 
I would like to stay with the I/O Instrument Assistant since I have a series of commands I would like to execute to the pump, which I can carry out using 1 I/O Assistant rather than several Read/Write VISAs. I tried using the Read/Write VISAs regardless and didn't get very far since I don't know much about them.
 
Thanks,
Sam
0 Kudos
Message 3 of 5
(4,495 Views)
Responses from the NE-1000 syringe pump always begins with the <STX> character, and are terminated by a <ETX> (binary 3) character.  This may be what LabView is looking for.  The <CR> is used to terminate messages to the pump.

Barry Cowen
New Era Pump Systems Inc.
Message 4 of 5
(4,485 Views)
Hi Sam

that message before this solves the problem.
Use a hardcoded cr in your string to write and only enable the termination character for the read.
I normally use a VISA query (combination of write and read)
I have combined this with an open and maybe it works this way.


greetings from the Netherlands
Download All
Message 5 of 5
(4,477 Views)