• RE: Update rate of K2450

    <span style="font-size:11pt;"><span style="line-height:107%;"><span style="font-family:Calibri,sans-serif;">If I understand, you want to sweep or source a series of voltage values but do it from a Loop on the PC side where you send a command for each source level.</span></span></span><br> <span style="font-size:11pt;"><span style="line-height:107%;"><span style="font-family:Calibri,sans-serif;">And if also obtaining measurements, from your loop you are also sending commands to cause a current measurement to occur.</span></span></span><br> <span style="font-size:11pt;"><span style="line-height:107%;"><span style="font-family:Calibri,sans-serif;">You will have overhead and possibly some timing variation by the loop-based approach.</span></span></span><br> <span style="font-size:11pt;"><span style="line-height:107%;"><span style="font-family:Calibri,sans-serif;">Using TSP command set and Python, I have this code that does the loop and obtains a measurement.</span></span></span><br> <span style="font-size:11pt;"><span style="line-height:107%;"><span style="font-family:Calibri,sans-serif;">The measurements are sent to PC at the end (one bus transfer).</span></span></span><br> <span style="font-size:11pt;"><span style="line-height:107%;"><span style="font-family:Calibri,sans-serif;">Duration at each source level is about 900usec. Scope shot image uploaded.</span></span></span><br> <br> <span style="font-size:11pt;"><span style="line-height:107%;"><span style="font-family:Calibri,sans-serif;">If I instead send each measurement one by one, the duration increases to about 3.6msec; I have set the integration rate to fastest and turned off autozero.</span></span></span><br> <br> <span style="font-size:11pt;"><span style="line-height:107%;"><span style="font-family:Calibri,sans-serif;">If you know source values ahead of time and can load them into a Source Config List, you can get faster operations.</span></span></span><br> <span style="font-size:11pt;"><span style="line-height:107%;"><span style="font-family:Calibri,sans-serif;">From datasheet for 2450, you can approach 1700 Hz Source-Measure rate at 0.01 NPLC.</span></span></span><br> <span style="font-size:11pt;"><span style="line-height:107%;"><span style="font-family:Calibri,sans-serif;">Look at the System Measurement Speeds table in datasheet (pg 10).</span></span></span> <pre class="linenums prettyprint">my_instr.write(&quot;reset()&quot;) my_instr.write(&quot;status.clear()&quot;) my_instr.write(&quot;errorqueue.clear()&quot;) MEAS_RANGE = 100e-3 cmd_list = [&quot;smu.source.func = smu.FUNC_DC_VOLTAGE&quot;, &#160; &#160; &#160; &#160; &#160; &#160; &quot;smu.source.autorange = smu.OFF&quot;, &#160; &#160; &#160; &#160; &#160; &#160; &quot;smu.source.range = 20&quot;, &#160; &#160; &#160; &#160; &#160; &#160; &quot;smu.source.ilimit.level = &quot; + str(MEAS_RANGE), &#160; &#160; &#160; &#160; &#160; &#160; &quot;smu.source.delay = 0&quot;, &#160; &#160; &#160; &#160; &#160; &#160; &quot;smu.source.autodelay = smu.OFF&quot;, &#160; &#160; &#160; &#160; &#160; &#160; &quot;smu.source.readback = smu.OFF&quot;, &#160; &#160; &#160; &#160; &#160; &#160; &quot;smu.measure.func = smu.FUNC_DC_CURRENT&quot;, &#160; &#160; &#160; &#160; &#160; &#160; &quot;smu.measure.autorange = smu.OFF&quot;, &#160; &#160; &#160; &#160; &#160; &#160; &quot;smu.measure.range = &quot; + str(MEAS_RANGE), &#160; &#160; &#160; &#160; &#160; &#160; &quot;smu.measure.nplc = 0.01&quot;, &#160; &#160; &#160; &#160; &#160; &#160; &quot;smu.measure.autozero.enable = smu.OFF&quot; &#160; &#160; &#160; &#160; &#160; &#160; ] &#160; &#160;&#160; for cmd in cmd_list: &#160; &#160; my_instr.write(cmd) &#160; &#160;&#160; &#160; &#160;&#160; #lets loop thru some source levels and measure speed with scope debug = 1 voltage_list = {} for i in range(0, 11): &#160; &#160; voltage_list[i] = i/10 print(voltage_list) &#160; &#160; &#160; &#160;&#160; my_instr.write(&quot;smu.source.output = smu.ON&quot;) for j in range(0,1): &#160; &#160; for i in range( 0 ,len(voltage_list)): &#160; &#160; &#160; &#160; my_instr.write(&quot;smu.source.level = &quot; + str(voltage_list[i])) &#160; &#160; &#160; &#160; my_instr.write(&quot;smu.measure.read()&quot;) &#160; #obtain a reading into the buffer &#160; &#160; &#160; &#160; #print(my_instr.query(&quot;print(smu.measure.read())&quot;)) &#160;# this will slow you down! &#160; &#160; &#160; &#160;&#160; &#160; &#160; &#160; &#160; &#160; &#160; #all done, turn output off my_instr.write(&quot;smu.source.level = 0&quot;) my_instr.write(&quot;smu.source.output = smu.OFF&quot;) #bring the data back from the buffer print(my_instr.query(&quot;printbuffer(1, defbuffer1.n, defbuffer1.readings)&quot;)) </pre>
  • RE: 2600-PCT-2B Parametric Curve Tracer SPECIFICATION

    The 2600-PCT-2B contains two SourceMeter models: &#160;2651A and 2636B.  Many (not all) of the specs you seek will be in the datasheet for the individual SMUs.  I encourage you to contact your closest sales office and discuss your application and concerns.
  • RE: Resistance below zero

    Is the sample in any sort of shielded test fixture?<br> <br> Double check your connections.&#160; Are you making use of meter-connect to connect LO of Amps meter to the LO of the V-Source?<br> <br> When was your electrometer last calibrated? Perhaps try with an axial leaded high ohms device as practice and to raise confidence in function of the instrument.<br> <br> There are many instructional videos on the 6517B web page.<br> Try this one:&#160;&#160;https://www.tek.com/en/video/how-to/how-to-make-a-resistance-measurement-using-the-model-6517b-electrometer-with-auto-and-manual-modes
  • RE: How should I do if I want to get current noise power spectrum density (pA/sqrt(Hz))?

    Check out this application note pertaining to our 4200A-SCS and 1/f noise measurements:<br> <a href="https://www.tek.com/en/documents/application-note/flicker-noise-measurements-using-the-4200a-scs-parameter-analyzer">1/F Noise Measurement with 4200A-SCS</a>
  • RE: Reading and printing DMM buffer using Python 3.11.3

    Here is some Python code that might more in line with what you are trying to do.<br> I will upload an image of the outputs I get.&#160; I have been feeding a 500Hz sine wave to the DMM7510. <pre class="linenums prettyprint">debug = 1 NUM_SAMPLES = 100 my_instr.write('*RST') my_instr.write(':TRACe:MAKE &quot;voltDigBuffer&quot;,' + str(NUM_SAMPLES)) my_instr.write(':DIG:FUNC &quot;VOLTage&quot;') my_instr.write(':SENS:DIG:VOLT:INP AUTO') my_instr.write(':SENS:DIG:VOLT:RANG 10') my_instr.write(':SENS:DIG:VOLT:SRATE 5000') &#160; #5KHz sample rate my_instr.write(':SENS:DIG:VOLT:APER AUTO') my_instr.write(':SENS:DIG:COUN ' + str(NUM_SAMPLES)) my_instr.write(':TRAC:POIN ' + str(NUM_SAMPLES)) my_instr.write(':TRAC:CLE') my_instr.write(':TRAC:TRIG:DIG &quot;voltDigBuffer&quot;') # wait for done before asking for the data time.sleep(1) &#160;#pause before asking for data if debug == 1: &#160; &#160; my_instr.write(':TRAC:DATA? 95, 100, &quot;voltDigBuffer&quot;, REL, READ') &#160; &#160; print(&quot;****** response to last five points query *************&quot;) &#160; &#160; print(my_instr.read()) #split, parse, etc. &quot;&quot;&quot; raw_data will be comma delimted string of&#160; timestamp, reading, timestamp, reading,... etc. &quot;&quot;&quot; #ask for all the data #TODO: &#160;adjust for NUM_SAMPLES raw_data = my_instr.query(':TRAC:DATA? 1, 100, &quot;voltDigBuffer&quot;, REL, READ') raw_data_array = raw_data.split(',') timestamps = [] Digitized_V = [] # use step of 2 because there are two elements per reading for i in range(0, len(raw_data_array), 2): &#160; &#160; if len(raw_data_array[i]) &gt; 0: &#160; &#160; &#160; &#160; timestamps.append(float(raw_data_array[i])) &#160; &#160; &#160; &#160; Digitized_V.append(float(raw_data_array[i+1])) if debug == 1: &#160; &#160; print(&quot;******* Timestamps *******************&quot;) &#160; &#160; &#160; &#160; &#160; &#160; print(timestamps) &#160; &#160; print(&quot;******** Voltage ******************&quot;) &#160; &#160; print(Digitized_V) &#160; &#160; print(&quot;**************************&quot;) &#160; &#160; print() #graph it plt.autoscale(True, True, True) #plt.axis([0, 0.2, 0, 50e-6]) plt.plot(timestamps, Digitized_V, 'c--') plt.show() </pre>
  • RE: Reading and printing DMM buffer using Python 3.11.3

    In general, when the command you send ends with the question mark (a query type command), you should immediately follow with a read to pull the response to the query command off the output queue.<br> <br> You are sending more than one command in a row.&#160; The first time you read, you will get the response from the first query command, not from the most recent.<br> <br> I'll attach a screen image of your code and the outputs but using a read after each query command.
  • RE: Connecting a Keithley SourceMeter to a PC using puTTY

    Can you successfully ping the IP address of the instrument?<br> What's the IP address of the computer from which you are trying this?<br> <br> From PuTTY, is straightforward to get a Telnet session on port 23.&#160; See attached document.
  • RE: How to Control CC/CV on the TP3005DM

    The&#160;TP3005DM is not a model I recognize. &#160;A google search shows it as made by company “TekPower” not Tektronix.<br> <br> Consider our various single channel models from the 2200 series.<br> https://www.tek.com/en/products/keithley/dc-power-supplies/2200-dc-power-supply<br> &#160;
  • RE: Oscilloscope ZTEC 450PCI not working with KITE9.1 SP6 (WIN 7)

    Are you moving the scope card between the two systems?&#160; Or do they both have a scope card and just the one running KITE 9.1 is not working?<br> <br> If you are attempting to move the card between the two systems, it will not work.&#160; The expected cards of the configuration is not designed to be modified in the field.&#160; So if the KITE 9.1 system never had a scope card, it will not be accepted by the KCON config.<br> <br> Please clarify.
  • RE: 4200 video output failure

    Ayoub,<br> <br> Your post seem off topic, so I created a different thread for managing 4200A-CVIV switch.&#160;&#160;<br> https://my.tek.com/tektalk/semi-para-analyzer/7654133b-38da-ed11-a81c-00224809317b<br> <br> Andrea<br> &#160;