Instrument Control (GPIB, Serial, VISA, IVI)

cancel
Showing results for 
Search instead for 
Did you mean: 

Upgrading from LangInt to NI488.2.NET -- ibeos?

Solved!
Go to solution

I’m working on programming a Saunders & Associates 4220 Wheel Test Chamber with a 2255 Controller.  I’m trying to update the software to C#.NET. I’m using NI’s NI.488.2 GPIB dll. I can send commands such as setting the wheel position and the controller obeys without a problem. However, as soon as I try to retrieve information such as the Actual Temperature, I get an EABO(6) error. It actually does show the correct value in the NI Spy, but it’s followed by the error message. I’d rather fix the error than handle it.

 

I have toggled every setting that I am aware of and cannot get past this error. I am doing a write, then a delay of 1 second, and then a read.

 

Below is part of the constructor which sets up the device.

 

                this.GPIBDevice = new NationalInstruments.NI4882.Device(BoardIndex, DeviceAddress);

                this.GPIBDevice.DefaultBufferSize = 100;

                this._CommandDelay = 1000;

                this.GPIBDevice.IOTimeout = NationalInstruments.NI4882.TimeoutValue.T1s;

                this.GPIBDevice.TerminateReadOnEndOfString = true;

 

We have some older VB code which uses the LangInt.DLL which does not have any problems unless I comment out this line, which will replicate the issue I am having above: li.ibeos(udOven, 1024)

 

I talked to Saunders, who confirmed that my problem is the  li.ibeos(udOven, 1024) command. 

 

What do I need to do to make the equivalent of that command? I do not wish to revert to langint.dll.

 

Thanks for any help you can provide.

 

0 Kudos
Message 1 of 3
(3,698 Views)

A further development is that if I leave the ibeos command in my old code but comment out the following line, I get the same error to occur.

 

        li.ibconfig(udOven, 15, 10) ' ibcEOSmode

 

 

 

What would be the newer equivalent for this?

 

By the way, I am using a GPIB-USB-HS.

0 Kudos
Message 2 of 3
(3,695 Views)
Solution
Accepted by topic author lilepad

I finally figured it out -- it was the ibconfig command that I wasn't properly handling. For future reference, 

 

 

               this.GPIBDevice.TerminateReadOnEndOfString = true;  //this covers the command li.ibeos(ud, 1024)
                this.GPIBDevice.EndOfStringCharacter = 10;  //this covers the command        li.ibconfig(udOven, 15, 10) ' ibcEOSmode
If anyone can point me in the direction of a table or something which shows the links between the old commands and the new commands, I would still greatly appreciate it. Thanks

 

0 Kudos
Message 3 of 3
(3,689 Views)