Electrometer¶
Note
This page is generated by python script generate_cet.py
.
Commands¶
performZeroCalib¶
Description: Performs a zero correction in the device. This will correct any internal offsets that might upset accuracy for voltage and current measurements. It’s recommended to perform this zero correction every time the range changes. The steps taken to perform this comes from the datasheet 6517B-901-01 Rev. B / June 2009 under Zero correct. It is as following. 1- Enable Zero check, 2- Set mode, 3- Set range, 4- Enable Zero Correction, 5- Disable Zero check. For unit and range, it uses the last values selected, either via command or from the configuration file. A zero calibration is performed any time the mode or range is set.
- EFDB_Topic:
Electrometer_command_performZeroCalib
value¶
- IDL_Type:
boolean
- Units:
unitless
Description: Attribute required by the API, but is unused
setDigitalFilter¶
Description: Configures the digital filter in the device. Filtering stabilizes noisy measurements caused by noisy input signals. Be aware that activating any filters will reduce the number of readings per second the device will be able to handle. The Electrometer has two types of filters: Averaging and Median. Note that both filters can be enabled at the same time. If so, each reading will reflect the median for the average readings. In order to enable either of these filters, one must set the activateFilter to ON (1). Any reading taken when a filter is enabled will be the result of the filtering process.
- EFDB_Topic:
Electrometer_command_setDigitalFilter
activateFilter¶
- IDL_Type:
boolean
- Units:
unitless
Description: Enables ability to the activate either filter. If this is OFF (set to False), neither of the filters will operate regardless of their settings below.
activateAvgFilter¶
- IDL_Type:
boolean
- Units:
unitless
Description: Activate the average filter inside the electrometer, True for ON and False for OFF. This filter takes the average of the last 10 readings (default) in the moving mode (first-in, first-out stack).
activateMedFilter¶
- IDL_Type:
boolean
- Units:
unitless
Description: The median filter is used to determine the middle-most reading from a group of readings that are arranged according to size. Activate the median filter inside the electrometer, True for ON and False for OFF. The rank (R) of this filter is set at 1, such that the number of samples that it will determine the median of is (2xR) + 1. If there is a sudden change in signal, 2R readings will be needed before establishing the true median value.
setIntegrationTime¶
Description: The integration time (measurement speed) of the analog to digital (A/D) converter, the period of time the input signal is measured (also known as aperture). Due to the time it takes to read the buffer and process the data, this is not the rate at which samples are taken. This is generally specified by the Power Line Cycle (PLC), where 1 PLC for 60Hz is 16.67msec. Fast integration=0.01PLC; Medium integration=0.1PLC; Normal (default) integration = 1PLC; High Accuracy integration=10PLC. Here the integration is set in seconds.
- EFDB_Topic:
Electrometer_command_setIntegrationTime
intTime¶
- IDL_Type:
float
- Units:
second
Description: Integration time in seconds (166.67e-6 to 200e-3) for each sample. Default is 16.67e-3sec (1PLC).
setMode¶
Description: Set unit to measure. The modes are: Current, Voltage, Charge or Resistance. When the mode is changed to Current or Voltage, a zero correction will be performed. When the mode is set to Charge, a zero check will be performed. Use the UnitToRead enum to send the correct value for each.
- EFDB_Topic:
Electrometer_command_setMode
mode¶
- IDL_Type:
long
- Units:
unitless
Description: Set electrometer to use different modes: Current (‘CURR’), Voltage (‘VOLT’), Charge (‘CHAR’), Resistance (‘RES’). The units recorded will be Amps, Volts, Coulombs, and Ohms respectively.
setRange¶
Description: Set measurement range, which effects the accuracy of measurements and the max signal that can be measured. The maximum input signal is 105% of the measurement range. It will set the value for the current mode selected. Auto-range will automatically go to the most sensitive (optimized) range to make measurements. It is recommended to use autorange. When the measurement range is changed, a zero correction will be performed.
- EFDB_Topic:
Electrometer_command_setRange
setRange¶
- IDL_Type:
float
- Units:
unitless
Description: -1 for automatic range. Volts range from 0 to 210 Volts, Current range from 0 to 21e-3 Amps, Resistance from 0 to 100e18 Ohms, Charge from 0 to +2.1e-6 Coulombs.
setVoltageSource¶
Description: The voltage source sends an output to the electrometer which can be written to the buffer.
- EFDB_Topic:
Electrometer_command_setVoltageSource
status¶
- IDL_Type:
boolean
- Units:
unitless
Description: Toggle the voltage source.
level¶
- IDL_Type:
long
- Units:
V
Description: The voltage amplititude.
range¶
- IDL_Type:
long
- Units:
V
Description: The voltage value to use along the range set by the voltage limit.
voltage_limit¶
- IDL_Type:
long
- Units:
V
Description: Set the voltage limit that can be used.
startScan¶
Description: Start storing readings inside the electrometer buffer. This command will change detailedState from NotReadingState to ManualReadingState and continues storing data into the buffer. The data will be published to the LFA when stopScan command is received or a timeout occurs (300 seconds).
- EFDB_Topic:
Electrometer_command_startScan
value¶
- IDL_Type:
boolean
- Units:
unitless
Description: Attribute required by the API, but is unused
groupId¶
- IDL_Type:
string
- Units:
unitless
Description: Optional group ID for the electrometer reading.
startScanDt¶
Description: Start storing readings inside the electrometer buffer for a fixed time given by scanDuration. This command will change detailedState from NotReadingState to SetDurationReadingState. It will stop storing data into the buffer and publish the LFA event when the duration has completed. If no scanDuration is given, the command will fault.
- EFDB_Topic:
Electrometer_command_startScanDt
scanDuration¶
- IDL_Type:
float
- Units:
second
Description: Time in seconds from the start of the reading until the reading stops.
groupId¶
- IDL_Type:
string
- Units:
unitless
Description: Optional group ID for the electrometer reading.
stopScan¶
Description: Command to stop a current reading process. When it finishes stopping the process, it will read the data from the buffer and will publish the LFA event.
- EFDB_Topic:
Electrometer_command_stopScan
value¶
- IDL_Type:
boolean
- Units:
unitless
Description: Attribute required by the API, but is unused.
disable¶
Description: Transition from state Enabled to Disabled.
- EFDB_Topic:
SALGeneric_command_disable
- Category:
csc
enable¶
Description: Transition from state Disabled to Enabled.
- EFDB_Topic:
SALGeneric_command_enable
- Category:
csc
exitControl¶
Description: Transition from state Standby to Offline. Most CSCs will quit, but CSCs that support the enterControl command will keep running.
- EFDB_Topic:
SALGeneric_command_exitControl
- Category:
csc
setLogLevel¶
Description: Set the logging level.
- EFDB_Topic:
SALGeneric_command_setLogLevel
- Category:
csc
level¶
- IDL_Type:
int
- Units:
unitless
Description: Logging level, as a Python logging level: error=40, warning=30, info=20, debug=10.
subsystem¶
- IDL_Type:
string
- Units:
unitless
Description: If this CSC itself has sub-ordinate components, they may be listed here. An empty string means the setting applies to all such sub-ordinate components, or just to this CSC itself.
standby¶
Description: Transition from state Offline/Available, Disabled or Fault to Standby.
- EFDB_Topic:
SALGeneric_command_standby
- Category:
csc
start¶
Description: Transition from state Standby to Disable, in a specified configuration.
- EFDB_Topic:
SALGeneric_command_start
- Category:
csc
configurationOverride¶
- IDL_Type:
string
- Units:
unitless
- Description:
Configuration override in the form [{name}][:{version}]. For salobj-based CSCs: name is a filename with “.yaml” suffix and version is a git hash; for example:
“foo.yaml” specifies just a file. Two or three config files are loaded: “_init.yaml”, “_{site}.yaml” (if present), and “foo.yaml”.
“:37bf936” specifies just a git hash. One or two config files are loaded from the specified git commit: “_init.yaml” and “_{site}.yaml” (if present.
“bar.yaml:HEAD~2” specifies both a file and a git hash. Two or three config files are read from the specified git commit: “_init.yaml”, “_{site}.yaml” (if present), and “bar.yaml”.
Enumerations¶
- DetailedState:
DisabledState
EnabledState
FaultState
OfflineState
StandbyState
NotReadingState
ConfiguringState
ManualReadingState
ReadingBufferState
SetDurationReadingState
- UnitToRead:
Current
Charge
Voltage
Resistance
Events¶
detailedState¶
Description: The substate.
- EFDB_Topic:
Electrometer_logevent_detailedState
detailedState¶
- IDL_Type:
long
- Units:
unitless
Description: An enumeration indicating the Electrometer detailed state. See the DetailedStateValue enumeration defined on top of this document.
deviceErrorCode¶
Description: The error code returned by the device.
- EFDB_Topic:
Electrometer_logevent_deviceErrorCode
errorCode¶
- IDL_Type:
long
- Units:
unitless
Description: The error code being published. This code is the same as the one that the Electrometer publishes
errorReport¶
- IDL_Type:
string
- Units:
unitless
Description: Handle a few sentences of higher-level information describing the error.
digitalFilterChange¶
Description: Current state of the digital filter setup. The Electrometer has two types of filters: Averaging and Median. Note that both filters can be enabled at the same time. In order to enable either of these filters, one must set the activateFilter to ON (True).
- EFDB_Topic:
Electrometer_logevent_digitalFilterChange
activateFilter¶
- IDL_Type:
boolean
- Units:
unitless
Description: If this is OFF, none of the filters will operate. False for not active and True for active
activateMedianFilter¶
- IDL_Type:
boolean
- Units:
unitless
Description: Activate the median filter inside the electrometer: True for active and False for not active. Will use the Default value of Rank (R) = 1, such that the number of samples that it will determine the median of is (2xR) + 1.
activateAverageFilter¶
- IDL_Type:
boolean
- Units:
unitless
Description: Activate the average filter inside the electrometer: True for active and False for not active. Will use the Default value inside the device (last 10 readings) to do the average calculation.
integrationTime¶
Description: The integration time (measurement speed) of the analog to digital (A/D) converter, the period of time the input signal is measured (also known as aperture). This will directly affect reading rates. Default is 16.67ms.
- EFDB_Topic:
Electrometer_logevent_integrationTime
intTime¶
- IDL_Type:
float
- Units:
second
Description: Integration rate in seconds (166.67e-6 to 200e-3)
intensity¶
Description: Intensity of light measured with the photo-diode in the unit previously configured.
- EFDB_Topic:
Electrometer_logevent_intensity
intensity¶
- IDL_Type:
double
- Units:
unitless
Description: Measure read by the device
unit¶
- IDL_Type:
string
- Units:
unitless
Description: Unit used
timestamp¶
- IDL_Type:
double
- Units:
second
Description: Timestamp when the measurement was taken
logicTimerEnd¶
Description: The logic timer has ended.
- EFDB_Topic:
Electrometer_logevent_logicTimerEnd
timestamp¶
- IDL_Type:
long
- Units:
second
Description: The TAI time that the logic timer ended.
logicTimerStart¶
Description: The logic timer which manages the timing of the TunableLaser triggering a burst has started.
- EFDB_Topic:
Electrometer_logevent_logicTimerStart
timestamp¶
- IDL_Type:
long
- Units:
second
Description: The TAI time that the logic timer triggered.
measureRange¶
Description: Measurement range for the mode selected. This impacts the accuracy and max signal that can be measured (105% of the range). Auto-range is set at -1, will automatically go to the most sensitive range. Note that when in auto-range the true range used is not always published. Volts range from 0 to 210V, Current range from 0 to 21e-3Amps, Resistance from 0 to 100e18, Charge from 0 to +2.1e-6
- EFDB_Topic:
Electrometer_logevent_measureRange
rangeValue¶
- IDL_Type:
double
- Units:
unitless
Description: The range for the intensity for measure selected.
measureType¶
Description: Current mode selected to read from the photodiode. Options are Current, Charge, Voltage and Resistance.
- EFDB_Topic:
Electrometer_logevent_measureType
mode¶
- IDL_Type:
long
- Units:
unitless
Description: mode: ‘CURR’- Current, ‘CHAR’- Charge, ‘VOLT’- Voltage, ‘RES’- Resistance
settingsAppliedReadSets¶
Description: Initial configuration of the electrometer, this has been set in the current configuration file in use
- EFDB_Topic:
Electrometer_logevent_settingsAppliedReadSets
filterActive¶
- IDL_Type:
boolean
- Units:
unitless
Description: Digital Filter configuration. If this is OFF, none of the filters will operate
avgFilterActive¶
- IDL_Type:
boolean
- Units:
unitless
Description: Average digital filter status inside the electrometer, it uses the Default value inside the device (last 10 readings) to do the average calculation, True for ON and False for OFF
inputRange¶
- IDL_Type:
double
- Units:
unitless
Description: Ranges use to read values from the photodiode using the current Mode. -1 for automatic range. Volts range from 0 to 210V, Current range from 0 to 21e-3Amps, Resistance from 0 to 100e18, Charge from 0 to +2.1e-6
integrationTime¶
- IDL_Type:
double
- Units:
second
Description: Integration rate, this will directly affect reading rates but reading rates are not going to be the same as integration rates
medianFilterActive¶
- IDL_Type:
boolean
- Units:
unitless
Description: The median filter is used to determine the middle-most reading from a group of readings that are arranged according to size. Activate the median filter inside the electrometer, true for ON and False for OFF
mode¶
- IDL_Type:
string
- Units:
unitless
Description: Mode used in the configuration file, CURR, CHAR, VOLT, RES
settingsAppliedSerConf¶
Description: Serial configuration for the Electrometer port. This configuration needs to be the same as the one set in the Electrometer device. For proper configuration please read the reference manual 6517B-901-01 Rev. B / June 2009 section Selecting interface parameters
- EFDB_Topic:
Electrometer_logevent_settingsAppliedSerConf
visaResource¶
- IDL_Type:
string
- Units:
unitless
Description: Visa resource or port
baudRate¶
- IDL_Type:
long
- Units:
unitless
Description: Baud rate as a number. Allowed values are: 2400, 4800, 9600, 14400, 19200, 38400, 57600, 115200
parity¶
- IDL_Type:
long
- Units:
unitless
Description: Parity checking. PARITY_NONE=0, PARITY_EVEN=1, PARITY_ODD=2, PARITY_MARK=3, PARITY_SPACE=4
dataBits¶
- IDL_Type:
long
- Units:
unitless
Description: Number of data bits. Possible values: 5, 6, 7, 8
stopBits¶
- IDL_Type:
long
- Units:
unitless
Description: Number of stop bits. Possible values: 1, 2
timeout¶
- IDL_Type:
float
- Units:
unitless
Description: time out in seconds
termChar¶
- IDL_Type:
string
- Units:
unitless
Description: termination char, endl for end line
xonxoff¶
- IDL_Type:
boolean
- Units:
unitless
Description: Software flow control.
dsrdtr¶
- IDL_Type:
boolean
- Units:
unitless
Description: hardware (DSR/DTR) flow control
bytesToRead¶
- IDL_Type:
long
- Units:
unitless
Description: The maximum amount of bytes to read
voltageSourceChanged¶
Description: The voltage source sends an output to the electrometer which can be written to the buffer.
- EFDB_Topic:
Electrometer_logevent_voltageSourceChanged
status¶
- IDL_Type:
boolean
- Units:
unitless
Description: Is the voltage source enabled (true) or not (false)?
level¶
- IDL_Type:
long
- Units:
V
Description: The voltage amplititude.
range¶
- IDL_Type:
long
- Units:
V
Description: The voltage value to use along the range set by the voltage limit.
voltage_limit¶
- IDL_Type:
long
- Units:
V
Description: Set the voltage limit that can be used.
configurationApplied¶
Description: Information about this CSC’s current configuration overrides.
- EFDB_Topic:
SALGeneric_logevent_configurationApplied
- Category:
configurable
configurations¶
- IDL_Type:
string
- Units:
unitless
Description: A comma-separated list of configurations applied. If configuration comes from a clone of a git repo, or similar directory, then it will be a list of file names, without the file extension. Ignore whitespace after commas.
version¶
- IDL_Type:
string
- Units:
unitless
Description: Version of the configuration source. For a clone of a git repo it will be a git hash.
url¶
- IDL_Type:
string
- Units:
unitless
Description: URL of the configuration source. For a clone of a git repo this will be a file URL. For a database it will be a standard database URL. This should always match the same-named field in configurationsAvailable.
schemaVersion¶
- IDL_Type:
string
- Units:
unitless
Description: Version of config schema used by this CSC. For a configuration git repo, this is the name of a folder in the config package, and is typically something like “v1”. This should always match the same-named field in configurationsAvailable.
otherInfo¶
- IDL_Type:
string
- Units:
unitless
Description: A comma-separated list of event topics (without the logevent prefix) used to publish the entire set of configuration parameters loaded by this CSC, and any other pertinent information. Ignore whitespace after commas.
configurationsAvailable¶
Description: Available configuration overrides for this CSC.
- EFDB_Topic:
SALGeneric_logevent_configurationsAvailable
- Category:
configurable
overrides¶
- IDL_Type:
string
- Units:
unitless
Description: Available overrides as a comma-separated list. Each entry is a possible value of the configurationOverride
field of the start
command. Ignore whitespace after commas.
version¶
- IDL_Type:
string
- Units:
unitless
Description: Version of the configuration source. For a clone of a git repo it will be a git hash.
url¶
- IDL_Type:
string
- Units:
unitless
Description: URL of the configuration source. For a clone of a git repo this will be a file URL. For a database it will be a standard database URL.
schemaVersion¶
- IDL_Type:
string
- Units:
unitless
Description: Version of config schema used by this CSC. For a configuration git repo, this is the name of a folder in the config package, and is typically something like “v1”.
errorCode¶
Description: Output when this CSC goes into the Fault state as an explanation of the problem.
- EFDB_Topic:
SALGeneric_logevent_errorCode
- Category:
csc
errorCode¶
- IDL_Type:
long
- Units:
unitless
Description: A numeric error code.
errorReport¶
- IDL_Type:
string
- Units:
unitless
Description: An string providing detailed information about the error.
traceback¶
- IDL_Type:
string
- Units:
unitless
Description: An optional stack trace of the error condition.
heartbeat¶
Description: Event output at regular intervals (typcally once per second) to show that the SAL component is alive.
- EFDB_Topic:
SALGeneric_logevent_heartbeat
- Category:
mandatory
heartbeat¶
- IDL_Type:
boolean
- Units:
unitless
Description: Deprecated field that you should ignore.
largeFileObjectAvailable¶
Description: A new large file object is available.
- EFDB_Topic:
SALGeneric_logevent_largeFileObjectAvailable
url¶
- IDL_Type:
string
- IDL_Size:
256
- Units:
unitless
Description: A Uniform Resource Locator which links to a Large File Object either for ingest into the EFD Large File Annex, or to announce the successful copy of same to the EFD Large File Annex.Protocols are those supported by the cURL library.
generator¶
- IDL_Type:
string
- IDL_Size:
256
- Units:
unitless
Description: Name of the package which generated the file being announced.
version¶
- IDL_Type:
float
- Units:
unitless
Description: A dotted x.y version number denoting the file format revision.
byteSize¶
- IDL_Type:
long
- Units:
unitless
Description: Size of file in bytes.
checkSum¶
- IDL_Type:
string
- IDL_Size:
256
- Units:
unitless
Description: Hexadecimal character string holding the checksum of the file.
mimeType¶
- IDL_Type:
string
- IDL_Size:
256
- Units:
unitless
Description: Mime Type code for the file.
id¶
- IDL_Type:
string
- IDL_Size:
256
- Units:
unitless
Description: A generic identifier field.
logLevel¶
Description: Current logging level.
- EFDB_Topic:
SALGeneric_logevent_logLevel
- Category:
mandatory
level¶
- IDL_Type:
int
- Units:
unitless
Description: Current logging level, a Python logging level: error=40, warning=30, info=20, debug=10.
subsystem¶
- IDL_Type:
string
- Units:
unitless
Description: If this CSC itself has sub-ordinate components, they may be listed here. An empty string means the setting applies to all such sub-ordinate components, or just to this CSC itself.
logMessage¶
Description: A log message.
- EFDB_Topic:
SALGeneric_logevent_logMessage
- Category:
mandatory
name¶
- IDL_Type:
string
- Units:
unitless
Description: Log name.
level¶
- IDL_Type:
int
- Units:
unitless
Description: Message level, a Python logging level: error=40, warning=30, info=20, debug=10.
message¶
- IDL_Type:
string
- Units:
unitless
Description: Log message.
traceback¶
- IDL_Type:
string
- Units:
unitless
Description: Exception traceback; “” if not an exception.
filePath¶
- IDL_Type:
string
- Units:
unitless
Description: Path to source file.
functionName¶
- IDL_Type:
string
- Units:
unitless
Description: Function or method name.
lineNumber¶
- IDL_Type:
long
- Units:
unitless
Description: Line number in the file specified by filePath.
process¶
- IDL_Type:
long
- Units:
unitless
Description: Process ID.
timestamp¶
- IDL_Type:
double
- Units:
second
Description: The time at which the condition being reported was observed (TAI unix seconds). 0 if unspecified.
simulationMode¶
Description: Current simulation mode.
- EFDB_Topic:
SALGeneric_logevent_simulationMode
- Category:
csc
mode¶
- IDL_Type:
int
- Units:
unitless
Description: Current simulation mode; 0 for normal operation (no simulation); other supported values are specific to each CSC.
softwareVersions¶
Description: Current versions of software in use by CSC.
- EFDB_Topic:
SALGeneric_logevent_softwareVersions
- Category:
mandatory
salVersion¶
- IDL_Type:
string
- IDL_Size:
256
- Units:
unitless
Description: This is the current version of SAL generation.
xmlVersion¶
- IDL_Type:
string
- IDL_Size:
256
- Units:
unitless
Description: This is the current version of CSC XML.
openSpliceVersion¶
- IDL_Type:
string
- IDL_Size:
256
- Units:
unitless
Description: This is the current version of OpenSplice.
cscVersion¶
- IDL_Type:
string
- IDL_Size:
256
- Units:
unitless
Description: The software version of this CSC.
subsystemVersions¶
- IDL_Type:
string
- Units:
unitless
Description: A comma delimited list of key=value pairs relating subsystem name (key) to its version number (value). This may be left blank if there are no subsystems within this CSC.
summaryState¶
Description: Current summary state of this CSC.
- EFDB_Topic:
SALGeneric_logevent_summaryState
- Category:
csc
summaryState¶
- IDL_Type:
long
- Units:
unitless
Description: High level state machine state identifier.