Instrument Control (GPIB, Serial, VISA, IVI)

cancel
Showing results for 
Search instead for 
Did you mean: 

Example VI for Keithley 2000 is not working

 Hello, 

 

I should note that I am fairly new to Labview, I respectfully ask for your patience. 

 

My goal:

Use the Keithley 2000 to take remote DCV measurements from a shunt resistor every second and log these values for later use. We plan to setup a VI to do this for us, utilizing the instrument drivers. I decided to first see if I could even take a single measurement using the NI example code downloaded directly for NI in link 1 (provided below). I am having trouble completing this task.

 

Before you ask, I have installed all required drivers recommended by NI; NI max, NI serial, NI 488.2, etc. 

 

My Setup:

-Keithly 2000 DMM

-RS232 to USB connection (Serial)

-Windows 10 PC

-Labview 11.0 (2011)

-Plug and Play drivers

 

What I have done:

I first read through and followed the guidance found in link 2 (provided below). Then I read through setting up the Keithley for remote readings as specified from the manufacturers user manual, and also mirrored those specifications in the Labview VI (baud rate, flow control, etc.). I also setup NI max to reflect these specifications (although I don't know what that really does). I then launched the example code "Read Single.VI" and errors starting popping out. I have remedied most of these pesky errors (I think, sometimes I wonder if error out says "ok"--but really isn't). The error I cannot figure out comes when the operation gets to the subVI named "Wait for SRQ": this error comes in two parts, one for both Labview and the DMM.

 

Error in labview - 1073807339 - <ERR> _ke2000 Wait for SRQ: A timeout occurred while waiting for a service request from the instrument. This could mean that your instrument did not have time to take all of the measurements or that an error occurred previously. (I assume the latter because no error to my knowledge and observation occurred previously).

 

Error on DMM - Error 363 - Input buffer overun

 

Thank you kindly for taking the time to guide me through to victory, cheers.

 

Best,

David

Physics Undergraduate

 

Links:

1: http://sine.ni.com/apps/utf8/niid_web_display.model_page?p_model_id=248

2: https://forums.ni.com/t5/Digital-Multimeters-DMMs-and/keithley-2000/td-p/2520264

0 Kudos
Message 1 of 9
(5,425 Views)

I would first check the revision update of the Keithley 2000.

Several old versions exist and before you try to update check with Keithley/TEK if that new revision works on your hardware version.

Next what were the changes you had to apply to the software?

Because it should not be needed.

I'm working now in LV17 but can read your changes if you send the changed vi's.

 

I understand that initialization works, but don't know what does not work.

So to give more advice is difficult.

greetings from the Netherlands
0 Kudos
Message 2 of 9
(5,409 Views)

Hi David,

 

You should not need to modify the driver VIs themselves.  Looking at the links you provided the 2nd is from 2013, while the driver is now 2015 and includes the proper set of RS232 settings for the K2000.  You might want to start with a clean version again.

 

Now can you clarify that you are trying the "Keithley_20xx\Examples\Keithley 2000 Read Single.vi" and not the "Keithley_20xx\Public\Data\Data Read Single.vi"?  

 

The first should work without error is your RS232-USB adaptor is setup and working, the second does configure the instrument to make a measurement, it simply tries to read data from the buffer and if there's no data that causes errors.  What errors I can't say since I don't have a K2000 to test at the moment.  But when I run it without a K2000 present I get the -1073807339 error since the first subVI is the SRQ check.

 

 

If you are trying the first one, then please do the following: 

  • Open the VI. 
  • Select the VISA resource name that is connected to your K2000.  "COM 5"?
  • Look at the block diagram.
  • Enable Debugging and watch the progress.
  • Does Initialize cause an Error?
  • If there are no errors in the code and it reached the While loop, press the Measure button on front panel and then watch the block diagram again.  Were are the errors?

 

Let us know how it goes.

 

0 Kudos
Message 3 of 9
(5,406 Views)

Yea, we think you are both right; it's a revision issue. My project leader decided to go ahead and purchase the newest version of LV (we are having issues with other instruments as well).

 

When we tried using a fresh copy of the 8.5 drivers downloaded from NI, we immediately received a timeout error from the initialize subVI. When I went into the subVI I noticed the error happened whenever the program hit VisaREAD function. I did some research and found out this could happen if the function attempted to read more bits than what was available. So I set the bits read from 8 to 0 (because 0 was the actual bits being read), and the error went away. I then had to go through all the other subVI's and change the bits read from ## to 0 (I also felt this wasn't what I should be doing, but it seemed to work). That's when I got to the Wait for SRQ error.

 

Hopefully upgrading LV fixes all these issues. 

 

Greetings from Washington State "Go Cougs"

 

Thanks for the help, David


@cstorey
0 Kudos
Message 4 of 9
(5,359 Views)

Hi

With revision I mean the revision of the firmware of the Keithley 2000, not the LabVIEW version!!!!

The LabVIEW version up from 8.5 are OK in this respect. Yet several updates were made to the Keithley driver software and using the trigger has not always been very stable.

 

So I ask you also to verufy the Keithley version, both hardware ad software and to communicate that with Keithley to be sure that it can be fixed.

 

I have a long relation with both LabVIEW and Keithley and know where to look.

greetings from the Netherlands
0 Kudos
Message 5 of 9
(5,356 Views)

When I start the machine it displays...

 

Rev:A02      A02

 

0 Kudos
Message 6 of 9
(5,342 Views)

Also, I told you the wrong error happening in the initialize subVI at the visaREAD function. It's a instrument ID query error. 1074003951 and 1073807339.

 

It seems I am still having the issue even with the 2018 trial version of LV.

0 Kudos
Message 7 of 9
(5,340 Views)

From the Keithley forums I found this piece of information in 2014....

It looks you have a very old release. The real problem is they keep working.

 


I have three 2000 DMMs : two of them are with REV A12 02 and the other is with REV A06 02. 

The REV A06 02 does not work with my VI, the VI is unable to read data from the 2000 DMM. However, the two with REV A12 02 work perfectly with my VI. Hence, I would like to update the firmeware to REVA12 02. Is it possible? How can I do that?

 

 

The response from Keithley was 

Re: 2000 MDD firmware REV A12 02 and REV A06 02

Post by brian.d.smith » November 25th, 2014, 1:46 pm

The model 2000 DMM uses EPROM devices that must be programmed outside of the instrument. Normally, a customer will send the DMM to a Keithley authorized service center for the firmware upgrade. 

The most recent release is A20. There is no guarantee that the latest revision will work with your VI. 

The most likelihood of success may be to clone the EPROM devices from one of the model 2000 DMMs that you are satisfied with. This would place the calibration from the cloned DMM into the recipient DMM. 

No matter what you do, you will probably need to calibrate the model 2000 that you update.
greetings from the Netherlands
0 Kudos
Message 8 of 9
(5,339 Views)

Awesome! This was a big help. I'll let you know how it turns out.

 

-David

0 Kudos
Message 9 of 9
(5,335 Views)