Skip to content

Keithley4200#

A class to interface a Keithley 4200 parameter analyzer via Python. This class inherits from MeasmaticDevice.


method adelay(numberOfPoints: int, delays: list[float])#

This command specifies an array of delay points to use with asweepX command calls.

Parameters#

Name Description
numberOfPoints The number of separate delay points defined in the array
delays The name of the array defining the delay points; this is a single-dimension

Example#

ki = measmatic.get_device('device-keithley-4200')
ki.adelay(3, [0.0, 0.1, 0.2])

method arb_array(instrId: int, ch: int, TimePerPt: float, length: int, levelArr: list[float], fname: str)#

Creates an arbitrary waveform from an array of levels with a constant time per point and stores it under the given file name.

Parameters#

Name Description
instrId The instrument identification code of the instrument, as returned by getinstid.
ch The channel number of the pulse card.
TimePerPt The time per point in seconds.
length The number of points in the array.
levelArr The voltage levels of the waveform in volts.
fname The name of the arbitrary waveform file.

Example#

ki = measmatic.get_device('device-keithley-4200')
ki.arb_array(ki.getinstid('PGU1'), 1, 1e-6, 4, [0.0, 1.0, 1.0, 0.0], 'my_wave')

method arb_file(instrId: int, ch: int, fname: str)#

Loads an arbitrary waveform file for a channel of the pulse card.

Parameters#

Name Description
instrId The instrument identification code of the instrument, as returned by getinstid.
ch The channel number of the pulse card.
fname The name of the arbitrary waveform file.

Example#

ki = measmatic.get_device('device-keithley-4200')
ki.arb_file(ki.getinstid('PGU1'), 1, 'my_wave')

method asweepi(instrId: int, numberOfPoints: int, delay: float, forceArray: list[float])#

This command generates a current waveform based on a user-defined forcing array. The asweepX command is used with the smeasX, sintgX, or savgX commands.

Parameters#

Name Description
instrId The instrument identification code of the sourcing instrument
numberOfPoints The number of separate current and voltage force points defined in the array (1...4096)
delay The delay, in seconds, between each step and the measurements defined by the
forceArray this is a single dimension array that contains all force points

Example#

ki = measmatic.get_device('device-keithley-4200')
ki.asweepi(ki.getinstid('SMU1'), 3, 0.01, [1e-6, 2e-6, 3e-6])

method asweepv(instrId: int, numberOfPoints: int, delay: float, forceArray: list[float])#

This command generates a voltage waveform based on a user-defined forcing array. The asweepX command is used with the smeasX, sintgX, or savgX commands.

Parameters#

Name Description
instrId The instrument identification code of the sourcing instrument
numberOfPoints The number of separate current and voltage force points defined in the array (1...4096)
delay The delay, in seconds, between each step and the measurements defined by the
forceArray this is a single dimension array that contains all force points

Example#

ki = measmatic.get_device('device-keithley-4200')
ki.asweepv(ki.getinstid('SMU1'), 3, 0.01, [1.0, 2.0, 3.0])

method avgi(instrId: int, stepno: int, steptime: float)#

This command makes a series of current measurements and averages the results.

Parameters#

Name Description
instrId The instrument identification code of the sourcing instrument
stepno The number of steps averaged in the measurement (1 to 32,767)
steptime The interval in seconds between each measurement; the minimum practical time is approximately

Returns#

Type Description
float The averaged current in amperes.

Example#

ki = measmatic.get_device('device-keithley-4200')
current = ki.avgi(ki.getinstid('SMU1'), 10, 0.01)

method avgv(instrId: int, stepno: int, steptime: float)#

This command makes a series of voltage measurements and averages the results.

Parameters#

Name Description
instrId The instrument identification code of the sourcing instrument
stepno The number of steps averaged in the measurement (1 to 32,767)
steptime The interval in seconds between each measurement; the minimum practical time is approximately

Returns#

Type Description
float The averaged voltage in volts.

Example#

ki = measmatic.get_device('device-keithley-4200')
voltage = ki.avgv(ki.getinstid('SMU1'), 10, 0.01)

method bmeasi(instrId: int, numrdg: int, delay: float, timerid: int, result: Any, timerdata: Any)#

This command makes a series of current readings as quickly as possible. This measurement mode allows for waveform capture and analysis(within the resolution of the measurement instrument).

Parameters#

Name Description
instrId The instrument identification code of the measuring instrument
numrdg The number of readings to return in the array
delay The delay between points to wait (in seconds)
timerid The device name of the timer to use (0 = no timer data)
result The measurement readings.
timerdata The array used to receive the time points at which the readings were made; if timerID = 0, the

Returns#

Type Description
float The current readings in amperes.
float The time points of the readings; empty if no timer was used.

Example#

ki = measmatic.get_device('device-keithley-4200')
result, timerdata = ki.bmeasi(ki.getinstid('SMU1'), 100, 0.0, 0)

method bmeasv(instrId: int, numrdg: int, delay: float, timerid: int, result: Any, timerdata: Any)#

This command makes a series of voltage readings as quickly as possible. This measurement mode allows for waveform capture and analysis(within the resolution of the measurement instrument).

Parameters#

Name Description
instrId The instrument identification code of the measuring instrument
numrdg The number of readings to return in the array
delay The delay between points to wait (in seconds)
timerid The device name of the timer to use (0 = no timer data)
result The measurement readings.
timerdata The array used to receive the time points at which the readings were made; if timerID = 0, the

Returns#

Type Description
float The voltage readings in volts.
float The time points of the readings; empty if no timer was used.

Example#

ki = measmatic.get_device('device-keithley-4200')
result, timerdata = ki.bmeasv(ki.getinstid('SMU1'), 100, 0.0, 0)

method bsweepi(instrId: int, startVal: float, endVal: float, numPoints: int, delayTime: float)#

Supplies a series of ascending or descending currents and shuts down the source when a trigger condition is encountered.

Parameters#

Name Description
instrId The instrument identification code of the instrument, as returned by getinstid.
startVal The start current in amperes.
endVal The stop current in amperes.
numPoints The number of points of the sweep.
delayTime The delay between the points in seconds.

Returns#

Type Description
float The result value reported by the instrument for the sweep.

Example#

ki = measmatic.get_device('device-keithley-4200')
result = ki.bsweepi(ki.getinstid('SMU1'), 0.0, 1e-3, 11, 0.01)

method bsweepv(instrId: int, startVal: float, endVal: float, numPoints: int, delayTime: float)#

Supplies a series of ascending or descending voltages and shuts down the source when a trigger condition is encountered.

Parameters#

Name Description
instrId The instrument identification code of the instrument, as returned by getinstid.
startVal The start voltage in volts.
endVal The stop voltage in volts.
numPoints The number of points of the sweep.
delayTime The delay between the points in seconds.

Returns#

Type Description
float The result value reported by the instrument for the sweep.

Example#

ki = measmatic.get_device('device-keithley-4200')
result = ki.bsweepv(ki.getinstid('SMU1'), 0.0, 10.0, 11, 0.01)

method clrscn()#

This command clears the measurement scan tables associated with a sweep.

Example#

ki = measmatic.get_device('device-keithley-4200')
ki.clrscn()

method cviv_config(instrId: int, ch: int, modifier: int)#

Configures the connection of a channel of the CVIV multi-switch with a modifier code.

Parameters#

Name Description
instrId The instrument identification code of the instrument, as returned by getinstid.
ch The channel number.
modifier The modifier code that selects the setting to configure.

Example#

ki = measmatic.get_device('device-keithley-4200')
ki.cviv_config(ki.getinstid('CVIV1'), 1, 0)

method cviv_display_config(instrId: int, ch: int, modifier: int, value: str)#

Configures a display setting of a channel of the CVIV multi-switch with a modifier code and a value.

Parameters#

Name Description
instrId The instrument identification code of the instrument, as returned by getinstid.
ch The channel number.
modifier The modifier code that selects the setting to configure.
value The value of the setting.

Example#

ki = measmatic.get_device('device-keithley-4200')
ki.cviv_display_config(ki.getinstid('CVIV1'), 1, 0, 'value')

method cviv_display_power(instrId: int, state: int)#

Sets the display power state of the CVIV multi-switch.

Parameters#

Name Description
instrId The instrument identification code of the instrument, as returned by getinstid.
state The power state code.

Example#

ki = measmatic.get_device('device-keithley-4200')
ki.cviv_display_power(ki.getinstid('CVIV1'), 1)

method cviv_get_configuration(instrId: int, ch: int)#

Requests the configuration of a channel of the CVIV multi-switch. The proxy does not return a value.

Parameters#

Name Description
instrId The instrument identification code of the instrument, as returned by getinstid.
ch The channel number.

Example#

ki = measmatic.get_device('device-keithley-4200')
ki.cviv_get_configuration(ki.getinstid('CVIV1'), 1)

method cviv_init(instrId: int)#

Initializes the CVIV multi-switch.

Parameters#

Name Description
instrId The instrument identification code of the instrument, as returned by getinstid.

Example#

ki = measmatic.get_device('device-keithley-4200')
ki.cviv_init(ki.getinstid('CVIV1'))

method cviv_terminate(instrId: int)#

Terminates the use of the CVIV multi-switch.

Parameters#

Name Description
instrId The instrument identification code of the instrument, as returned by getinstid.

Example#

ki = measmatic.get_device('device-keithley-4200')
ki.cviv_terminate(ki.getinstid('CVIV1'))

method cvu_custom_cable_comp(instrId: int)#

Performs a custom cable compensation of the CVU (capacitance-voltage unit).

Parameters#

Name Description
instrId The instrument identification code of the instrument, as returned by getinstid.

Example#

ki = measmatic.get_device('device-keithley-4200')
ki.cvu_custom_cable_comp(ki.getinstid('CVU1'))

method delay(delayMs: int)#

Pauses the execution for the given time.

Parameters#

Name Description
delayMs The time in milliseconds.

Example#

ki = measmatic.get_device('device-keithley-4200')
ki.delay(100)

method devclr()#

Resets the instruments of the test system to their default states (LPT command devclr ).

Example#

ki = measmatic.get_device('device-keithley-4200')
ki.devclr()

method devint()#

Initializes the instruments of the test system to their default states (LPT command devint ).

Example#

ki = measmatic.get_device('device-keithley-4200')
ki.devint()

method disable(instrId: int)#

Disables an instrument so that it no longer sources.

Parameters#

Name Description
instrId The instrument identification code of the instrument, as returned by getinstid.

Example#

ki = measmatic.get_device('device-keithley-4200')
ki.disable(ki.getinstid('SMU1'))

method dsweepf(instrId: int, startf: float, stopf: float, delaytime: float)#

Runs a frequency sweep on the CVU from the start to the stop frequency (LPT command dsweepf ) and returns the number of sweep points.

Parameters#

Name Description
instrId The instrument identification code of the instrument, as returned by getinstid.
startf The start frequency in hertz.
stopf The stop frequency in hertz.
delaytime The delay between the points in seconds.

Returns#

Type Description
int The number of sweep points.

Example#

ki = measmatic.get_device('device-keithley-4200')
points = ki.dsweepf(ki.getinstid('CVU1'), 1e4, 1e6, 0.0)

method dsweepv(instrId: int, startval: float, endval: float, stepno: int, stepdelay: float)#

Runs a DC voltage sweep on the CVU from the start to the stop value (LPT command dsweepv ).

Parameters#

Name Description
instrId The instrument identification code of the instrument, as returned by getinstid.
startval The start voltage in volts.
endval The stop voltage in volts.
stepno The number of steps.
stepdelay The delay between the steps in seconds.

Example#

ki = measmatic.get_device('device-keithley-4200')
ki.dsweepv(ki.getinstid('CVU1'), 0.0, 5.0, 11, 0.01)

method enable(instrId: int)#

Enables an instrument.

Parameters#

Name Description
instrId The instrument identification code of the instrument, as returned by getinstid.

Example#

ki = measmatic.get_device('device-keithley-4200')
ki.enable(ki.getinstid('SMU1'))

method forcei(instrId: int, val: float)#

Programs a sourcing instrument to generate a current at a specific level.

Parameters#

Name Description
instrId The instrument identification code of the instrument, as returned by getinstid.
val The level of the forced bipolar current in amperes.

Example#

ki = measmatic.get_device('device-keithley-4200')
ki.forcei(ki.getinstid('SMU1'), 1e-3)

method forcev(instrId: int, val: float)#

Programs a sourcing instrument to generate a voltage at a specific level.

Parameters#

Name Description
instrId The instrument identification code of the instrument, as returned by getinstid.
val The level of the forced bipolar voltage in volts.

Example#

ki = measmatic.get_device('device-keithley-4200')
ki.forcev(ki.getinstid('SMU1'), 1.0)

method get_rtfary_array(instrId: int)#

Returns the array of forced values.

Parameters#

Name Description
instrId The instrument identification code of the sourcing instrument

Returns#

Type Description
float The array of forced values.

Example#

ki = measmatic.get_device('device-keithley-4200')
forced = ki.get_rtfary_array(ki.getinstid('SMU1'))

method get_sintgi_array(instrId: int)#

Returns the array that holds the integrated current readings. Call sintgi first and run the sweep.

Parameters#

Name Description
instrId The instrument identification code of the instrument, as returned by getinstid.

Returns#

Type Description
float The array of integrated current readings.

Example#

ki = measmatic.get_device('device-keithley-4200')
values = ki.get_sintgi_array(ki.getinstid('SMU1'))

method get_sintgv_array(instrId: int)#

Returns the array that holds the integrated voltage readings. Call sintgv first and run the sweep.

Parameters#

Name Description
instrId The instrument identification code of the instrument, as returned by getinstid.

Returns#

Type Description
float The array of integrated voltage readings.

Example#

ki = measmatic.get_device('device-keithley-4200')
values = ki.get_sintgv_array(ki.getinstid('SMU1'))

method get_smeasf_array(instrId: int)#

Returns the array that holds the frequency readings. Call smeasf first and run the sweep.

Parameters#

Name Description
instrId The instrument identification code of the instrument, as returned by getinstid.

Returns#

Type Description
float The array of frequency readings.

Example#

ki = measmatic.get_device('device-keithley-4200')
values = ki.get_smeasf_array(ki.getinstid('SMU1'))

method get_smeasi_array(instrId: int)#

Returns the array that holds the current readings. Call smeasi first and run the sweep.

Parameters#

Name Description
instrId The instrument identification code of the instrument, as returned by getinstid.

Returns#

Type Description
float The array of current readings.

Example#

ki = measmatic.get_device('device-keithley-4200')
values = ki.get_smeasi_array(ki.getinstid('SMU1'))

method get_smeast_array(instrId: int)#

Returns the array that holds the time readings. Call smeast first and run the sweep.

Parameters#

Name Description
instrId The instrument identification code of the instrument, as returned by getinstid.

Returns#

Type Description
float The array of time readings.

Example#

ki = measmatic.get_device('device-keithley-4200')
values = ki.get_smeast_array(ki.getinstid('SMU1'))

method get_smeasv_array(instrId: int)#

Returns the array that holds the voltage readings. Call smeasv first and run the sweep.

Parameters#

Name Description
instrId The instrument identification code of the instrument, as returned by getinstid.

Returns#

Type Description
float The array of voltage readings.

Example#

ki = measmatic.get_device('device-keithley-4200')
values = ki.get_smeasv_array(ki.getinstid('SMU1'))

method getinstid(idstring: str)#

Returns the instrument identification code for an instrument name.

Parameters#

Name Description
idstring The instrument name, e.g. SMU1 .

Returns#

Type Description
int The instrument identification code.

Example#

ki = measmatic.get_device('device-keithley-4200')
smu1 = ki.getinstid('SMU1')

method getinstname(instrId: int)#

Returns the instrument name for an instrument identification code.

Parameters#

Name Description
instrId The instrument identification code of the instrument, as returned by getinstid.

Returns#

Type Description
str The instrument name.

Example#

ki = measmatic.get_device('device-keithley-4200')
name = ki.getinstname(ki.getinstid('SMU1'))

method getsmeasz_arrays(instrId: int)#

Returns the two arrays that hold the impedance readings of a CVU sweep. Call smeasz first and run the sweep.

Parameters#

Name Description
instrId The instrument identification code of the instrument, as returned by getinstid.

Returns#

Type Description
float The first measured parameter of the selected CVU measurement model.
float The second measured parameter of the selected CVU measurement model.

Example#

ki = measmatic.get_device('device-keithley-4200')
result1, result2 = ki.getsmeasz_arrays(ki.getinstid('CVU1'))

method getstatus(instrId: int, parameter: int)#

Reads a status value of an instrument.

Parameters#

Name Description
instrId The instrument identification code of the instrument, as returned by getinstid.
parameter The code of the status parameter to read.

Returns#

Type Description
float The value of the status parameter.

Example#

ki = measmatic.get_device('device-keithley-4200')
value = ki.getstatus(ki.getinstid('SMU1'), 0)

method intgi(instrId: int)#

Measures the current averaged over a user-defined integration time (usually one power line cycle). The default integration time is 1 PLC and can be set between 0.01 and 10.0 PLC.

Parameters#

Name Description
instrId The instrument identification code of the instrument, as returned by getinstid.

Returns#

Type Description
float The measured current in amperes.

Example#

ki = measmatic.get_device('device-keithley-4200')
current = ki.intgi(ki.getinstid('SMU1'))

method intgv(instrId: int)#

Measures the voltage averaged over a user-defined integration time (usually one power line cycle). The default integration time is 1 PLC and can be set between 0.01 and 10.0 PLC.

Parameters#

Name Description
instrId The instrument identification code of the instrument, as returned by getinstid.

Returns#

Type Description
float The measured voltage in volts.

Example#

ki = measmatic.get_device('device-keithley-4200')
voltage = ki.intgv(ki.getinstid('SMU1'))

method limiti(instrId: int, val: float)#

Specifies a current limit other than the default limit of the instrument.

Parameters#

Name Description
instrId The instrument identification code of the instrument, as returned by getinstid.
val The maximum current in amperes.

Example#

ki = measmatic.get_device('device-keithley-4200')
ki.limiti(ki.getinstid('SMU1'), 1e-3)

method limitv(instrId: int, val: float)#

Specifies a voltage limit other than the default limit of the instrument.

Parameters#

Name Description
instrId The instrument identification code of the instrument, as returned by getinstid.
val The maximum voltage in volts.

Example#

ki = measmatic.get_device('device-keithley-4200')
ki.limitv(ki.getinstid('SMU1'), 10.0)

method lorangei(instrId: int, val: float)#

Sets the lowest current measurement range that the instrument uses.

Parameters#

Name Description
instrId The instrument identification code of the instrument, as returned by getinstid.
val The lowest current range in amperes.

Example#

ki = measmatic.get_device('device-keithley-4200')
ki.lorangei(ki.getinstid('SMU1'), 1e-9)

method lorangev(instrId: int, val: float)#

Sets the lowest voltage measurement range that the instrument uses.

Parameters#

Name Description
instrId The instrument identification code of the instrument, as returned by getinstid.
val The lowest voltage range in volts.

Example#

ki = measmatic.get_device('device-keithley-4200')
ki.lorangev(ki.getinstid('SMU1'), 0.2)

method measf(instrId: int)#

Measures the frequency of an instrument (CVU).

Parameters#

Name Description
instrId The instrument identification code of the instrument, as returned by getinstid.

Returns#

Type Description
float The measured frequency in hertz.

Example#

ki = measmatic.get_device('device-keithley-4200')
frequency = ki.measf(ki.getinstid('CVU1'))

method measi(instrId: int)#

Measures the current with a fixed integration time of 0.01 PLC.

Parameters#

Name Description
instrId The instrument identification code of the instrument, as returned by getinstid.

Returns#

Type Description
float The measured current in amperes.

Example#

ki = measmatic.get_device('device-keithley-4200')
current = ki.measi(ki.getinstid('SMU1'))

method meast(instrId: int)#

Reads the time of the timer instrument.

Parameters#

Name Description
instrId The instrument identification code of the instrument, as returned by getinstid.

Returns#

Type Description
float The measured time in seconds.

Example#

ki = measmatic.get_device('device-keithley-4200')
time = ki.meast(ki.getinstid('TIMER1'))

method measv(instrId: int)#

Measures the voltage with a fixed integration time of 0.01 PLC.

Parameters#

Name Description
instrId The instrument identification code of the instrument, as returned by getinstid.

Returns#

Type Description
float The measured voltage in volts.

Example#

ki = measmatic.get_device('device-keithley-4200')
voltage = ki.measv(ki.getinstid('SMU1'))

method measz(instrId: int, model: int, speed: int)#

Measures the impedance parameters of a CVU with the given measurement model and speed.

Parameters#

Name Description
instrId The instrument identification code of the instrument, as returned by getinstid.
model The code of the CVU measurement model.
speed The code of the CVU measurement speed.

Returns#

Type Description
float The first measured parameter of the selected measurement model.
float The second measured parameter of the selected measurement model.

Example#

ki = measmatic.get_device('device-keithley-4200')
result1, result2 = ki.measz(ki.getinstid('CVU1'), 0, 1)

method pg2_init(instrId: int, mode: int)#

Initializes the pulse generator (PGU) in the given mode.

Parameters#

Name Description
instrId The instrument identification code of the pulse card, as returned by getinstid.
mode The operating mode code of the pulse generator.

Example#

ki = measmatic.get_device('device-keithley-4200')
ki.pg2_init(ki.getinstid('PGU1'), 0)

method pulse_burst_count(instrId: int, chan: int, count: int)#

Sets the number of pulses of a burst.

Parameters#

Name Description
instrId The instrument identification code of the pulse card, as returned by getinstid.
chan The channel number of the pulse card.
count The number of pulses of the burst.

Example#

ki = measmatic.get_device('device-keithley-4200')
ki.pulse_burst_count(ki.getinstid('PGU1'), 1, 10)

method pulse_chan_status(instrId: int, chan: int)#

Queries the status of a pulse channel and returns the buffer size it reports.

Parameters#

Name Description
instrId The instrument identification code of the pulse card, as returned by getinstid.
chan The channel number of the pulse card.

Returns#

Type Description
int The buffer size reported by the channel.

Example#

ki = measmatic.get_device('device-keithley-4200')
size = ki.pulse_chan_status(ki.getinstid('PGU1'), 1)

method pulse_conncomp(instrId: int, chan: int, type: int, key: int)#

Configures the connection compensation of a pulse channel.

Parameters#

Name Description
instrId The instrument identification code of the pulse card, as returned by getinstid.
chan The channel number of the pulse card.
type The connection compensation type code.
key The key code of the compensation setting.

Example#

ki = measmatic.get_device('device-keithley-4200')
ki.pulse_conncomp(ki.getinstid('PGU1'), 1, 0, 0)

method pulse_current_limit(instrId: int, chan: int, ilimit: float)#

Sets the current limit of a pulse channel.

Parameters#

Name Description
instrId The instrument identification code of the pulse card, as returned by getinstid.
chan The channel number of the pulse card.
ilimit The current limit in amperes.

Example#

ki = measmatic.get_device('device-keithley-4200')
ki.pulse_current_limit(ki.getinstid('PGU1'), 1, 0.1)

method pulse_dc_output(instrId: int, chan: int, dc_level: float)#

Sets a DC output level on a pulse channel.

Parameters#

Name Description
instrId The instrument identification code of the pulse card, as returned by getinstid.
chan The channel number of the pulse card.
dc_level The DC output level in volts.

Example#

ki = measmatic.get_device('device-keithley-4200')
ki.pulse_dc_output(ki.getinstid('PGU1'), 1, 1.0)

method pulse_delay(instrId: int, chan: int, delay: float)#

Sets the pulse delay of a pulse channel.

Parameters#

Name Description
instrId The instrument identification code of the pulse card, as returned by getinstid.
chan The channel number of the pulse card.
delay The pulse delay in seconds.

Example#

ki = measmatic.get_device('device-keithley-4200')
ki.pulse_delay(ki.getinstid('PGU1'), 1, 1e-6)

method pulse_exec(mode: int)#

Executes the configured pulse test.

Parameters#

Name Description
mode The execution mode code.

Example#

ki = measmatic.get_device('device-keithley-4200')
ki.pulse_exec(0)

method pulse_exec_status()#

Queries the execution status of the pulse test.

Returns#

Type Description
int The execution status code.
float The elapsed time in seconds.

Example#

ki = measmatic.get_device('device-keithley-4200')
status, elapsed = ki.pulse_exec_status()

method pulse_fall(instrId: int, chan: int, fallt: float)#

Sets the fall time of the pulses of a pulse channel.

Parameters#

Name Description
instrId The instrument identification code of the pulse card, as returned by getinstid.
chan The channel number of the pulse card.
fallt The fall time in seconds.

Example#

ki = measmatic.get_device('device-keithley-4200')
ki.pulse_fall(ki.getinstid('PGU1'), 1, 1e-7)

method pulse_fetch(instrID: int, chan: int, startndx: int, stopndx: int, arraySize: int)#

Fetches the measured pulse data of a pulse channel for a range of readings.

Parameters#

Name Description
instrID The instrument identification code of the pulse card, as returned by getinstid.
chan The channel number of the pulse card.
startndx The index of the first reading.
stopndx The index of the last reading.
arraySize The size of the arrays that receive the readings.

Returns#

Type Description
float The voltage readings in volts.
float The current readings in amperes.
float The time stamps in seconds.
int The status codes of the readings.

Example#

ki = measmatic.get_device('device-keithley-4200')
v, i, t, status = ki.pulse_fetch(ki.getinstid('PGU1'), 1, 0, 99, 100)

method pulse_float(instrId: int, enable: int)#

Enables or disables the floating output of the pulse card.

Parameters#

Name Description
instrId The instrument identification code of the pulse card, as returned by getinstid.
enable 1 enables the floating output, 0 disables it.

Example#

ki = measmatic.get_device('device-keithley-4200')
ki.pulse_float(ki.getinstid('PGU1'), 1)

method pulse_halt(instrId: int)#

Halts the pulse output of the pulse card.

Parameters#

Name Description
instrId The instrument identification code of the pulse card, as returned by getinstid.

Example#

ki = measmatic.get_device('device-keithley-4200')
ki.pulse_halt(ki.getinstid('PGU1'))

method pulse_init(instrId: int)#

Initializes the pulse card.

Parameters#

Name Description
instrId The instrument identification code of the pulse card, as returned by getinstid.

Example#

ki = measmatic.get_device('device-keithley-4200')
ki.pulse_init(ki.getinstid('PGU1'))

method pulse_limits(instrId: int, chan: int, V_Limit: float, I_Limit: float, power_Limit: float)#

Sets the voltage, current and power limits of a pulse channel.

Parameters#

Name Description
instrId The instrument identification code of the pulse card, as returned by getinstid.
chan The channel number of the pulse card.
V_Limit The voltage limit in volts.
I_Limit The current limit in amperes.
power_Limit The power limit in watts.

Example#

ki = measmatic.get_device('device-keithley-4200')
ki.pulse_limits(ki.getinstid('PGU1'), 1, 10.0, 0.1, 1.0)

method pulse_load(instrId: int, chan: int, load: float)#

Sets the load resistance that a pulse channel is operated with.

Parameters#

Name Description
instrId The instrument identification code of the pulse card, as returned by getinstid.
chan The channel number of the pulse card.
load The load resistance in ohms.

Example#

ki = measmatic.get_device('device-keithley-4200')
ki.pulse_load(ki.getinstid('PGU1'), 1, 50.0)

method pulse_meas_sm(instrId: int, chan: int, acqtype: int, acquireVHigh: int, acquireVLow: int, acquireIHigh: int, acquireILow: int, acquireTimeStamp: int, LLEComp: int)#

Configures the spot-mean measurement of a pulse channel.

Parameters#

Name Description
instrId The instrument identification code of the pulse card, as returned by getinstid.
chan The channel number of the pulse card.
acqtype The acquisition type code.
acquireVHigh 1 to acquire the voltage of the high level, otherwise 0.
acquireVLow 1 to acquire the voltage of the low level, otherwise 0.
acquireIHigh 1 to acquire the current of the high level, otherwise 0.
acquireILow 1 to acquire the current of the low level, otherwise 0.
acquireTimeStamp 1 to acquire the time stamp, otherwise 0.
LLEComp 1 to enable the load line effect compensation, otherwise 0.

Example#

ki = measmatic.get_device('device-keithley-4200')
ki.pulse_meas_sm(ki.getinstid('PGU1'), 1, 0, 1, 0, 1, 0, 1, 0)

method pulse_meas_timing(instrId: int, chan: int, StartPercent: float, StopPercent: float, pulseAverage: int)#

Sets the part of the pulse in which the measurement is taken and the number of pulses that are averaged.

Parameters#

Name Description
instrId The instrument identification code of the pulse card, as returned by getinstid.
chan The channel number of the pulse card.
StartPercent The start of the measurement window in percent of the pulse.
StopPercent The end of the measurement window in percent of the pulse.
pulseAverage The number of pulses that are averaged.

Example#

ki = measmatic.get_device('device-keithley-4200')
ki.pulse_meas_timing(ki.getinstid('PGU1'), 1, 50.0, 90.0, 1)

method pulse_meas_wfm(instrId: int, chan: int, acqtype: int, acquireV: int, acquireI: int, acquireTimeStamp: int, LLEComp: int)#

Configures the waveform measurement of a pulse channel.

Parameters#

Name Description
instrId The instrument identification code of the pulse card, as returned by getinstid.
chan The channel number of the pulse card.
acqtype The acquisition type code.
acquireV 1 to acquire the voltage, otherwise 0.
acquireI 1 to acquire the current, otherwise 0.
acquireTimeStamp 1 to acquire the time stamp, otherwise 0.
LLEComp 1 to enable the load line effect compensation, otherwise 0.

Example#

ki = measmatic.get_device('device-keithley-4200')
ki.pulse_meas_wfm(ki.getinstid('PGU1'), 1, 0, 1, 1, 1, 0)

method pulse_measrt(instrId: int, chan: int, VMeasColName: str, IMeasColName: str, TimeStampColName: str, StatusColName: str)#

Assigns the data columns that receive the readings of a pulse channel.

Parameters#

Name Description
instrId The instrument identification code of the pulse card, as returned by getinstid.
chan The channel number of the pulse card.
VMeasColName The name of the column for the voltage readings.
IMeasColName The name of the column for the current readings.
TimeStampColName The name of the column for the time stamps.
StatusColName The name of the column for the status codes.

Example#

ki = measmatic.get_device('device-keithley-4200')
ki.pulse_measrt(ki.getinstid('PGU1'), 1, 'V', 'I', 'T', 'S')

method pulse_output(instrId: int, chan: int, state: int)#

Switches the output of a pulse channel on or off.

Parameters#

Name Description
instrId The instrument identification code of the pulse card, as returned by getinstid.
chan The channel number of the pulse card.
state 1 switches the output on, 0 switches it off.

Example#

ki = measmatic.get_device('device-keithley-4200')
ki.pulse_output(ki.getinstid('PGU1'), 1, 1)

method pulse_output_mode(instrId: int, chan: int, mode: int)#

Sets the output mode of a pulse channel.

Parameters#

Name Description
instrId The instrument identification code of the pulse card, as returned by getinstid.
chan The channel number of the pulse card.
mode The output mode code.

Example#

ki = measmatic.get_device('device-keithley-4200')
ki.pulse_output_mode(ki.getinstid('PGU1'), 1, 0)

method pulse_period(instrId: int, period: float)#

Sets the pulse period.

Parameters#

Name Description
instrId The instrument identification code of the pulse card, as returned by getinstid.
period The pulse period in seconds.

Example#

ki = measmatic.get_device('device-keithley-4200')
ki.pulse_period(ki.getinstid('PGU1'), 1e-5)

method pulse_range(instrId: int, chan: int, range: float)#

Sets the output range of a pulse channel.

Parameters#

Name Description
instrId The instrument identification code of the pulse card, as returned by getinstid.
chan The channel number of the pulse card.
range The range in volts.

Example#

ki = measmatic.get_device('device-keithley-4200')
ki.pulse_range(ki.getinstid('PGU1'), 1, 10.0)

method pulse_ranges(instrId: int, chan: int, srcrange: float, Vrange_type: int, Vrange: float, Irange_type: int, IRange: float)#

Sets the source range and the voltage and current measurement ranges of a pulse channel.

Parameters#

Name Description
instrId The instrument identification code of the pulse card, as returned by getinstid.
chan The channel number of the pulse card.
srcrange The source range in volts.
Vrange_type The type code of the voltage measurement range.
Vrange The voltage measurement range in volts.
Irange_type The type code of the current measurement range.
IRange The current measurement range in amperes.

Example#

ki = measmatic.get_device('device-keithley-4200')
ki.pulse_ranges(ki.getinstid('PGU1'), 1, 10.0, 0, 10.0, 0, 0.01)

method pulse_remove(instrId: int, chan: int, voltage: float, state: int)#

Sets the behavior of a pulse channel when the pulse test is removed.

Parameters#

Name Description
instrId The instrument identification code of the pulse card, as returned by getinstid.
chan The channel number of the pulse card.
voltage The voltage in volts.
state The state code.

Example#

ki = measmatic.get_device('device-keithley-4200')
ki.pulse_remove(ki.getinstid('PGU1'), 1, 0.0, 0)

method pulse_rise(instrId: int, chan: int, riset: float)#

Sets the rise time of the pulses of a pulse channel.

Parameters#

Name Description
instrId The instrument identification code of the pulse card, as returned by getinstid.
chan The channel number of the pulse card.
riset The rise time in seconds.

Example#

ki = measmatic.get_device('device-keithley-4200')
ki.pulse_rise(ki.getinstid('PGU1'), 1, 1e-7)

method pulse_sample_rate(instrId: int, rate: float)#

Sets the sample rate of the pulse card.

Parameters#

Name Description
instrId The instrument identification code of the pulse card, as returned by getinstid.
rate The sample rate in samples per second.

Example#

ki = measmatic.get_device('device-keithley-4200')
ki.pulse_sample_rate(ki.getinstid('PGU1'), 2e8)

method pulse_source_timing(instrId: int, chan: int, period: float, delay: float, width: float, rise: float, fall: float)#

Sets the complete pulse timing of a pulse channel.

Parameters#

Name Description
instrId The instrument identification code of the pulse card, as returned by getinstid.
chan The channel number of the pulse card.
period The pulse period in seconds.
delay The pulse delay in seconds.
width The pulse width in seconds.
rise The rise time in seconds.
fall The fall time in seconds.

Example#

ki = measmatic.get_device('device-keithley-4200')
ki.pulse_source_timing(ki.getinstid('PGU1'), 1, 1e-5, 0.0, 1e-6, 1e-7, 1e-7)

method pulse_ssrc(instrId: int, channel: int, state: int, ctrl: int)#

Controls the solid-state relay (SSR) of a pulse channel.

Parameters#

Name Description
instrId The instrument identification code of the pulse card, as returned by getinstid.
channel The channel number of the pulse card.
state The state code of the relay.
ctrl The control mode code of the relay.

Example#

ki = measmatic.get_device('device-keithley-4200')
ki.pulse_ssrc(ki.getinstid('PGU1'), 1, 1, 0)

method pulse_standby(instrId: int, ch: int, state: int, voltage: float)#

Sets the standby state and standby voltage of a pulse channel.

Parameters#

Name Description
instrId The instrument identification code of the pulse card, as returned by getinstid.
ch The channel number of the pulse card.
state The standby state code.
voltage The standby voltage in volts.

Example#

ki = measmatic.get_device('device-keithley-4200')
ki.pulse_standby(ki.getinstid('PGU1'), 1, 1, 0.0)

method pulse_step_linear(instrId: int, chan: int, sweepType: int, start: float, stop: float, step: float)#

Configures a linear step of a pulse parameter on a pulse channel.

Parameters#

Name Description
instrId The instrument identification code of the pulse card, as returned by getinstid.
chan The channel number of the pulse card.
sweepType The code of the parameter that is stepped.
start The start value.
stop The stop value.
step The step size.

Example#

ki = measmatic.get_device('device-keithley-4200')
ki.pulse_step_linear(ki.getinstid('PGU1'), 1, 0, 0.0, 5.0, 1.0)

method pulse_sweep_linear(instrId: int, chan: int, sweepType: int, start: float, stop: float, step: float)#

Configures a linear sweep of a pulse parameter on a pulse channel.

Parameters#

Name Description
instrId The instrument identification code of the pulse card, as returned by getinstid.
chan The channel number of the pulse card.
sweepType The code of the parameter that is swept.
start The start value.
stop The stop value.
step The step size.

Example#

ki = measmatic.get_device('device-keithley-4200')
ki.pulse_sweep_linear(ki.getinstid('PGU1'), 1, 0, 0.0, 5.0, 0.5)

method pulse_train(instrId: int, chan: int, vbase: float, vamplitude: float)#

Configures a pulse train on a pulse channel.

Parameters#

Name Description
instrId The instrument identification code of the pulse card, as returned by getinstid.
chan The channel number of the pulse card.
vbase The base voltage in volts.
vamplitude The pulse amplitude in volts.

Example#

ki = measmatic.get_device('device-keithley-4200')
ki.pulse_train(ki.getinstid('PGU1'), 1, 0.0, 5.0)

method pulse_trig(instrId: int, mode: int)#

Sets the trigger mode of the pulse card.

Parameters#

Name Description
instrId The instrument identification code of the pulse card, as returned by getinstid.
mode The trigger mode code.

Example#

ki = measmatic.get_device('device-keithley-4200')
ki.pulse_trig(ki.getinstid('PGU1'), 0)

method pulse_trig_output(instrId: int, state: int)#

Enables or disables the trigger output of the pulse card.

Parameters#

Name Description
instrId The instrument identification code of the pulse card, as returned by getinstid.
state 1 enables the trigger output, 0 disables it.

Example#

ki = measmatic.get_device('device-keithley-4200')
ki.pulse_trig_output(ki.getinstid('PGU1'), 1)

method pulse_trig_polarity(instrId: int, polarity: int)#

Sets the trigger polarity of the pulse card.

Parameters#

Name Description
instrId The instrument identification code of the pulse card, as returned by getinstid.
polarity The polarity code.

Example#

ki = measmatic.get_device('device-keithley-4200')
ki.pulse_trig_polarity(ki.getinstid('PGU1'), 1)

method pulse_trig_source(instrId: int, source: int)#

Sets the trigger source of the pulse card.

Parameters#

Name Description
instrId The instrument identification code of the pulse card, as returned by getinstid.
source The trigger source code.

Example#

ki = measmatic.get_device('device-keithley-4200')
ki.pulse_trig_source(ki.getinstid('PGU1'), 0)

method pulse_vhigh(instrId: int, chan: int, vhigh: float)#

Sets the high level of the pulses of a pulse channel.

Parameters#

Name Description
instrId The instrument identification code of the pulse card, as returned by getinstid.
chan The channel number of the pulse card.
vhigh The high level in volts.

Example#

ki = measmatic.get_device('device-keithley-4200')
ki.pulse_vhigh(ki.getinstid('PGU1'), 1, 5.0)

method pulse_vlow(instrId: int, chan: int, vlow: float)#

Sets the low level of the pulses of a pulse channel.

Parameters#

Name Description
instrId The instrument identification code of the pulse card, as returned by getinstid.
chan The channel number of the pulse card.
vlow The low level in volts.

Example#

ki = measmatic.get_device('device-keithley-4200')
ki.pulse_vlow(ki.getinstid('PGU1'), 1, 0.0)

method pulse_width(instrId: int, chan: int, width: float)#

Sets the pulse width of a pulse channel.

Parameters#

Name Description
instrId The instrument identification code of the pulse card, as returned by getinstid.
chan The channel number of the pulse card.
width The pulse width in seconds.

Example#

ki = measmatic.get_device('device-keithley-4200')
ki.pulse_width(ki.getinstid('PGU1'), 1, 1e-6)

method rangei(instrId: int, val: float)#

Sets the current measurement range of an instrument.

Parameters#

Name Description
instrId The instrument identification code of the instrument, as returned by getinstid.
val The current range in amperes.

Example#

ki = measmatic.get_device('device-keithley-4200')
ki.rangei(ki.getinstid('SMU1'), 1e-3)

method rangev(instrId: int, val: float)#

Sets the voltage measurement range of an instrument.

Parameters#

Name Description
instrId The instrument identification code of the instrument, as returned by getinstid.
val The voltage range in volts.

Example#

ki = measmatic.get_device('device-keithley-4200')
ki.rangev(ki.getinstid('SMU1'), 20.0)

method rpm_config(instrId: int, ch: int, modifer: int, value: int)#

Configures a channel of the remote preamplifier/switch module (RPM) with a modifier code and a value.

Parameters#

Name Description
instrId The instrument identification code of the instrument, as returned by getinstid.
ch The channel number.
modifer The modifier code that selects the setting to configure.
value The value of the setting.

Example#

ki = measmatic.get_device('device-keithley-4200')
ki.rpm_config(ki.getinstid('RPM1'), 1, 0, 0)

method rpm_config2(instrId: int, ch: int, modifer: int, value: int)#

Configures a channel of the remote preamplifier/switch module (RPM) with a modifier code and a value (extended variant of rpm_config).

Parameters#

Name Description
instrId The instrument identification code of the instrument, as returned by getinstid.
ch The channel number.
modifer The modifier code that selects the setting to configure.
value The value of the setting.

Example#

ki = measmatic.get_device('device-keithley-4200')
ki.rpm_config2(ki.getinstid('RPM1'), 1, 0, 0)

method rtfary(instrId: int, arraySize: int)#

This command creates a double[] array internally to store the forced values during sweeps.

Parameters#

Name Description
instrId The instrument identification code of the sourcing instrument
arraySize The size of the array. (Must be large enough to store all values!)

Example#

ki = measmatic.get_device('device-keithley-4200')
ki.rtfary(ki.getinstid('SMU1'), 101)

method scnmeas()#

Executes the sweep that was configured with the sweep and smeasX commands and takes the programmed measurements.

Example#

ki = measmatic.get_device('device-keithley-4200')
ki.scnmeas()

method seg_arb_define(instrId: int, ch: int, nsegments: int, startvals: list[float], stopvals: list[float], timevals: list[float], triggervals: list[int], ssrctl: list[int])#

Defines the segments of a segment arbitrary waveform on a channel of the pulse card.

Parameters#

Name Description
instrId The instrument identification code of the instrument, as returned by getinstid.
ch The channel number of the pulse card.
nsegments The number of segments.
startvals The start voltages of the segments in volts.
stopvals The stop voltages of the segments in volts.
timevals The durations of the segments in seconds.
triggervals The trigger output codes of the segments.
ssrctl The solid-state relay control codes of the segments.

Example#

ki = measmatic.get_device('device-keithley-4200')
ki.seg_arb_define(ki.getinstid('PGU1'), 1, 2, [0.0, 1.0], [1.0, 1.0], [1e-6, 1e-6], [0, 0], [0, 0])

method seg_arb_file(instrId: int, ch: int, fname: str)#

Loads a segment arbitrary waveform file for a channel of the pulse card.

Parameters#

Name Description
instrId The instrument identification code of the instrument, as returned by getinstid.
ch The channel number of the pulse card.
fname The name of the segment arbitrary waveform file.

Example#

ki = measmatic.get_device('device-keithley-4200')
ki.seg_arb_file(ki.getinstid('PGU1'), 1, 'my_seg_wave')

method seg_arb_sequence(instrId: int, ch: int, seqNum: int, numSegments: int, startV: list[float], stopV: list[float], time: list[float], trig: list[int], SSR: list[int], measType: list[int], measStart: list[float], measStop: list[float])#

Defines a sequence of a segment arbitrary waveform, including its measurement settings, on a channel of the pulse card.

Parameters#

Name Description
instrId The instrument identification code of the instrument, as returned by getinstid.
ch The channel number of the pulse card.
seqNum The number of the sequence.
numSegments The number of segments of the sequence.
startV The start voltages of the segments in volts.
stopV The stop voltages of the segments in volts.
time The durations of the segments in seconds.
trig The trigger output codes of the segments.
SSR The solid-state relay control codes of the segments.
measType The measurement type codes of the segments.
measStart The start times of the measurements in seconds.
measStop The stop times of the measurements in seconds.

Example#

ki = measmatic.get_device('device-keithley-4200')
ki.seg_arb_sequence(ki.getinstid('PGU1'), 1, 1, 2, [0.0, 1.0], [1.0, 1.0], [1e-6, 1e-6], [0, 0], [0, 0], [0, 0], [0.0, 0.0], [0.0, 0.0])

method seg_arb_waveform(instrId: int, ch: int, NumSeq: int, seq: list[int], seqLoopCount: list[float])#

Defines a segment arbitrary waveform from sequences on a channel of the pulse card.

Parameters#

Name Description
instrId The instrument identification code of the instrument, as returned by getinstid.
ch The channel number of the pulse card.
NumSeq The number of sequences.
seq The numbers of the sequences in the order they are played.
seqLoopCount The loop counts of the sequences.

Example#

ki = measmatic.get_device('device-keithley-4200')
ki.seg_arb_waveform(ki.getinstid('PGU1'), 1, 1, [1], [10.0])

method setauto(instrId: int)#

Sets an instrument to auto-ranging.

Parameters#

Name Description
instrId The instrument identification code of the instrument, as returned by getinstid.

Example#

ki = measmatic.get_device('device-keithley-4200')
ki.setauto(ki.getinstid('CVU1'))

method setfreq(instrId: int, frequency: float)#

Sets the test frequency of a CVU.

Parameters#

Name Description
instrId The instrument identification code of the instrument, as returned by getinstid.
frequency The test frequency in hertz.

Example#

ki = measmatic.get_device('device-keithley-4200')
ki.setfreq(ki.getinstid('CVU1'), 1e6)

method setlevel(instrId: int, signalLevel: float)#

Sets the AC signal level of a CVU.

Parameters#

Name Description
instrId The instrument identification code of the instrument, as returned by getinstid.
signalLevel The AC signal level in volts.

Example#

ki = measmatic.get_device('device-keithley-4200')
ki.setlevel(ki.getinstid('CVU1'), 0.03)

method setmode(instrId: int, mode: int, val: float)#

Sets an operating mode of an instrument.

Parameters#

Name Description
instrId The instrument identification code of the instrument, as returned by getinstid.
mode The code of the mode to set.
val The value of the mode.

Example#

ki = measmatic.get_device('device-keithley-4200')
ki.setmode(ki.getinstid('SMU1'), 0, 1.0)

method sintgi(instrId: int, arraySize: int)#

Defines the integrated current readings of a sweep and allocates the array that receives the readings. Run the sweep to fill the array.

Parameters#

Name Description
instrId The instrument identification code of the instrument, as returned by getinstid.
arraySize The number of points of the array. It must be large enough to store all readings of the sweep.

Example#

ki = measmatic.get_device('device-keithley-4200')
ki.sintgi(ki.getinstid('SMU1'), 101)

method sintgv(instrId: int, arraySize: int)#

Defines the integrated voltage readings of a sweep and allocates the array that receives the readings. Run the sweep to fill the array.

Parameters#

Name Description
instrId The instrument identification code of the instrument, as returned by getinstid.
arraySize The number of points of the array. It must be large enough to store all readings of the sweep.

Example#

ki = measmatic.get_device('device-keithley-4200')
ki.sintgv(ki.getinstid('SMU1'), 101)

method smeasf(instrId: int, arraySize: int)#

Defines the frequency readings of a sweep and allocates the array that receives the readings. Run the sweep to fill the array.

Parameters#

Name Description
instrId The instrument identification code of the instrument, as returned by getinstid.
arraySize The number of points of the array. It must be large enough to store all readings of the sweep.

Example#

ki = measmatic.get_device('device-keithley-4200')
ki.smeasf(ki.getinstid('SMU1'), 101)

method smeasi(instrId: int, arraySize: int)#

Defines the current readings of a sweep and allocates the array that receives the readings. Run the sweep to fill the array.

Parameters#

Name Description
instrId The instrument identification code of the instrument, as returned by getinstid.
arraySize The number of points of the array. It must be large enough to store all readings of the sweep.

Example#

ki = measmatic.get_device('device-keithley-4200')
ki.smeasi(ki.getinstid('SMU1'), 101)

method smeast(instrId: int, arraySize: int)#

Defines the time readings of a sweep and allocates the array that receives the readings. Run the sweep to fill the array.

Parameters#

Name Description
instrId The instrument identification code of the instrument, as returned by getinstid.
arraySize The number of points of the array. It must be large enough to store all readings of the sweep.

Example#

ki = measmatic.get_device('device-keithley-4200')
ki.smeast(ki.getinstid('SMU1'), 101)

method smeasv(instrId: int, arraySize: int)#

Defines the voltage readings of a sweep and allocates the array that receives the readings. Run the sweep to fill the array.

Parameters#

Name Description
instrId The instrument identification code of the instrument, as returned by getinstid.
arraySize The number of points of the array. It must be large enough to store all readings of the sweep.

Example#

ki = measmatic.get_device('device-keithley-4200')
ki.smeasv(ki.getinstid('SMU1'), 101)

method smeasz(instrId: int, model: int, speed: int, arraySize: int)#

Defines the impedance readings of a CVU sweep and allocates the arrays that receive the readings. Run the sweep to fill the arrays.

Parameters#

Name Description
instrId The instrument identification code of the instrument, as returned by getinstid.
model The code of the CVU measurement model.
speed The code of the CVU measurement speed.
arraySize The number of points of the arrays. It must be large enough to store all readings of the sweep.

Example#

ki = measmatic.get_device('device-keithley-4200')
ki.smeasz(ki.getinstid('CVU1'), 0, 1, 101)

method sweepf(instrId: int, startf: float, stopf: float, delaytime: float)#

Runs a frequency sweep on the CVU from the start to the stop frequency (LPT command sweepf ) and returns the number of sweep points.

Parameters#

Name Description
instrId The instrument identification code of the instrument, as returned by getinstid.
startf The start frequency in hertz.
stopf The stop frequency in hertz.
delaytime The delay between the points in seconds.

Returns#

Type Description
int The number of sweep points.

Example#

ki = measmatic.get_device('device-keithley-4200')
points = ki.sweepf(ki.getinstid('CVU1'), 1e4, 1e6, 0.0)

method sweepi(instrId: int, startval: float, endval: float, stepno: int, stepdelay: float)#

Sweeps the current of a sourcing instrument from the start to the stop value.

Parameters#

Name Description
instrId The instrument identification code of the instrument, as returned by getinstid.
startval The start current in amperes.
endval The stop current in amperes.
stepno The number of steps.
stepdelay The delay between the steps in seconds.

Example#

ki = measmatic.get_device('device-keithley-4200')
ki.sweepi(ki.getinstid('SMU1'), 0.0, 1e-3, 11, 0.01)

method sweepv(instrId: int, startval: float, endval: float, stepno: int, stepdelay: float)#

Sweeps the voltage of a sourcing instrument from the start to the stop value.

Parameters#

Name Description
instrId The instrument identification code of the instrument, as returned by getinstid.
startval The start voltage in volts.
endval The stop voltage in volts.
stepno The number of steps.
stepdelay The delay between the steps in seconds.

Example#

ki = measmatic.get_device('device-keithley-4200')
ki.sweepv(ki.getinstid('SMU1'), 0.0, 10.0, 11, 0.01)

method tstsel(teststation: int)#

Selects the test station.

Parameters#

Name Description
teststation The number of the test station.

Example#

ki = measmatic.get_device('device-keithley-4200')
ki.tstsel(1)