Keithley Programmable Electrometer model 6514¶
This is the basic Python class to …
Using EPICS Lauda thermostats module¶
Usage of Python class for EPICS Keithley Programmable Electrometer model 6514.
-
class
py4syn.epics.Keithley6514Class.
Keithley6514
(pvName, mnemonic, timeBased=False)[source]¶ Python class to help configuration and control the Keithley 6514 Electrometer.
Keithley is an electrical instrument for measuring electric charge or electrical potential difference. This instrument is capable of measuring extremely low currents. E.g.: pico (10e-12), i.e.: 0,000 000 000 001.
For more information, please, refer to: Model 6514 System Electrometer Instruction Manual
Constructor To use this Keithley Class you must pass the PV (Process Variable) prefix.
Note
e.g.: SXS:K6514
Examples
>>> from KeithleyClass import * >>> name = Keithley('SOL:K6514', 'k1')
-
canMonitor
()[source]¶ Abstract method to check if the device can or cannot be used as monitor.
Returns: - out : bool
-
canStopCount
()[source]¶ Abstract method to check if the device can or cannot stop the count and return values.
Returns: - out : bool
-
getAutoCurrentRange
()[source]¶ Get the status of Auto Current Range (enable/disable). Default: enable.
Returns: - Value: Boolean, i.e.: 0 - False (Off/Disable), 1 - True (On/Enable).
Examples
>>> name.getAutoCurrentRange() >>> True
-
getAutoZeroing
()[source]¶ Get the status of Auto Zero (enable/disable). Default: enable.
Returns: - Value: Boolean, i.e.: 0 - False (Off/Disable), 1 - True (On/Enable).
Examples
>>> name.getAutoZeroing() >>> True
-
getAverageCount
()[source]¶ Get the number of filter count. Default: 10.
Returns: - Value: Integer, i.e.: 2 to 100.
Examples
>>> name.getAverageCount() >>> 10.0
-
getAverageDigitalFilter
()[source]¶ Get the status of Digital Filter (enable/disable). Default: enable.
Returns: - Value: Boolean, i.e.: 0 - False (Off/Disable), 1 - True (On/Enable).
Examples
>>> name.getAverageDigitalFilter() >>> True
-
getAverageTControl
()[source]¶ Get the filter control. Default: REP.
Returns: - Value: String, i.e.: REP or MOV.
Examples
>>> name.getAverageTControl() >>> 'REP'
-
getCountNumberReading
()[source]¶ Count the number of reading(s).
Returns: - Value: Integer, e.g.: 963.
Examples
>>> name.CountNumberReading() >>> 161.0
-
getCurrentRange
()[source]¶ Get the value of range. Default: Auto range.
Returns: - Value: Integer, i.e.:
- 0 (Undefined ZERO), 1 (Indefined UM), 2 (20 mA), 3 (2 mA), 4 (200 uA), 5 (20 uA), 6 (2 uA), 7 (200 nA), 8 (20 nA), 9 (2 nA), 10 (200 pA), 11 (20 pA).
Examples
>>> name.getCurrentRange() >>> 11
-
getIntegrationTime
()[source]¶ Get the number of integration rate. Default: 1.
Returns: - Value: Float, i.e.: 0.01 to 10 (PLCs). Where 1 PLC for 60Hz is 16.67msec (1/60).
Examples
>>> name.getIntegrationTime() >>> 1.0
-
getMedianFilter
()[source]¶ Get the status of Median Filter (enable/disable). Default: enable.
Returns: - Value: Boolean, i.e.: 0 - False (Off/Disable), 1 - True (On/Enable).
Examples
>>> name.getMedianFilter() >>> True
-
getMedianRank
()[source]¶ Get the value of Median Rank, this number of sample readings are between 1 to 5. Default: 5.
Returns: - Value: Integer, i.e.: 1 to 5.
Examples
>>> name.getMedianRank() >>> 5.0
-
getStatusContinuesMode
()[source]¶ Get the status of Continues Mode (enable/disable). Default: enable.
Returns: - Value: Boolean, i.e.: 0 - False (Off/Disable), 1 - True (On/Enable).
Examples
>>> name.getStatusContinuesMode() >>> True
-
getTriggerReading
()[source]¶ Trigger and return reading(s).
Returns: - Value: Float, e.g.: -6.0173430000000003e-16.
Examples
>>> name.getTriggerReading() >>> -1.0221850000000001e-15
-
getValue
(**kwargs)[source]¶ Get the current value of a countable device.
Parameters: - kwargs : value
Where needed informations can be passed, e.g. select which channel must be read.
Returns: - out : value
Returns the current value of the device. Type of the value depends on device settings.
-
getZeroCheck
()[source]¶ Get the status of Zero Check (enable/disable). Default: disable.
Returns: - Value: Boolean, i.e.: 0 - False (Off/Disable), 1 - True (On/Enable).
Examples
>>> name.getZeroCheck() >>> False
-
getZeroCorrect
()[source]¶ Get the status of Zero Correct (enable/disable). Default: disable.
Returns: - Value: Boolean, i.e.: 0 - False (Off/Disable), 1 - True (On/Enable).
Examples
>>> name.getZeroCorrect() >>> False
-
isCounting
()[source]¶ Abstract method to check if the device is counting or not.
Returns: - out : bool
-
setAutoCurrentRange
(autorange)[source]¶ Set enable/disable for Auto Current Range.
Parameters: - Value: Boolean, i.e.: 0 - False (Off/Disable), 1 - True (On/Enable).
Returns: - One value (1).
Examples
>>> name.setAutoCurrentRange(1) >>> 1
-
setAutoZeroing
(autozero)[source]¶ Set enable/disable for Auto Zero.
Parameters: - Value: Boolean, i.e.: 0 - False (Off/Disable), 1 - True (On/Enable).
Examples
>>> name.setAutoZeroing(1)
-
setAverageCount
(avercoun)[source]¶ Set the number of filter count.
Parameters: - Value: Integer, i.e.: 2 to 100.
Examples
>>> name.setAverageCount(80)
-
setAverageDigitalFilter
(aver)[source]¶ Set enable/disable for Digital Filter.
Parameters: - Value: Boolean, i.e.: 0 - False (Off/Disable), 1 - True (On/Enable).
Examples
>>> name.setAverageDigitalFilter(1)
-
setAverageTControl
(tcon)[source]¶ Set the filter control.
Parameters: - Value: String, i.e.: ‘REP’ or ‘MOV’, where REP means ‘Repeat’ and MOV means ‘Moving’.
Examples
>>> name.setAverageTControl('MOV')
-
setCountTime
(time)[source]¶ Method to set the count time of a Keithley device.
Note
Whenever the median filter is active, changing the count time results in the filter being reset, so the first measurement will take additional time to collect new data for the filter. The extra time is proportional to the median filter rank. After the first measurement, the following measurements will have the correct integration time.
Note
Unlike scalers, the count time is only an approximation. The requested integration time will be split into multiple parts, which includes the analog integration time (varying between approximatelly 10ms to 50ms), the digital integration time (that averages a set of 2 to 100 analog integrations), and other operations unrelated to integration, like auto zero calibration (triples the integration time) and calculation times. When calling this method, the digital average filter will be activated if it’s not already and the filter type will be set to repeat.
See also:
setIntegrationTime()
,setAverageCount()
Parameters: - time : value
The target count time to be set. The allowed time range is 100ms to 15s (limited by software).
Returns: - out : None
-
setCurrentRange
(curange)[source]¶ Set the range.
Parameters: - Value: Integer, i.e.:
- 0 (Undefined ZERO), 1 (Indefined UM), 2 (20 mA), 3 (2 mA), 4 (200 uA), 5 (20 uA), 6 (2 uA), 7 (200 nA), 8 (20 nA), 9 (2 nA), 10 (200 pA), 11 (20 pA).
Examples
>>> name.setCurrentRange(5)
-
setIntegrationTime
(nplc)[source]¶ Set the number of integration rate.
Parameters: - Value: Float, i.e.: 0.01 to 10 (PLCs). Where 1 PLC for 60Hz is 16.67msec (1/60).
Examples
>>> name.setIntegrationTime(0.01)
-
setMedianFilter
(med)[source]¶ Set enable/disable for Median Filter.
Parameters: - Value: Boolean, i.e.: 0 - False (Off/Disable), 1 - True (On/Enable).
Examples
>>> name.setMedianFilter(1)
-
setMedianRank
(medrank)[source]¶ Set the number of sample readings used for the median calculation.
Parameters: - Value: Integer, i.e.: 1 to 5.
Examples
>>> name.setMedianRank(3)
-
setPresetValue
(channel, val)[source]¶ Abstract method to set the preset count of a countable target device.
Parameters: - channel : int
The monitor channel number
- val : int
The preset value
Returns: - out : None
-
setStatusContinuesMode
(cmode)[source]¶ Set enable/disable to continues mode. Let this enable if you want a continuing measuring.
Parameters: - Value: Boolean, i.e.: 0 - False (Off/Disable), 1 - True (On/Enable).
Examples
>>> name.setStatusContinuesMode(0)
-
setZeroCheck
(check)[source]¶ Set enable/disable for Zero Check.
Parameters: - Value: Boolean, i.e.: 0 - False (Off/Disable), 1 - True (On/Enable).
Returns: - One value (1).
Examples
>>> name.setZeroCheck(1) >>> 1
-