From 04:00 PM CDT – 08:00 PM CDT (09:00 PM UTC – 01:00 AM UTC) Tuesday, April 16, ni.com will undergo system upgrades that may result in temporary service interruption.

We appreciate your patience as we improve our online experience.

Instrument Control (GPIB, Serial, VISA, IVI)

cancel
Showing results for 
Search instead for 
Did you mean: 

Triggering a measurement on keithley 4200 using labview driver

Solved!
Go to solution

Hello, I need some urgent assistance here, I'm new in LabVIEW I have a Keithley 4200 parameter analyser I wish to control this instrument using LabVIEW, I have downloaded the driver from the manufacturer and have done all necessary configuration to drive it via the GPIB cable. When I try to run the driver after doing the necessary configurations of my 2  SMUs, I only get the instrument ID upon running the initialize Vi.

I need help on how to trigger this instrument to take a measurement, when I run the vi the only thing I get is the ID, I expect to hear the SMUs switching when the take the reading as what happens when we do a measurement in claurius. I don't know where I'm going wrong.

 

I have attached here the driver for keithley 4200 as from the manufacturer and the screenshots I'm getting on my LabVIEW host desktop. 

0 Kudos
Message 1 of 8
(1,635 Views)

You are better off calling Keithley or going here to post your question: https://forum.tek.com/viewforum.php?f=24

 

0 Kudos
Message 2 of 8
(1,603 Views)
Solution
Accepted by topic author Manyandure
0 Kudos
Message 3 of 8
(1,572 Views)

You might want to check the language being used in the two systems.  I would guess that the one that is working is using SCPI while the other may be in another mode.

Help the Community (and future reviewers) by marking posts as follows:
If it helped - KUDOS
If it answers the issue - SOLUTION
0 Kudos
Message 4 of 8
(1,548 Views)

Hi Craig

Thank you very much for your response. I have started looking into the driver version you send me it is much easier to understand and integrate into my project. However I still run into an error code 1073807339 I don't seem to be able to clear it. My other issue is I have two SMUs I want to do a simple two wire resistance measurement. so to achieve this I have to have one SMU in voltage sweep mode whilst the other is common ground. I have managed to set the sweep function on the attached LabVIEW VI but I'm failing to ground the other SMU I have tried numerous commands but they are not being accepted by the Keithley, any help on a command i can Use to ground My second SMU.

0 Kudos
Message 5 of 8
(1,511 Views)

Sorry, I'm not running 2021 yet.  Can you save for an older version <2021 so I can have a look at the code?

 

0 Kudos
Message 6 of 8
(1,495 Views)

Thank you for your response, here is an version I saved for LabVIEW 2018

 

0 Kudos
Message 7 of 8
(1,484 Views)

It's been a while since I worked with the K4200 command set.  But I believe there should be a space in this command..

 

"SSVR1, -1, 1, 04e-2, 1e-1"  --> "SS<space>VR1, -1, 1, 04e-2, 1e-1"

 

To debug the commands and the setup, you should ask for help on the Tektronix 4200 Forum.  There Andrea C and Dale from Tek can help with the instrument specific issues you are having.  If you have phone support, call and get answers quicker.

 

Some general advice would be..

 -  Do some error checking.  Not LabVIEW errors, but instrument errors.  Send the error querry/instrument status command, and see what it says about the setup.  You could send the commands one line at a time and query the instrument after every line to see if there's an error returned.  If there's an error decipher the message and debug the command you sent.  

 

- You aren't doing anything with the SRQ, was there an intent to wait for data to be ready?

 

- You send the big setup string, then you immediately send the fetch data string then wait to read data.  Add short delays between when you send string and when you read measurement data.  It might take more than 30s for the commands to be processed, measurement to occur, data to be ready to transfer and your reead command after sending "DO 'V1'.  

 

- You can replace that Dynamic Data Express Vi with a Number to String conversion VI from the string pallette, they will take arrays as inputs!

 

Hope that helps somewhat.

 

Craig

0 Kudos
Message 8 of 8
(1,470 Views)