Voltage sweep and measure current for Keithley 2400

Dear All
Hello,
anybody can help me?
In spite of nearlly10 days i am searchig to find any labview 2010 program for voltage sweep and measure current that works with RS-232, i has not able finde anything exept some exapmle that read single and multiple data. I has tried to learm labview and changed some prorgram from gpib to RS-232 but i couldn't.
In another attempt i find a good "votltage sweep and measure current" VI that work with RS-232 in labview 5.1.1. i converted it to 2008 but it need to old driver (ke24xx.dll) and dont work in my labview 2010 and I could't find old driver.
in these 10 days, my project on thesis has been stopped and i couldn't do anything for our keithley.
Please helpe...
in following i attached these files:
1-first it is voltage sweep that works with GPIB
2-Vi that i change gpib port to visa (rs232) that i don't know why it dosen't work.
3-it is Vi related to "votltage sweep and measure current" that works with RS-232 but need to old dirver so i can not use it.
4-SubVi needed to run program of 3 (but there is no driver for these subVIs) has been atached in reply post of this post
if any body has this program ("votltage sweep and measure current" that work rs-232) please send for me
thanks in advances.
Solved!
Go to Solution.
Attachments:
24xx Swp-V Meas-I gpib.llb ‏373 KB
modifi- arash-24xx Swp-V Meas-I - VISA oNLY.llb ‏172 KB
I V new2.vi ‏103 KB

The first time you asked this exact same question, you were given the way to get the driver and told that one of the examples does exactly what you want to do. You have chosen to disreregard this and pursue other options for these close to 10 days. If your thesis is stalled, that is really your own fault for not listening to the answers you were given. I have no idea why you would do this but I would suggest you go back to the original thread, reread it. and if you want further help, explain what the problem with the NI driver is.

Similar Messages

  • Setting currency and measurement unit for a field in an ALV report

    Plz give sample code to set currency and measurement unit for a field in an ALV report

    dear friend
    i am seanding you
    the display form
    if you need select form
    and process form also pls keep in touch.
    if help full rewards are expecting.
    yours
    vivek
    FORM build_field_catalog .
      DATA: w_dthigh(10).
      CLEAR fcat.
      fcat-fieldname = 'VBELN'.
      fcat-outputlen = 10.
      fcat-seltext_s = 'COMMERCIAL INVOICE'.
      fcat-seltext_m = 'Commercial Invoice'.
      fcat-seltext_l = 'COMMERCIAL INVOICE'.
      fcat-ddictxt = 'M'.
      fcat-inttype = 'C'.
      fcat-datatype = 'CHAR'.
      fcat-key = 'X'.
      fcat-hotspot = 'X'.
      APPEND fcat.
      CLEAR fcat.
      fcat-fieldname = 'EXNUM'.
      fcat-outputlen = 10.
      fcat-seltext_s = 'EXCISE INVOICE'.
      fcat-seltext_m = 'Excise Invoice'.
      fcat-seltext_l = 'EXCISE INVOICE'.
      fcat-ddictxt = 'M'.
      fcat-inttype = 'C'.
      fcat-datatype = 'CHAR'.
      fcat-hotspot = 'X'.
      APPEND fcat.
      CLEAR fcat.
      fcat-fieldname = 'EXDAT'.
      fcat-outputlen = 10.
      fcat-seltext_s = 'EXCISE DATE'.
      fcat-seltext_m = 'Excise Date'.
      fcat-seltext_l = 'EXCISE DATE'.
      fcat-ddictxt = 'M'.
      fcat-inttype = 'D'.
      fcat-datatype = 'DATS'.
      APPEND fcat.
      CLEAR fcat.
      fcat-fieldname = 'NAME1'.
      fcat-outputlen = 30.
      fcat-seltext_s = 'CUSTOMER'.
      fcat-seltext_m = 'Customer'.
      fcat-seltext_l = 'CUSTOMER'.
      fcat-ddictxt = 'M'.
      fcat-inttype = 'C'.
      fcat-datatype = 'CHAR'.
      fcat-lowercase = 'X'.
      APPEND fcat.
      CLEAR fcat.
      fcat-fieldname = 'ZZPD'.
      fcat-outputlen = 15.
      fcat-seltext_s = 'COUNTRY'.
      fcat-seltext_m = 'COUNTRY'.
      fcat-seltext_l = 'COUNTRY'.
      fcat-ddictxt = 'M'.
      fcat-inttype = 'C'.
      fcat-datatype = 'CHAR'.
      fcat-lowercase = 'X'.
      APPEND fcat.
      CLEAR fcat.
      fcat-fieldname = 'WERKS'.
      fcat-outputlen = 4.
      fcat-seltext_s = 'PLANT'.
      fcat-seltext_m = 'Plant'.
      fcat-seltext_l = 'PLANT'.
      fcat-ddictxt = 'M'.
      fcat-inttype = 'C'.
      fcat-datatype = 'CHAR'.
      fcat-key = 'X'.
      APPEND fcat.
      CLEAR fcat.
      fcat-fieldname = 'ARKTX'.
      fcat-outputlen = 40.
      fcat-seltext_s = 'MATERIAL DESCRIPTION'.
      fcat-seltext_m = 'Material Description'.
      fcat-seltext_l = 'MATERIAL DESCRIPTION'.
      fcat-ddictxt = 'M'.
      fcat-inttype = 'C'.
      fcat-datatype = 'CHAR'.
      fcat-lowercase = 'X'.
      APPEND fcat.
      CLEAR fcat.
      fcat-fieldname = 'FKART'.
      fcat-outputlen = 4.
      fcat-seltext_s = 'Billing type'.
      fcat-seltext_m = 'Billing type'.
      fcat-seltext_l = 'Billing type'.
      fcat-ddictxt = 'M'.
      fcat-inttype = 'C'.
      fcat-datatype = 'CHAR'.
      fcat-key = 'X'.
      APPEND fcat.
      CLEAR fcat.
      fcat-fieldname = 'INCO1'.
      fcat-outputlen = 5.
      fcat-seltext_s = 'INCO TERMS'.
      fcat-seltext_m = 'INCO TERMS'.
      fcat-seltext_l = 'INCO TERMS'.
      fcat-ddictxt = 'M'.
      fcat-inttype = 'C'.
      fcat-datatype = 'CHAR'.
      APPEND fcat.
      CLEAR fcat.
      fcat-fieldname = 'INCO2'.
      fcat-outputlen = 10.
      fcat-seltext_s = 'INCO TERMS DES'.
      fcat-seltext_m = 'INCO TERMS DES'.
      fcat-seltext_l = 'INCO TERMS DES'.
      fcat-ddictxt = 'M'.
      fcat-inttype = 'C'.
      fcat-datatype = 'CHAR'.
      APPEND fcat.
    CLEAR fcat.
    fcat-fieldname = 'FKIMG'.
    fcat-outputlen = 14.
    fcat-seltext_s = 'QUANTITY'.
    fcat-seltext_m = 'Quantity'.
    fcat-seltext_l = 'QUANTITY'.
    fcat-ddictxt = 'M'.
    fcat-inttype = 'P'.
    fcat-datatype = 'QUAN'.
    APPEND fcat.
      CLEAR fcat.
      fcat-fieldname = 'FKLMG'.
      fcat-outputlen = 10.
      fcat-seltext_s = 'QUANTITY'.
      fcat-seltext_m = 'QUANTITY'.
      fcat-seltext_l = 'QUANTITY'.
      fcat-ddictxt = 'M'.
      fcat-inttype = 'P'.
      fcat-datatype = 'QUAN'.
      APPEND fcat.
      CLEAR fcat.
      fcat-fieldname = 'MEINS'.
      fcat-outputlen = 5.
      fcat-seltext_s = 'UNIT'.
      fcat-seltext_m = 'UNIT'.
      fcat-seltext_l = 'UNIT'.
      fcat-ddictxt = 'M'.
      fcat-inttype = 'C'.
      fcat-datatype = 'CHAR'.
      APPEND fcat.
      CLEAR fcat.
      fcat-fieldname = 'KBETR'.
      fcat-outputlen = 8.
      fcat-seltext_s = 'RATE'.
      fcat-seltext_m = 'Rate'.
      fcat-seltext_l = 'RATE'.
      fcat-ddictxt = 'M'.
      fcat-inttype = 'P'.
      fcat-datatype = 'CURR'.
      APPEND fcat.
      CLEAR fcat.
      fcat-fieldname = 'NSR'.
      fcat-outputlen = 8.
      fcat-seltext_s = 'Exmill'.
      fcat-seltext_m = 'Exmill'.
      fcat-seltext_l = 'Exmill'.
      fcat-ddictxt = 'M'.
      fcat-inttype = 'P'.
      fcat-datatype = 'CURR'.
      APPEND fcat.
      CLEAR fcat.
      fcat-fieldname = 'KURSK'.
      fcat-outputlen = 8.
      fcat-seltext_s = 'EXCHANGE RATE'.
      fcat-seltext_m = 'Exchange Rate'.
      fcat-seltext_l = 'Exchange Rate'.
      fcat-ddictxt = 'M'.
      fcat-inttype = 'P'.
      fcat-datatype = 'CURR'.
      APPEND fcat.
      CLEAR fcat.
      fcat-fieldname = 'WAERK'.
      fcat-outputlen = 5.
      fcat-seltext_s = 'CURRENCY'.
      fcat-seltext_m = 'Currency'.
      fcat-seltext_l = 'CURRENCY'.
      fcat-ddictxt = 'M'.
      fcat-inttype = 'C'.
      fcat-datatype = 'CUKY'.
      APPEND fcat.
      CLEAR fcat.
      fcat-fieldname = 'LCURR1'.
      fcat-outputlen = 14.
      fcat-seltext_s = 'GROSS AMT'.
      fcat-seltext_m = 'Gross Amt'.
      fcat-seltext_l = 'GROSS AMT'.
      fcat-ddictxt = 'L'.
      fcat-inttype = 'P'.
      fcat-datatype = 'CURR'.
    fcat-do_sum = 'X'.
      APPEND fcat.
    ================================= *****************
      fheader-typ = 'H'.
      SELECT SINGLE butxt
        FROM t001
        INTO fheader-info
       WHERE bukrs EQ '1000'.
      APPEND fheader.
      CLEAR fheader.
      fheader-typ = 'H'.
      fheader-info = 'Daily Shipments For Exp'.
      APPEND fheader.
      CLEAR fheader.
    Plant
      SORT s_werks BY low.
      READ TABLE s_werks INDEX 1.
      fheader-typ = 'S'.
      WRITE s_werks-low TO fheader-key.
      SORT s_werks BY high DESCENDING.
      READ TABLE s_werks INDEX 1.
      IF s_werks-high NE space.
        CONCATENATE fheader-key 'TO' s_werks-high INTO fheader-info
                                SEPARATED BY space.
      ELSE.
        WRITE fheader-key TO fheader-info.
      ENDIF.
      CLEAR fheader-key.
      fheader-key = 'PLANT : '.
      APPEND fheader.
      CLEAR fheader.
    Billing Typ
    SORT S_FKART BY LOW.
    READ TABLE S_FKART INDEX 1.
    FHEADER-TYP = 'S'.
    WRITE S_FKART-LOW TO FHEADER-KEY.
    SORT S_FKART BY HIGH DESCENDING.
    READ TABLE S_FKART INDEX 1.
    IF S_FKART-HIGH NE SPACE.
    CONCATENATE FHEADER-KEY 'TO' S_FKART-HIGH INTO FHEADER-INFO
                             SEPARATED BY SPACE.
    ELSE.
       WRITE FHEADER-KEY TO FHEADER-INFO.
    ENDIF.
    CLEAR FHEADER-KEY.
    FHEADER-KEY = 'DOCUMENT TYPE : '.
    APPEND FHEADER.
    CLEAR FHEADER.
    Date...
      fheader-typ = 'S'.
    FHEADER-KEY = S_FKDAT-LOW.
      WRITE s_fkdat-low  TO fheader-key.
      WRITE s_fkdat-high TO w_dthigh.
      CONCATENATE fheader-key 'TO' w_dthigh INTO fheader-info
                              SEPARATED BY space.
      CLEAR fheader-key.
      fheader-key = 'PERIOD : '.
      APPEND fheader.
      CLEAR fheader.
      CALL FUNCTION 'REUSE_ALV_EVENTS_GET'
        EXPORTING
          i_list_type     = 0
        IMPORTING
          et_events       = fevents[]
        EXCEPTIONS
          list_type_wrong = 1
          OTHERS          = 2.
      READ TABLE fevents WITH KEY name = 'TOP_OF_PAGE'.
      IF sy-subrc = 0.
        fevents-form = 'TOPOFPAGE'.
        MODIFY fevents INDEX sy-tabix.
        CLEAR fevents.
      ENDIF.
      rptname = sy-repid.
      CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'
                        EXPORTING
                          i_callback_program                = rptname
                          it_fieldcat                       = fcat[]
                          i_default                         = 'S'
                          it_events                         = fevents[]
                          i_save                            = 'X'
                         TABLES
                           t_outtab                          = it_output[]
                      EXCEPTIONS
                        PROGRAM_ERROR                     = 1
                        OTHERS                            = 2
    ENDFORM.                    " BUILD_FIELD_CATALOG

  • Conversion of Sweep and Measure vi from 2011 - 2010

    Trying to build a VI similar to this so I want to use it as a guide but we only have v2010 not 2011. Any conversion will help!!<br><br><a href="https://decibel.ni.com/content/docs/DOC-17610" target="_blank">https://decibel.ni.com/content/docs/DOC-17610</a>

    The diagram is provided right on that page, so you could just re-create it, as it's not that complicated. It would probably have taken you about 20 minutes, vs the 2 days you had to wait for this conversion.
    Attachments:
    Source DC Current and Measure Sweep.vi ‏39 KB

  • Keithley 6517b Sweep and measurement

    Hello everyone. I want to use Keithley6517b to perfrom a sweep.
    Instruments and method: Keithely 6517 b, NIGPIB-USB-HS, Labview 7.0, Windows xp, using 2400 SWV linear stair with DCV. gpib.vi.
    Unfortunately, 6517b always shows errormessages when click setup DCV:
    Error code=-113 Undefined header;
    Error code=-102 Syntax error.
    What should I do?
    If I use test_seq.vi from NI website, othererrors were also found in front planel:
    Error out 6 GPIB reading in ….
    What is the problem?
    Thanks a lot.

    Dear alachu,
    I replied to your other thread here, so please refer to that.
    Best regards,
    Yusuke
    NI Japan 
    日本ナショナルインスツルメンツ株式会社 技術部 巳波裕介
    Yusuke Minami, Applications Engineering, National Instruments Japan
    技術サポートウェブページ: http://www.ni.com/support/ja
    お問い合わせフリーダイヤル: 0120-527196

  • Keithley 2400 and 2182 V-I measurements

    Can anyone help me with a program in Labview regarding V-I measurements with a Keithley 2400 source meter and 2182 nanovoltmeter?
    Thanks!

    Hi danimarconi,
    "anyone" will help you as soon as you ask specific questions!
    Tell us your problems, attach your VIs and you will get help!
    Best regards,
    GerdW
    CLAD, using 2009SP1 + LV2011SP1 + LV2014SP1 on WinXP+Win7+cRIO
    Kudos are welcome

  • Labview VI's for keithley 617 meter

    Respected Sir,
    Now I m trying  to interface keithley 617 electrometer using Labview and GPIB card. For that we have created code. Using this we want to measure continuous readings form 617.
    We are getting reading from 617 meter. But we want to measure current for that we have connected 1 kilo ohm resistor to the device using BNC cable(According to Keithley manual) voltage range is -1 to 1 increment  of the order of .1 means after -1 automatically labview must take -.9 next -.8 next -.7 till up to 1 after that it must stop collecting data.
    I m going to attach my code. Please try to solve according to our need.
    With regards
    Shridhar
    Attachments:
    s1Keithley 617.vi ‏82 KB

    Hi Shridhar,
    Good afternoon and I hope your well today.
    Are you using the VIs which I found here, at ni.com/ident
    Keithley ke617 Meter
    http://sine.ni.com/apps/utf8/niid_web_display.download_page?p_id_guid=E3B19B3E94A2659CE034080020E748...
    The VI titled  Keithley 617 array.VI setups/reads/close the take for 100 measurements - for one setting.
    Now I have seen for other instrument drivers they have coded a sweep - which is what you're after.
    The process to achieve this is loop through this code, but changing the voltage range and hence reading back different data. Have you got code that updates the voltage range? 
    I am sorry but I can't code in LabVIEW 5, 
    Hope this helps, 
    Kind Regards
    James Hillman
    Applications Engineer 2008 to 2009 National Instruments UK & Ireland
    Loughborough University UK - 2006 to 2011
    Remember Kudos those who help!

  • IV characteristic using Keithley 2400, Labview IVI driver

    Hi...
    I'm Pradeep. I am trying to build a LV program for measuring LjV (luminance-current density-voltage) Characteristic of LED using while loop. I am in the first part of building a program for IV characteristic. I am using Keithley 2400 (connected through PCI-GPIB) for sourcing Voltage and measure Current through the device. I use IVI driver from Keithley website (2400-854B01) in Labview 2010.
    I have made a program (please find it in attachments), while running it shows an error code -110. I fear that the voltage that I want to send to 2400 is not communicated properly. Can someone please help in finding out where I made a mistake. I'm struck for two days. I have used Initialize, Configure SOurce DC, Enable Source, Configure Measurement, GPIB Write, Read and Close from the driver (though not sure of the order to be used)
    Please ignore the Luminance measurement in the LV program at 'XY graph' and at 'Write to Spreadsheet' which are for later use when I need to add a photodiode with Keithley 2000 DMM.
    (I did not do a structured learning of Labview. I have been learning from manuals and through discussion forums for a couple of weeks. Please pardon my ignorance)
    Attachments:
    LjV char.vi ‏22 KB

    duplicate

  • Keithley 2400 VISA driver limited resolution

    Hi,
    I have a Keithley 2400 sourcemeter, what I use in the +-1mA range, as a current-source. This is the driving part of a PID control.
    I use the official VISA drivers, and everything is okey, except that, it seems I cannot use the specified resolution from LabView.
    In this low +-1 milliAmp range, the usable resolution is 50 nanoAmperes. In manual mode, everything is ok, I can set for example an output current to be:
    -0.245450 mAmperes.
    But when I use LabView with the Configure Output .vi from the official llvlib package (i attached it) it rounds for microAmps:
    For example the above double value will become: -0.245 mAmperes.
    This is really bad for my project, since I need the 50 nanoAmp resolution for the really fine control.
    Can someone help me?
    Thanks in advance!
    Solved!
    Go to Solution.
    Attachments:
    Configure Output.vi ‏18 KB

    Thanks very much!
    Now I learnt that, I should be always suspicious even with "official" libraries and drivers.
    Actually there are two LabView drivers for Keithley 2400, one from Keithley, it is an exe installer type, and the other from National Instruments. I became curious about this bug, and I checked the Keithley VISA drivers, they are okey, they use everywhere double precision variables. 
    But if you have a look at the NI Keithley 24XX.lvlib:VI Tree.vi, where is the full list for available VIs, there are many problems I think. At many places (voltage sensing, sourcing, etc) the programmer just used single precision variables to pass information.
    I think these problems should be reported toward NI, but I do not know what is the way to do this...

  • Minimum current for pxi-2529

    Hi All!I have the PXI-2529 Matrix, and I am planning to use it  in this way: I have a set of resistive sensors connected via matrix switchers to of DVMs  (see picture).I need some times (like 1-100 times per day) to change these connections. Here is the question: one of matrix parameters is minimum current and it is 10uA. I would like to understand what is the reason for this parameter? (is it leakage or something else), and is it mean that matrix will not work if DVM internal resistance will be enough big, and current throw matrix switchers will be less than 10uA?  
    Solved!
    Go to Solution.

    Hi! All! Sorry for long silence, it was time for holiday
    John S, aNItaB, Than You for answer and recomendations, I will think about 2530 and Digital Multimeters (In fact I have to use one our DVM, but in future I will need some other DVM). 
     After your answers I was still confused, I have not enough understand - what is the minimum current? And I have started my own investigation: I have made some experiments: I have serial connected amperemeter, load (10 kOhm) and with help several (from 1 to 10) 2529 switches I have connected power supply. I change voltage of power supply and measured current. So there is no any problem to pass current 10uA, and smaller like 1 uA. 
    After I star investigate the AGQ210A4H (it is relay used in Matrix) datasheet  (http://www.panasonic-electric-works.com/catalogues/downloads/relays/ds_61008_0000_en_gq.pdf) and some relay technical information from  AGQ210A4H manufacturer (Panasonic) http://www.panasonic-electric-works.com/peweu/en/downloads/ds_x61_en_relay_technical_information.pdf. Because probably this minimum current parameter has been take from relay datasheet.
    And it is said that  AGQ210A4H have a Min. switching capacity: 10μA 10 mV DC. And there is some explain about Minimum switching capability This value is a guideline as to the lowest possible level at which it will be possible for a low level load to allow switching.
    But this explanation only adds some confusion, because, what is the reason for minimum limitation of load? Because if we have a low load, the main idea, that its voltage can be enough big for compare with thermal EMF, and current will be limited with resistive of relays and resistors of connected circuits in case voltage source using is all scheme.
    After that I try to find "Min. switching capacity relay" in Google. And I have found this: http://answers.google.com/answers/threadview/id/519904.html Most interesting answer (it is similar to John S answer) - "...The current required to remove the oxide layer and establish a metal to metal contact and hence an electrical connection is also described as a wetting current..."  
    So here is the questions: 
    Is it meaning that minimum current specified in 2529 specification it is “wetting current” or sealing current (like here: http://en.wikipedia.org/wiki/Wetting_current)?  
    And what is the consequence of long using relay for connect DMM like voltmeter (over minimum current pass through the switchers)?
    Is it mean that after some years of such matrix using conductive oxide layer become enough big and I will lose the connection?
    Is this you try to explain me in the first post?
    Thank You!
    Message Edited by RangerOne on 01-04-2010 05:19 PM
    Message Edited by RangerOne on 01-04-2010 05:20 PM

  • SMU as Ammeter to Measure Current

    I would like to do something similar to what is discussed in the following thread using multiple channels of a PXI-4141 4-channel SMU:
    http://forums.ni.com/t5/Digital-Multimeters-DMMs-and/SMU-used-for-current-measurement/td-p/1297856
    I would like to understand the statement in the final post of that thread regarding burden voltage/shunt resistance. In my application, it is critical that I compensate for the presence of a shunt resistor when I take a current measurement. How do I determine what the effective shunt resistance or the effective burden voltage might be when using the current-measurement capabilities of the SMU?
    Thanks!
    Jeff
    Jeffrey Zola

    Hey Jeff,
    Thanks for sharing the diagram with us.  I think I understand this much better now.  The pinouts for the front-end connector do have separate paths for each Lo but the 414x SMUs have these all these connected together internally.  The Sense LO leads however are separated out per channel allowing for differential measurement remotely thru the sense leads.
    Regarding the voltage drop when using the SMU, there are a combination of factors (some already discussed) that will affect how much voltage drop will be seen in the system overall, including:
    1. Thermal EMF
    The thermal EMF for the 2530 is spec'd at < 50 uV in 1-wire mode, however this should be less in 2-wire mode as the much of the EMF from one wire is cancelled out by the other wire.  Did you have a chance to look at the thermal EMFs in the matrix configuration yet?  I would expect this to be much smaller than 50 uV but if you have some measurements, please feel free to share them with us.
    2. I*R drops in cabling and switches
    The resistance from channel to column is spec'd at <2 ohms.  Since the SMU would be taking up two columns, I would double the resistance to 4 and then conservatively estimate the total wire resistance to be 6 ohms, giving us a total of 10 ohms, conservatively.  At 10 uA, we have the potential of 100 uV of voltage drop.  
    3. Offset output/measurement accuracy of SMU itself
    For the 4141, this is spec'd at +/- 600 uV when self-cal has been performed in the last 24 hours, and the temperature hasn't changed more than +/- 5 C from self-cal; the 4140 is spec'd at +/- 5 mV when using the same time and temperature conditions.  The 4141 only, has a +/- 1 degree spec of +/-150 uV, which is the offset accuracy I mentioned in my previous post.  You can look at the section titled, Voltage Programming and Measurements Accuracy/Resolution in the spec for more information there.
    4, SMU voltage load regulation
    Voltage load regulation tells us how much the output voltage will change based on the output current of the SMU when in local sense.  The spec for the 4140/4141 is 10 uV per mA of output current, so therefore, this is negligible when we're talking 10 uA or less (< ~100 nV)
    Based on these numbers I provided above, we're looking at a conservative estimated system burden voltage upward of +/-300uV for the 4141 and +/- 5.15 mV for the 4140 when sourcing 10 uA. I'd expect these numbers to be much less but this is just a first-pass estimate.
    Keep in mind that the offset voltage (#3) will be the smallest right after performing self-cal, so a smaller offset error can be assumed if performing self-cal more frequently than 24 hours.
    To reduce the voltage drop created by #2 and #4, you can use remote sense to compensate out the voltage drop in your wires, switches and the resistance internal to the SMU itself.  This of course would require 2 extra columns and 2x number of rows to route the extra signal paths.  What is the expected voltage across your DUT?  Sometimes it's useful to look at the ratio of the burden voltage to the DUT voltage so see how great of an impact the burden voltage will have on the overall performance.
    Do you have a target for the overall burden voltage you would like to hit?  Is 300 uV or 5.15 mV too large for your application?  Generally, burden voltages on DMMs will be on the order of 100 mV to 1 V, so an SMU will definitely give you an advantage in that regard. Also, another feature on the 4141 only that may be useful for your application, is that you can have a programmable output resistance.  I'm not sure if this would work for your application, but I saw that you were using dummy resistors to simulate the shunt and the 4141 may be able to simplify this for you.  Perhaps you could cut your column count in half by reprogramming the output resistance from 0 ohms to x ohms?  Just a thought but, wanted to share with you just in case.
    Let us know what you find and we'd be happy to help.
    Thanks!
    Brandon G
    National Instruments
    Precision DC Hardware Engineer

  • Programmed vs measured voltage on Keithley 2400 and other things

    Hello everyone,
    I have two issues with our Keithley 2400, which we control through Labview, and I would be very grateful for some help/advice. The issues are listed below:
    1) We use the 2400 for 4-point probe measurements, so we plot graphs of current vs voltage to get the resistance from the slope of the curve. However, when we look up the data generated during a measurement, the voltage sweep values that we program often, but not always, do not match the measured voltage values. For example, what was meant to be 1 V, might actually end up being 1.2 V or maybe 0.8 V, this can be both positive and negative with respect to the programmed values and is not constant. This also leads to the fact that our curves, although straight (so Ohmic conductor), do not go through the (0, 0) point on the graph.
    2) Second problem is that we would like to determine what is the time between successive measurements in a voltage sweep. We have tried some example vi files that by default come with the Labview, e.g. Keithley 24XX Read Multiple - SW Trigger or Keithley 24XX Read Multiple. If someone knew how to find the time separation, then we would be grateful. We only have control over the number of invididual readings taken and the timeout, which we guess is the maximum time allowed for the measurement.
    Many thanks!

    Good Afternoon PiotrW,
    1. Could you please provide the code you are using to program the voltage sweeps? 
    2. You could use the timestamp output of the Keithley 24XX.lvlib:Read (Multiple Points).vi to allow you to find the time difference between successive samples. It should be a simple case of subtracting succesive measurements from each other to find the time difference between data points.
    Regards,
    Al 
    Regards,
    Al C
    National Instruments,
    Application Engineer

  • Keithley 2636 measures current and 2400 offers a 3 volt pulse synchronized in a labview program

    Hello,
    I am not very familiar with labview and I neet a program to realize keithley 2636 measuring current and 2400 offering a 3 volt pulse synchronized.
    It means that when 2636 measure one times, 2400 give a pulse. When 2636 measure 100 times, 2400 offers 100 pulses synchronized.
    The Channel A of 2636 is used for measuring and Channel B is used for another works.
    The attatchment is the labview program I created and it can not be run synchronized.
    Thanks for your help!
    email:[email protected]
    Attachments:
    repeat04.vi ‏38 KB

    Hi Lin,
    I did not talk about a GPIB (or similar) cable to connect both devices with a PC, I did talk about the special cable for synchronizing both devices with each other called TriggerLink!
    Please read the user manual of your K2400, (chapter 11 on triggers, or figure 1-2 for a view of the rear panel). It describes the TriggerLink capabilities of Keithley devices!
    RTFM!
    Best regards,
    GerdW
    CLAD, using 2009SP1 + LV2011SP1 + LV2014SP1 on WinXP+Win7+cRIO
    Kudos are welcome

  • I'm having issues using labview to conduct a voltage sweep on the keithley 2400.

    I'm trying to pass sweeping voltage through a diode, and measure the resulting current in order to ensure its iv characterisitcs. I downloaded the instrument driver for the keitley, and then used the example sweep and acquire measurements vi, but i kep getting the following errors: 
    Instrument reports:
    -113,"Undefined header"
    -230,"Data corrupt or stale"
    -420,"Query UNTERMINATED"
    0,"No error"
    Complete call chain:
    Keithley 24XX.lvlib:Error Query.vi
    Keithley 24XX.lvlib:Read (Multiple Points).vi
    Keithley 24XX Output List and Acquire.vi
    Help!! thanks!

    Hi akam520,
    The 2400 Series SourceMeter User's Manual has more information on these errors. Please see page B-8: 
    http://research.physics.illinois.edu/bezryadin/labprotocol/Keithley2400Manual.pdf
    Error -113 "Undefined header" occurs when the command you sent to the instrument did not contain a recognizable command name. It's likely the syntax of one of your commands is wrong. It's possible that this command being incorrect is also propagating to cause the other errors you're seeing.
    Can you try stepping through your application to see when the error gets  thrown? If you can narrow down which call is throwing the error, it will be easier to compare this command against the user manual to ensure that you have the correct syntax.
    I hope this helps!
    Emily C
    Applications Engineer
    National Instruments

  • How to set the time difference between each data when sweeping voltage using keithley 2400

    Hello friends,
    I am using the sweep vi from Keithley in the SWEEP and Acquire measurement vi.I want to measure the voltage for every step and insert a delay in between every two data, so I need some delay between each I step.
    I am a starter to use Labview, thanks so much for your answers.
    Perry
    Solved!
    Go to Solution.
    Attachments:
    Keithley 24XX Sweep and Acquire Measurements.vi ‏26 KB

    As Dennis said, if you're using the built-in sweep function, you'll have to check the manual. See Section 10-16 (That's section 10 page 16, not sections 10 though 16) of the Keithley 2400 User Manual.
    The Keithley 24xx series has a measurement speed in units called PLC (Power Line Cycles). The default speed is 1PLC, meaning a measurement is taken every 1 power line cycle, or 1/60th of a second (16.67ms). 24XX's can go from 0.01 PLC (every 0.16ms) to 10 PLC (every 166.6ms). The faster you measure, the lower precision you get.
    To set this value programmatically, the command is
    ENSe:CURRent:NPLCycles <n>
    ENSe:VOLTage:NPLCycles <n>
    depending on what you're sensing and where <n> is the number of PLCs from 0.01 to 10.
    Another factor that will determine the time between data points is the SDM cycle. These are more complicated, look at your Keithley user manual for more information. Look at Section 6 and Section 11 for more info.
    Note:
    PLC times are based on a US cycle of 60Hz.

  • Swap DC and ground voltages of Keithley 2400 meter

    Hi
    I am using Keithley 2400 source meter to apply voltage to my chip. The test that I am performing
    has the following requirements:
    In the first stage, I apply DC voltage (from source meter) on one pad (Pad-A) of the chip and ground
    (from source meter) on the other pad (Pad - B) and take some capacitance measurements.
    In the second stage, I need to swap these voltages i.e. DC voltage to Pad-B and ground to Pad-A.
    I am already using a labview code to apply the voltage and make the capacitance measurements.
    Is it possible by any chance that I can control the swapping with the labview code automatically,
    without having to swap them manually?
    Thank you for the help

    Is it important to switch the GROUND? 
    Or do you only need to switch the polarity of the voltage between your pads?
    Sometimes it makes a BIG difference
    Greetings from Germany
    Henrik
    LV since v3.1
    “ground” is a convenient fantasy
    '˙˙˙˙uıɐƃɐ lɐıp puɐ °06 ǝuoɥd ɹnoʎ uɹnʇ ǝsɐǝld 'ʎɹɐuıƃɐɯı sı pǝlɐıp ǝʌɐɥ noʎ ɹǝqɯnu ǝɥʇ'

Maybe you are looking for