LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 

keithley 2001 VISA driver problem

Hi!

 

I have a Keithley 2001 DVM and a Keithley 7001 Multiplexer (connected also with trigger cable). About 1 month ago I made a VI what measures different values using these two devices, like 2Wire resistances, 4 wire resistances, and DC voltages. I have used low level GPIB basic commands to manage these tasks, and this labview code works usually, but sometimes after a few hours, or even after a few days, I get error code 6, "generic i/o file error in GPIB_write". I asked for help here, and I was told that I should use the official VISA drivers, only I get help here in this case.

 

So I have downloaded the Keithley2001.llb and 7001.llb drivers, and I try to implement now just for testing purpose a simple 4 wire res. measurement closing the 2!1, 2!3, and 2!5 channels in the MUX (to measure 3 Ni wire cable resistances in my experiment).

 

I have attached 3 VIs: the first is where I initialize the Keithley devices and configure them up (mod1_initialize_GPIB.vi). The second VI should perform the 4 wire res. measurement (mod1_A_4Wire_resMUX_2!1,2!3,2!5_new.vi). In this second VI I use the "Keithley 2001 Example.vi" what comes with the llb driver package, with some slight modifications just adding some additional connectors (Keithley 2001 Example_modified_for4wire_res.vi). When I launch my main VI (i did not attach it), first I call the initialize VI, and after that the second VI. The running hangs forever there, without any error message. With the highlight execution mode, I can see the running hangs inside the "Keithley 2001 Example_modified_for4wire_res.vi", and inside this at the "Keithley 2001 Multiread.vi", and inside this I see the already familiar Error code 6, at "Keithley 2001 Multi Read;GPIB Receive Message". Actually it is very strange, the error does not stop the official VIs running, it just hangs...

 

Someone could give me some help please?

 

Now I have a basic GPIB VI package what I wrote, but crashes sporadically, and also I have the official drivers, what I cannot even make to work...

 

Thanks in advance!

 

 

0 Kudos
Message 1 of 7
(4,509 Views)

I attach the working versions for 4 wire resistance measurement written using the low level GPIB functions. So this is What I would like to implement using the official drivers...but no luck so far 😞

So these VIs run okey, but there is a sporadic Error 6 crash always with these...

Download All
0 Kudos
Message 2 of 7
(4,503 Views)

Just as a reference, this was the original post where I asked for help:

http://forums.ni.com/t5/LabVIEW/GPIB-write-error-code-6-how-to-do-proper-wait-in-GPIB-comm/m-p/15499...

(the last post from me was not valid, actually I did not solve the sporadic error yet as you see above too)

0 Kudos
Message 3 of 7
(4,496 Views)

Since I still did not find an example how to use a keithley MUX and DVM together (trigger link) to perform different measurement, so I have to solve the problem in my code using low level GPIB functions. (there is a labview example in the case of the multiplexer on the Keithley official webpage, but it is written using not the drivers but also low level GPIB functions http://www.keithley.com/base_download?dassetid=11901)

 

Yesterday I have revised my VIs, also I have removed the stacked sequence and replaced it with a simple state machine as it was advised me in the other post. I also put a while loop condition check not only after the

:STAT:OPER:COND?

 

, but also for the 

:STAT:MEAS:COND?
:STAT:OPER:TRIG:COND?

 commands.

 

What I have experienced so far that, while in the original stacked sequence-d version my main VI loop time was almost always exactly 15 seconds (many GPIB subVIs in serial called) , in the new changed version as I wrote above, the looping time varies between 15 and 16 seconds iterations by iterations (sometimes even 17 seconds). I hope this means good.

 

My revised project now is running without GPIB error for 12 hours, I cross my fingers, if it last through the whole week, I will accept it as solution.

 

But I am still interested how to perform a measurement using the official Keithley drivers together with the MUX and DVM 🙂

0 Kudos
Message 4 of 7
(4,471 Views)

The low level GPIB VI what I have modified is running now without the sporadic error since Sunday (see attachments, the initialization is still the same as attached in the another post).

 

For those who gets in the same trouble in the future (and not getting any idea/help how to deal with the "official VISA drivers"), I attach the working version using low level gpib functions. I stay with this.

Still the official drivers no go for me...

 

0 Kudos
Message 5 of 7
(4,450 Views)

I said too early I have solved the GPIB problem, after 3 days of running, tonight the GPIB comm. crashed again Smiley Sad ,

the error is the same as usuall:

 

"GPIB Write in wait_for_GPIB.vi->A_4Wire_resMUX_2!1,2!3,2!5_new.vi->GPIB_core(SubVI)_new3.vi->ANTECH4.0_MAIN.vi

Possible reason(s):

LabVIEW:  Generic file I/O error.
=========================
NI-488:  I/O operation aborted."

 

I wish I had a permanent immediate error, because this sporadic error driving me crazy...

0 Kudos
Message 6 of 7
(4,436 Views)

We also use this Keithley combination in our lab using the drivers with the old GPIB read and write functions.

Usually we have no problems, but then we usually run not much longer than one day, sometimes a weekend.

I had one issue some time ago, but unfortunately I did not record the error.

 

So all in all, I do not have a solution, but I also would like these drivers updated to the VISA standard.

0 Kudos
Message 7 of 7
(4,108 Views)