Keithley 2000 Multimeter
- class pymeasure.instruments.keithley.Keithley2000(adapter, name='Keithley 2000 Multimeter', **kwargs)
Bases:
KeithleyBuffer
,SCPIUnknownMixin
,Instrument
Represents the Keithley 2000 Multimeter and provides a high-level interface for interacting with the instrument.
meter = Keithley2000("GPIB::1") meter.measure_voltage() print(meter.voltage)
- acquire_reference(mode=None)
Sets the active value as the reference for the active mode, or can set another mode by its name.
- Parameters
mode – A valid
mode
name, or None for the active mode
- auto_range(mode=None)
Sets the active mode to use auto-range, or can set another mode by its name.
- Parameters
mode – A valid
mode
name, or None for the active mode
- beep(frequency, duration)
Sounds a system beep.
- Parameters
frequency – A frequency in Hz between 65 Hz and 2 MHz
duration – A time in seconds between 0 and 7.9 seconds
- property beep_state
A string property that enables or disables the system status beeper, which can take the values:
enabled
anddisabled
.
- property buffer_data
Get a numpy array of values from the buffer.
- property buffer_points
Control the number of buffer points. This does not represent actual points in the buffer, but the configuration value instead.
- check_errors()
Read all errors from the instrument.
- Returns
List of error entries.
- check_get_errors()
Check for errors after having gotten a property and log them.
Called if
check_get_errors=True
is set for that property.If you override this method, you may choose to raise an Exception for certain errors.
- Returns
List of error entries.
- check_set_errors()
Check for errors after having set a property and log them.
Called if
check_set_errors=True
is set for that property.If you override this method, you may choose to raise an Exception for certain errors.
- Returns
List of error entries.
- clear()
Clear the instrument status byte.
- property complete
Get the synchronization bit.
This property allows synchronization between a controller and a device. The Operation Complete query places an ASCII character 1 into the device’s Output Queue when all pending selected device operations have been finished.
- config_buffer(points=64, delay=0)
Configures the measurement buffer for a number of points, to be taken with a specified delay.
- Parameters
points – The number of points in the buffer.
delay – The delay time in seconds.
- property current_ac_bandwidth
A floating point property that sets the AC current detector bandwidth in Hz, which can take the values 3, 30, and 300 Hz.
- property current_ac_digits
An integer property that controls the number of digits in the AC current readings, which can take values from 4 to 7.
- property current_ac_nplc
A floating point property that controls the number of power line cycles (NPLC) for the AC current measurements, which sets the integration period and measurement speed. Takes values from 0.01 to 10, where 0.1, 1, and 10 are Fast, Medium, and Slow respectively.
- property current_ac_range
A floating point property that controls the AC current range in Amps, which can take values from 0 to 3.1 A. Auto-range is disabled when this property is set.
- property current_ac_reference
A floating point property that controls the AC current reference value in Amps, which can take values from -3.1 to 3.1 A.
- property current_digits
An integer property that controls the number of digits in the DC current readings, which can take values from 4 to 7.
- property current_nplc
A floating point property that controls the number of power line cycles (NPLC) for the DC current measurements, which sets the integration period and measurement speed. Takes values from 0.01 to 10, where 0.1, 1, and 10 are Fast, Medium, and Slow respectively.
- property current_range
A floating point property that controls the DC current range in Amps, which can take values from 0 to 3.1 A. Auto-range is disabled when this property is set.
- property current_reference
A floating point property that controls the DC current reference value in Amps, which can take values from -3.1 to 3.1 A.
- disable_buffer()
Disables the connection between measurements and the buffer, but does not abort the measurement process.
- disable_filter(mode=None)
Disables the averaging filter for the active mode, or can set another mode by its name.
- Parameters
mode – A valid
mode
name, or None for the active mode
- disable_reference(mode=None)
Disables the reference for the active mode, or can set another mode by its name.
- Parameters
mode – A valid
mode
name, or None for the active mode
- enable_filter(mode=None, type='repeat', count=1)
Enables the averaging filter for the active mode, or can set another mode by its name.
- Parameters
mode – A valid
mode
name, or None for the active modetype – The type of averaging filter, either ‘repeat’ or ‘moving’.
count – A number of averages, which can take take values from 1 to 100
- enable_reference(mode=None)
Enables the reference for the active mode, or can set another mode by its name.
- Parameters
mode – A valid
mode
name, or None for the active mode
- property frequency_aperature
A floating point property that controls the frequency aperature in seconds, which sets the integration period and measurement speed. Takes values from 0.01 to 1.0 s.
- property frequency_digits
An integer property that controls the number of digits in the frequency readings, which can take values from 4 to 7.
- property frequency_reference
A floating point property that controls the frequency reference value in Hz, which can take values from 0 to 15 MHz.
- property frequency_threshold
A floating point property that controls the voltage signal threshold level in Volts for the frequency measurement, which can take values from 0 to 1010 V.
- property id
Get the identification of the instrument.
- is_buffer_full()
Returns True if the buffer is full of measurements.
- local()
Returns control to the instrument panel, and enables the panel if disabled.
- measure_continuity()
Configures the instrument to perform continuity testing.
- measure_current(max_current=0.01, ac=False)
Configures the instrument to measure current, based on a maximum current to set the range, and a boolean flag to determine if DC or AC is required.
- Parameters
max_current – A current in Volts to set the current range
ac – False for DC current, and True for AC current
- measure_diode()
Configures the instrument to perform diode testing.
- measure_frequency()
Configures the instrument to measure the frequency.
- measure_period()
Configures the instrument to measure the period.
- measure_resistance(max_resistance=10000000.0, wires=2)
Configures the instrument to measure voltage, based on a maximum voltage to set the range, and a boolean flag to determine if DC or AC is required.
- Parameters
max_voltage – A voltage in Volts to set the voltage range
ac – False for DC voltage, and True for AC voltage
- measure_temperature()
Configures the instrument to measure the temperature.
- measure_voltage(max_voltage=1, ac=False)
Configures the instrument to measure voltage, based on a maximum voltage to set the range, and a boolean flag to determine if DC or AC is required.
- Parameters
max_voltage – A voltage in Volts to set the voltage range
ac – False for DC voltage, and True for AC voltage
- property mode
A string property that controls the configuration mode for measurements, which can take the values:
current
(DC),current ac
,voltage
(DC),voltage ac
,resistance
(2-wire),resistance 4W
(4-wire),period
,temperature
,diode
, andfrequency
.
- property next_error
Get the next error in the queue. If you want to read and log all errors, use
check_errors()
instead.
- property options
Get the device options installed.
- property period_aperature
A floating point property that controls the period aperature in seconds, which sets the integration period and measurement speed. Takes values from 0.01 to 1.0 s.
- property period_digits
An integer property that controls the number of digits in the period readings, which can take values from 4 to 7.
- property period_reference
A floating point property that controls the period reference value in seconds, which can take values from 0 to 1 s.
- property period_threshold
A floating point property that controls the voltage signal threshold level in Volts for the period measurement, which can take values from 0 to 1010 V.
- read(**kwargs)
Read up to (excluding) read_termination or the whole read buffer.
- read_binary_values(**kwargs)
Read binary values from the device.
- read_bytes(count, **kwargs)
Read a certain number of bytes from the instrument.
- Parameters
count (int) – Number of bytes to read. A value of -1 indicates to read the whole read buffer.
kwargs – Keyword arguments for the adapter.
- Returns bytes
Bytes response of the instrument (including termination).
- remote()
Places the instrument in the remote state, which is does not need to be explicitly called in general.
- remote_lock()
Disables and locks the front panel controls to prevent changes during remote operations. This is disabled by calling
local()
.
- reset()
Resets the instrument state.
- reset_buffer()
Resets the buffer.
- property resistance
Reads a resistance measurement in Ohms for both 2-wire and 4-wire configurations, based on the active
mode
.
- property resistance_4W_digits
An integer property that controls the number of digits in the 4-wire resistance readings, which can take values from 4 to 7.
- property resistance_4W_nplc
A floating point property that controls the number of power line cycles (NPLC) for the 4-wire resistance measurements, which sets the integration period and measurement speed. Takes values from 0.01 to 10, where 0.1, 1, and 10 are Fast, Medium, and Slow respectively.
- property resistance_4W_range
A floating point property that controls the 4-wire resistance range in Ohms, which can take values from 0 to 120 MOhms. Auto-range is disabled when this property is set.
- property resistance_4W_reference
A floating point property that controls the 4-wire resistance reference value in Ohms, which can take values from 0 to 120 MOhms.
- property resistance_digits
An integer property that controls the number of digits in the 2-wire resistance readings, which can take values from 4 to 7.
- property resistance_nplc
A floating point property that controls the number of power line cycles (NPLC) for the 2-wire resistance measurements, which sets the integration period and measurement speed. Takes values from 0.01 to 10, where 0.1, 1, and 10 are Fast, Medium, and Slow respectively.
- property resistance_range
A floating point property that controls the 2-wire resistance range in Ohms, which can take values from 0 to 120 MOhms. Auto-range is disabled when this property is set.
- property resistance_reference
A floating point property that controls the 2-wire resistance reference value in Ohms, which can take values from 0 to 120 MOhms.
- shutdown()
Brings the instrument to a safe and stable state
- start_buffer()
Starts the buffer.
- property status
Get the status byte and Master Summary Status bit.
- stop_buffer()
Aborts the buffering measurement, by stopping the measurement arming and triggering sequence. If possible, a Selected Device Clear (SDC) is used.
- property temperature_digits
An integer property that controls the number of digits in the temperature readings, which can take values from 4 to 7.
- property temperature_nplc
A floating point property that controls the number of power line cycles (NPLC) for the temperature measurements, which sets the integration period and measurement speed. Takes values from 0.01 to 10, where 0.1, 1, and 10 are Fast, Medium, and Slow respectively.
- property temperature_reference
A floating point property that controls the temperature reference value in Celsius, which can take values from -200 to 1372 C.
- property trigger_count
An integer property that controls the trigger count, which can take values from 1 to 9,999.
- property trigger_delay
A floating point property that controls the trigger delay in seconds, which can take values from 1 to 9,999,999.999 s.
- property voltage_ac_bandwidth
A floating point property that sets the AC voltage detector bandwidth in Hz, which can take the values 3, 30, and 300 Hz.
- property voltage_ac_digits
An integer property that controls the number of digits in the AC voltage readings, which can take values from 4 to 7.
- property voltage_ac_nplc
A floating point property that controls the number of power line cycles (NPLC) for the AC voltage measurements, which sets the integration period and measurement speed. Takes values from 0.01 to 10, where 0.1, 1, and 10 are Fast, Medium, and Slow respectively.
- property voltage_ac_range
A floating point property that controls the AC voltage range in Volts, which can take values from 0 to 757.5 V. Auto-range is disabled when this property is set.
- property voltage_ac_reference
A floating point property that controls the AC voltage reference value in Volts, which can take values from -757.5 to 757.5 Volts.
- property voltage_digits
An integer property that controls the number of digits in the DC voltage readings, which can take values from 4 to 7.
- property voltage_nplc
A floating point property that controls the number of power line cycles (NPLC) for the DC voltage measurements, which sets the integration period and measurement speed. Takes values from 0.01 to 10, where 0.1, 1, and 10 are Fast, Medium, and Slow respectively.
- property voltage_range
A floating point property that controls the DC voltage range in Volts, which can take values from 0 to 1010 V. Auto-range is disabled when this property is set.
- property voltage_reference
A floating point property that controls the DC voltage reference value in Volts, which can take values from -1010 to 1010 V.
- wait_for(query_delay=0)
Wait for some time. Used by ‘ask’ to wait before reading.
- Parameters
query_delay – Delay between writing and reading in seconds.
- wait_for_buffer(should_stop=<function KeithleyBuffer.<lambda>>, timeout=60, interval=0.1)
Blocks the program, waiting for a full buffer. This function returns early if the
should_stop
function returns True or the timeout is reached before the buffer is full.- Parameters
should_stop – A function that returns True when this function should return early
timeout – A time in seconds after which this function should return early
interval – A time in seconds for how often to check if the buffer is full
- write(command, **kwargs)
Write a string command to the instrument appending write_termination.
- Parameters
command – command string to be sent to the instrument
kwargs – Keyword arguments for the adapter.
- write_binary_values(command, values, *args, **kwargs)
Write binary values to the device.
- Parameters
command – Command to send.
values – The values to transmit.
**kwargs (*args,) – Further arguments to hand to the Adapter.
- write_bytes(content, **kwargs)
Write the bytes content to the instrument.