• RE: 6517B difficulty up-ranging from 200pA to 2nA on auto-range

    Hello Andrea,

    I see the same thing when manually operating the instrument from the front panel, but only under certain conditions: it happens if I change the trigger mode from continuous to a manually triggered one-shot, or if I first issue an *RST command remotely and then return to local operation.

    If use the instrument immediately after power-up, with no change to the trigger settings, my range changes work as expected - i.e., if I skip step 5 below or don't issue *RST, everything seems ok. But, I would really like something that works after an *RST, so that I can keep my remote settings consistent in case someone else uses the picometer and changes my settings.

    I now have set up a test circuit with a 100 MOhm resistor. I can re-create the issue using exclusively local operation by:
    1. Power-on the Keithely6517 by pressing the power button
    2. Press "I" to select the current measurement function
    3. Press "AUTO" to turn autorange on. The screen displays "Autorange: A"
    4. Press "ZCHK" to turn zero-check off
    5. Switch to one-shot mode with a manual trigger (this is to copy the behaviour on *RST, which I want for remote operation). Press "CONFIG", "TRIG", select BASIC, then select MODE and ONE-SHOT. Then, press "CONFIG", "TRIG", SOURCE and select MANUAL. This provides the same functionality I get after an *RST, where I only trigger a reading by pressing the TRIG key
    6. Set the voltage to 0.01 V using "OPER" and the arrow keys to set a voltage output
    7. Press "TRIG" to trigger a reading. The display shows 75 pA, roughly as expected (expected 100 pA, but given my low-quality/unshielded test circuit, 75 pA is reasonable). The 2V output at the back gives me -0.77 V on my multimeter.
    8. Set the voltage to 0.02 V 
    9. Trigger a reading. The display shows 176 pA, roughly as expected. The 2V output at the back gives me -1.8 V
    10. Set the voltage to 0.03 V
    11. Trigger a reading. The display shows 208 pA, but I would expect around 300 pA. The 2V output at the back gives me -2.1 V.
    12. Press the up arrow key once, to uprange. The screen displays "Range: 2nA"
    13. Trigger a reading. The display shows 0.280 nA, roughly as expected. The 2V output at the back gives me -0.27 V
    14. Return to autorange
    15. Set the voltage to 0.3 V
    16. Trigger a reading. The display shows 3nA, as expected. This means the uprange from 2nA to 20nA happened automatically, which is good. The 2V output at the back gives me -0.29 V
    Try again with more current. This immediately follows step 14 above (i.e., autorange is still on, same setup)
    1. Set the voltage to 0.01 V
    2. Trigger a reading. The display shows 75 pA, as expected. The 2V output at the back gives me -0.77 V
    3. Set the voltage to 0.03 V
    4. Trigger a reading. The display shows 209 pA, but I would expect around 300 pA. The 2V output at the back gives me -2.18 V
    5. Set the voltage to 0.3 V
    6. Trigger a reading. The display shows 208 pA, but I would expect around 3 nA. The 2V output at the back gives me -2.18 V
    7. Press the up arrow key once, to uprange. The screen displays "Range: 2nA"
    8. Trigger a reading. The screen displays "OutOfLimit" - at least in the 2nA range I have an indication that something is wrong! The 2V output at the back gives me -2.94 V
    9. Uprange to the 20 nA range
    10. Trigger a reading. It is 3 nA, as expected. The 2V output at the back gives me -0.293 V
    My remote connection is with a GPIB-Ethernet adapter from Prologix. In the end, I have a C++ program that will send commands to the 6517, but used a terminal to send commands for my first post so that it is easier to see exactly what I am sending. Technically, I am sending these commands to the adapter, which then forwards them to the 6517's GPIB interface.

    Thank you
     
  • 6517B difficulty up-ranging from 200pA to 2nA on auto-range

    Hello,

    I am using a Keithley 6517B electrometer to provide a bias voltage and to read current in a circuit. I am using SCPI commands to operate the device remotely. I would like to use auto-range, but have found that the instrument does not up-range from the 200 pA range to the 2 nA range when I use "READ?" to trigger a measurement. However, the instrument completes the correct transitions for other ranges when using "READ?".

    I can get the 6517B to up-range from 200 pA range to the 2 nA range by re-issuing "CONF:CURR" (or "MEAS?", but "meas" works because it includes "conf"). This is after the instrument has been configured for a current measurement (i.e., querying "conf?" would return "curr:dc"), and it needs to be done every time I want to get out of the 200 pA range. I know that using "conf" performs a number of actions, and ideally I do not want to re-do all of these every single time I take a reading - there must be a more efficient way.

    How can I configure my instrument to properly use auto-ranging for the current measurement? I've checked that auto-range is enabled, and that the upper range limit for auto-range is 20 mA.

    Steps to repeat issue
    ---
    I am using the GPIB interface with a GPIB-Ethernet adapter, and the readings I obtain are the same as those shown on the device's front panel.

    1. Setup
    netcat -v 192.168.0.98 1234
    Connection to 192.168.0.98 1234 port [tcp/*] succeeded!
    
    *IDN?
    KEITHLEY INSTRUMENTS INC.,MODEL 6517B,4584330,A14/700x
    
    *rst
    conf:curr
    form:elem read,unit,vso,stat
    syst:zch off
    sour:volt 25
    outp on
    2. Checking configuration, auto-range, and range limits:
    conf?
    "CURR:DC"
    
    sens:curr:rang:auto?
    1
    
    sens:curr:rang:auto:llim?
    2.0000000E-11
    
    sens:curr:rang:auto:ulim?
    2.0000000E-02
    
    sens:curr:rang:upp?
    2.0000000E-02
    
    3. Measuring using "read?"  in the 200 pA range works as expected:
    read?
    +143.0885E-12NADC,+0025.000Vsrc
    read?
    +141.1126E-12NADC,+0025.000Vsrc
    
    sens:curr:rang:upp?
    2.0000000E-10
    
    4. This is where the problem is: increasing the voltage in the system for an expected current of roughly 250 pA. Now, measuring using "read?" does not give me the expected current, but instead gives me ~209 pA (the maximum allowed in the 200pA range). Auto-range is still enabled, but the measurement range did not increase. The voltage I physically measure across the source is 35V as expected. The status flag is still 'N' for normal, and shows no indication of overflow.
    sour:volt 35
    
    read?
    +208.8394E-12NADC,+0035.000Vsrc
    read?
    +208.4471E-12NADC,+0035.000Vsrc
    
    sens:curr:rang:upp?
    2.0000000E-10
    sens:curr:rang:auto?
    1
    sens:curr:rang:auto:ulim?
    2.0000000E-02
    5. After I send a "meas?", I get readings of around 250 pA as expected. I can see that the measurement range has been increased, and "read?" will now continue to give me 250 pA as expected.
    meas?
    +0.241637E-09NADC,+0035.000Vsrc
    
    read?
    +0.249885E-09NADC,+0035.000Vsrc
    
    sens:curr:rang:upp?
    2.0000000E-09
    
    5. When increasing the current further, up-ranges occur as expected.
    sour:volt 52
    read?
    +021.0036E-09NADC,+0052.000Vsrc
    
    sens:curr:rang:upp?
    2.0000000E-07
    6. If I bring the current back down to the 200 pA range, and then back up to the 2 nA range again, the instrument does not up-range until I issue a "meas?" command, as before. I tried using 35 V (expected 250 pA) and 40 V (expected 330 pA) - neither caused the 6517B to uprange.
    sour:volt 25
    read?
    +143.4189E-12NADC,+0025.000Vsrc
    
    sens:curr:rang:upp?
    2.0000000E-10
    
    sour:volt 35
    read?
    +208.3761E-12NADC,+0035.000Vsrc
    
    sour:volt 40
    read?
    +208.2913E-12NADC,+0040.000Vsrc
    read?
    +208.3752E-12NADC,+0040.000Vsrc
    
    sens:curr:rang:upp?
    2.0000000E-10
    
    meas?
    +0.333612E-09NADC,+0040.000Vsrc
    
    sens:curr:rang:upp?
    2.0000000E-09
    
    7. The difference between "read?" and "meas?" is that "meas" issues "abor", "conf:curr", and then "read?". So, which of the two extra commands helped? conf:curr is the one that makes it work:
    sour:volt 35
    read?
    +209.2242E-12NADC,+0035.000Vsrc
    read?
    +209.3727E-12NADC,+0035.000Vsrc
    
    ABOR
    read?
    +209.8183E-12NADC,+0035.000Vsrc
    read?
    +209.7916E-12NADC,+0035.000Vsrc
    
    CONF:CURR
    read?
    +0.255592E-09NADC,+0035.000Vsrc
    

    I had this same issue two weeks ago, and it went away without any conscious change on my part. However, today it is back again and is consistently repeatable with these steps. I always use *rst so that my instrument settings are consistent - I'm not sure why this issue went away in the past, why it is back, or why it is occurring at all.

    Thanks in advance.