DEVice - Device specification and properties
Device properties of Spektralwerk Core can be accessed using the DEVice root path. The individual information is deposited on the spectrometer during initialization. Most of the properties can not be altered by the user but provide necessary information about the internally used spectrometer head.
:CONSumption - Electrical consumption
query only
The electrical consumption of the Spektralwerk Core can be monitored using DEVice:CONSumption path.
Parent path: DEVice:CONSumption
| SCPI String | Query ? |
Command [<INPUT VALUE>] |
|---|---|---|
:CURRent |
returns the current consumption | - |
:UNIT |
returns the unit of the current consumptio | - |
:POWer |
returns the power consumption | - |
:UNIT |
returns the unit of the power consumption | - |
:VOLTage |
returns the voltage consumption | - |
:UNIT |
returns the unit of the voltage consumption | - |
Example:
> DEVice:CONSumption:CURRent?
> DEVice:CONSumption:CURRent:UNIT?
I
> DEVice:CONSumption:POWer?
> DEVice:CONSumption:POWer:UNIT?
W
> DEVice:CONSumption:VOLTage?
> DEVice:CONSumption:VOLTage:UNIT?
V
:SPECtrometer - Spectrometer head properties
The spectrometer head represents a fundamental component of a Spektralwerk Core. Head-specific properties are found below the subcommand DEVice:SPECtrometer.
:ARRay - Spectrometer array properties
Technical properties concerning the spectrometer array itself are listed below DEVIce:SPECtrometer:ARRay.
:PCOunt - Number of spectrometer array pixels
query only
The DEVice:SPECtrometer:ARRay:PCOunt query provides information about the number of pixels in the built-in spectrometer array.
Parent path: DEVice:SPECtrometer:ARRay
| SCPI String | Query ? |
Command [<INPUT VALUE>] |
|---|---|---|
:PCOunt |
returns the number of pixels of the built-in spectrometer array | - |
Example:
> DEVice:SPECtrometer:ARRay:PCOunt?
256
The value returned depends on the used hardware configuration and might differ.
:PEAK - Peak intensity of the spectrometer
query only
The maximum possible peak value (intensity counts of the spectrometer head) can be obtained with DEVice:SPECtrometer:ARRay:PEAK? query.
Parent path: DEVice:SPECtrometer:ARRay
| SCPI String | Query ? |
Command [<INPUT VALUE>] |
|---|---|---|
:PEAK |
returns the maximum pixel intensity value of the built-in spectrometer array | - |
Example:
> DEVice:SPECtrometer:ARRay:PEAK?
65535
The value returned depends on the used hardware configuration and might differ.
:BACKground - Signal background adjustment
Properties affecting the noise background of the spectrometer (Dark Current Non-Uniformity (DCNU), read-out-noise, etc.) are located below DEVIce:SPECtrometer:BACKground. The background settings are already preconfigured to return the best possible result. Be careful when changing these parameter.
:OFFSet:VOLTage - Spectrometer ADC offset voltage
query and command
The DEVice:SPECtrometer:BACKground:OFFSet:VOLTage query and command path provide access to the spectrometer ADC offset voltage. The ADC offset voltage is used to adjust the signal level and the background noise with respect to the baseline.
In addition to the base command :OFFSet:VOLTage, additional sub commands are provided to inform about default offset voltage, maximum and minimum values and the unit of the provided values.
Parent path: DEVice:SPECtrometer:BACKground
| SCPI String | Query ? |
Command [<INPUT VALUE>] |
|---|---|---|
:OFFSet:VOLTage |
returns the current spectrometer offset voltage | <FLOAT>: sets target offset voltage |
:DEFault |
returns the default spectrometer offset voltage | - |
:MAXimum |
returns the maximum allowed spectrometer offset voltage | - |
:MINimum |
returns the minimum allowed spectrometer offset voltage | - |
:UNIT |
returns the unit of the spectrometer offset voltage | - |
Example:
> DEVice:SPECtrometer:BACKground:OFFSet:VOLTage?
0.600
> DEVice:SPECtrometer:BACKground:OFFSet:VOLTage 0.800
> DEVice:SPECtrometer:BACKground:OFFSet:VOLTage?
0.800
> DEVice:SPECtrometer:BACKground:OFFSet:VOLTage:DEFault?
0.612
> DEVice:SPECtrometer:BACKground:OFFSet:VOLTage:MAXimum?
1.200
> DEVice:SPECtrometer:BACKground:OFFSet:VOLTage:MINimum?
0.300
> DEVice:SPECtrometer:BACKground:OFFSet:VOLTage:UINIT?
V
:CONNector - Spectrometer connector type
query only
The DEVice:SPECtrometer:CONNector? query provides information about the available fibre connection used in the current device. Possible return values are sma (SMA or SubMiniature version A) or fc_pc / fc_apc (FC or Ferrule Connector, Fiber Channel with or without angled physical contact polish).
Parent path: DEVice:SPECtrometer
| Scpi Command String | Query ? |
Command [<INPUT VALUE>] |
|---|---|---|
:CONNector |
returns the kind of fibre connection | - |
Example:
> DEVice:SPECtrometer:CONNector?
fc_pc
:PIXels - Pixel-related properties
DEVIce:SPECtrometer:PIXels lists pixel specific properties and values.
:SENSitivity - Pixel sensitivity
query only
The DEVIce:SPECtrometer:PIXels:SENSitivity? query provides a sensitivity value for each pixel. The sensitivity represents a scaling factor for each pixel to compensate the influence of optical behavior of the built-in optical components. This sensitivity scaling factor list is the default list for the MEASure:SPECtrum:SCALe and might be enabled using scale flag for MEASure:SPECtrum:REQuest:CONFig:PROCessing or CONTrol:INPut|MANual:EMITter:CONFig:PROCessing (see MEASure:SPECtrum:SCALe for additional information).
Parent path: DEVice:SPECtrometer:PIXels
| SCPI String | Query ? |
Command [<INPUT VALUE>] |
|---|---|---|
:SENSitivity |
returns a list containing the sensitivity value for each each pixel | - |
Example:
> DEVice:SPECtrometer:PIXels:SENSitivity?
0.000,0.010,0.020,...,0.030,0.020
:WAVelengths - Wavelength positions
query only
The DEVice:SPECtrometer:PIXels:WAVelengths? query returns the wavelength position for each pixel.
The unit can be obtained by using the respective subcommand. All values listed are represented in the provided unit.
Parent path: DEVice:SPECtrometer:PIXels
| SCPI String | Query ? |
Command [<INPUT VALUE>] |
|---|---|---|
:WAVelengths |
returns the wavelength value for each pixel | - |
:UNIT |
returns the unit of the wavelength | - |
Example:
> DEVice:SPECtrometer:PIXels:WAVelength?
4.000e-7,4.015e-7,4.030e-7,...,8.000e-7
> DEVice:SPECtrometer:PIXels:WAVelength:UNIT?
m
:RESolution - Spectral resolution of the spectrometer
query only
The DEVice:SPECtrometer:PIXels:WAVelengths:RESolution? query provides information about the spectral resolution of the built-in spectrometer head. The spectral resolution is presented as full width half maximum (FWHM) values at specific wavelength values.
Parent path: DEVice:SPECtrometer:PIXels:WAVelengths
| SCPI String | Query ? |
Command [<INPUT VALUE>] |
|---|---|---|
:RESolution |
returns the resolution of the spectrometer | - |
:UNIT |
returns the unit of the resolution | - |
Example:
> DEVice:SPECtrometer:PIXels:RESolution?
8.6e-9@1.200e-6,8.9e-9@1.500e-6,15.2e-9@1.700e-6
> DEVice:SPECtrometer:PIXels:RESolution:UNIT?
m@m
:SERial - Spectrometer serial number
query only
For reference, each built-in spectrometer head owns a unique serial number which can be queried with DEVIce:SPECtrometer:SERial?.
Parent path: DEVIce:SPECtrometer
| SCPI String | Query ? |
Command [<INPUT VALUE>] |
|---|---|---|
:SERial |
returns the serial number of the spectrometer | - |
Example
> DEVIce:SPECtrometer:SERial?
P2.224/990029
:TEMPerature - Temperature monitoring
query only
The Spektralwerk Core contains four temperature sensor at different places to provide the possibility to monitor temperature while measuring.
Parent path: DEVice:TEMPerature
| SCPI String | Query ? |
Command [<INPUT VALUE>] |
|---|---|---|
:BOARd |
returns current mainboard temperature | - |
:UNIT |
returns the unit of the mainboard temperature | - |
:ENCLosure |
returns current enclosure temperature | - |
:UNIT |
returns the unit of the enclosure temperature | - |
:SPECtrometer |
returns current spectrometer array temperature | - |
:UNIT |
returns the unit of the spectrometer temperature | - |
:SUBBoard |
returns current subboard temperature | - |
:UNIT |
returns the unit of the subboard temperature | - |
Example response:
> DEVice:TEMPerature:BOARd?
293.23
> DEVice:TEMPerature:BOARd:UNIT?
K
> DEVice:TEMPerature:ENCLosure?
292.12
> DEVice:TEMPerature:ENCLosure:UNIT?
K
> DEVice:TEMPerature:SPECtrometer?
295.25
> DEVice:TEMPerature:SPECtrometer:UNIT?
K
> DEVice:TEMPerature:SUBBoard?
295.17
> DEVice:TEMPerature:SUBBoard:UNIT?
K
MEASure - Measurement control
The MEASure root path provides access to various measurement adjustments and the measurement itself. All value changes are applied instantaneously.
:SPECtrum - Spectral sample retrieval
Spektralwerk Core offers two possibilities to obtain spectral data. The commands starting with :REQuest will return spectral samples within the SCPI response (in-band), while :EMITter will send the spectral samples to a configured destination (e.g. via TCP over the network; out-of-band).
:AVERage:NUMBer - Moving average number control
query and command
The MEASure:SPECtrum:AVERage:NUMBer query and command provides access to the moving average number for spectrum averaging. The value applies only when the average flag is enabled in MEASure:SPECtrum:REQuest:CONFig:PROCessing (in-band), respective CONTrol:INPut|MANual:EMITter:CONFig:PROCessing (out-of-band).
The configured number of averages determines, how many raw spectrum samples are consumed in order to produce a single averaged spectrum. Block-wise averaging is applied. The special value 1 has the same effect as disabling averaging.
In addition to the base command :AVERage:NUMBer, additional sub commands are provided to inform about default average number as well as maximum and minimum values.
Parent path: MEASure:SPECtrum
| SCPI String | Query ? |
Command [<INPUT VALUE>] |
|---|---|---|
:AVERage:NUMBer |
returns the current moving average number value | <INTEGER>: target average number |
:DEFault |
returns the default average number value | - |
:MAXimum |
returns the maximum allowed average number value | - |
:MINimum |
returns the minimum allowed average number value | - |
Example:
> MEASure:SPECtrum:AVERage:NUMBer?
1
> MEASure:SPECtrum:AVERage:NUMBer 100
> MEASure:SPECtrum:AVERage:NUMBer?
100
> MEASure:SPECtrum:AVERage:NUMBer:DEFault?
1
> MEASure:SPECtrum:AVERage:NUMBer:MAXimum?
1000000
> MEASure:SPECtrum:AVERage:NUMBer:MINimum?
1
> MEASure:SPECtrum:REQuest:CONFig:PROCessing average
# enables averaging for the in-band receive of spectral data
:EXPosure:TIME - Exposure time adjustment
query and command
The exposure time represents the duration to gather spectral information. Low values are typical for measurements with bright spectral sources to decrease the risk of truncation of spectral data. High values allow measurements of weak spectral sources.
Parent path: MEASure:SPECtrum
| SCPI String | Query ? |
Command [<INPUT VALUE>] |
|---|---|---|
:EXPosure:TIME |
returns current exposure time | <FLOAT>: target exposure time |
:DEFault |
returns the default exposure time | - |
:MAXimum |
returns the maximum allowed exposure time | - |
:MINimum |
returns the minimum allowed exposure time | - |
:UNIT |
returns the current unit of the exposure time | - |
Example:
> MEASure:SPECtrum:EXPosure:TIME?
1.0e-6
> MEASure:SPECtrum:EXPosure:TIME 2.3e-6
> MEASure:SPECtrum:EXPosure:TIME?
2.3e-6
> MEASure:SPECtrum:EXPosure:TIME:DEFault?
6.4e-6
> MEAsure:SPECtrum:EXPosure:TIME:MINimum?
1.0e-7
> MEASure:SPECtrum:EXPosure:TIME:MAXimum?
10.0
> MEASure:SPECtrum:EXPosure:TIME:UNIT?
s
:REFerence - Reference spectra handling
The :REFerence attribute allows access to set and get up to two reference spectra on the spectrometer. Reference spectra can influence the processing of a spectrum.
:DARK - Dark reference spectrum
query and command
The dark reference path MEASure:SPECtrum:REFerence:DARK allows to set a dark reference spectrum that will be processed in the respective channels if reference_dark flag is added to MEASure:SPECtrum:REQuest:CONFig:PROCessing or CONTrol:INPut|MANual:EMITter:CONFig:PROCessing.
A dark reference spectrum typically represents the noisy background of a measurement. Therefore the dark reference spectrum is subtracted from the raw spectrum to remove the background noise. The dark reference spectrum should contain a spectrum obtained without any light source or environmental lighting reaching the spectrometer input. If a shutter is used to control incoming light to Spektralwerk Core, this shutter should be closed. Alternatively use an opaque cap on the spectrometer input and darken the environment as much as possible (turn off the light, close the doors, ...).
To acquire or set a dark reference spectrum, two sub commands are available:
:ACQuire: Acquire an averaged sample and store it in theMEASure:SPECtrum:REFerence:DARKattribute. The number of raw samples to be used for averaging can be specified as an optional parameter. Without a parameter,MEASure:SPECtrum:AVERage:NUMBeris used as a default.:SET: Store a list of pixel intensities as the dark reference spectrum.
Parent path: MEASure:SPECtrum:REFerence
| SCPI String | Query ? |
Command [<INPUT VALUE>] |
|---|---|---|
:DARK |
returns current dark reference spectrum | - |
:ACQuire |
- | [<INTEGER>]: acquire an averaged spectrum and store it as the dark reference |
:SET |
- | <FLOAT,FLOAT,...>: set the provided array as the dark reference spectrum |
Example response:
> MEASure:SPECtrum:REFerence:DARK?
2.3,3.2,1.0,...,4.1
> MEASure:SPECtrum:REFerence:DARK:ACQuire
# acquires a dark reference spectrum using the current average number value
> MEASure:SPECtrum:REFerence:DARK:ACQuire 123
# acquires a dark reference spectrum by averaging over 123 spectral samples
> MEASure:SPECtrum:REFerence:DARK:SET 1.2,2.2,4.1,...,2.3
> MEASure:SPECtrum:REQuest:CONFig:PROCESSING reference_dark
# enables the dark reference consolidation for in-band spectral requests
:LIGHt - Light reference spectrum
query and command
The light reference node MEASure:SPECtrum:REFerence:LIGHt allows to set a light reference spectrum which will be applied when reference_light flag is added to MEASure:SPECtrum:REQuest:CONFig:PROCessing or CONTrol:INPut|MANual:EMITter:CONFig:PROCessing.
A light reference spectrum typically represents the overlaying background light signal, thus the raw spectrum is subtracted from the light reference. The light reference spectrum should contain a spectrum obtained without any reference signal. A sample should be removed from the optical path and the light source itself should be gathered as light reference spectrum.
To acquire or set a light reference spectrum, two possible child commands are available:
:ACQuire: Acquire an averaged sample and store it in theMEASure:SPECtrum:REFerence:LIGHtattribute. The number of raw samples to be used for averaging can be specified as an optional parameter. Without a parameter,MEASure:SPECtrum:AVERage:NUMBeris used as a default.:SET: Store a list of pixel intensities as the dark reference spectrum.
Parent path: MEASure:SPECtrum:REFerence
| SCPI String | Query ? |
Command [<INPUT VALUE>] |
|---|---|---|
:LIGHt |
returns current light reference spectrum | - |
:ACQuire |
- | [<INTEGER>]: acquire an averaged spectrum and store it as the light reference |
:SET |
- | <FLOAT,FLOAT,...>: set the provided array as the light reference spectrum |
Example response:
> MEASure:SPECtrum:REFerence:LIGHt?
65232.3,65223.2,65231.0,...,65234.1
> MEASure:SPECtrum:REFerence:LIGHt:ACQuire
# acquires a light reference spectrum using the current average number value
> MEASure:SPECtrum:REFerence:LIGHt:ACQuire 123
# acquires a light reference spectrum by averaging over 123 spectral samples
> MEASure:SPECtrum:REFerence:LIGHt:SET 65231.2,65232.2,65234.1,...,652342.3
> MEASure:SPECtrum:REQuest:CONFig:PROCESSING reference_light
# enables the light reference consolidation for in-band spectral requests
:REQuest - In-band spectra retrieval
query only
The MEASure:SPECtrum:REQuest path allows to retrieve spectrum data via the SCPI interface.
To transfer spectrum data outside the SCPI interface (e.g., via UDP over the network), the CONTrol:INPut|MANual:EMITter path should be used instead.
Requesting spectra with MEASure:SPECtrum:REQuest? will return spectral samples as configured by the different endpoints MEASure:SPECtrum:REQuest:CONFig (see documentation of the ...:CONFIG node).
MEASure:SPECtrum:REQuest:RAW? will always return a single raw spectrum without any processing applied. The default output format is human. The first parameter allows selecting a different format. Available format descriptions are human, base64_float, base64_int16 and cobs_int16. Please consider the appendix Spectral output format for more details.
Parent path: MEASure:SPECtrum
| SCPI String | Query ? |
Command [<INPUT VALUE>] |
|---|---|---|
:REQuest |
returns in-band processed and configured spectra. | - |
:RAW |
[<OUTPUT_FORMAT>] returns in-band raw spectra. |
- |
Example:
> MEASure:SPECtrum:REQuest?
12822.3,24398.2,32893.2,...,23892.4
> MEASure:SPECtrum:REQuest:RAW?
12822.3,24398.2,32893.2,...,23892.4
> MEASure:SPECtrum:REQuest:RAW? base64_float
MTI4MjIuMywyNDM5OC4yLDMyODkzLjIsLi4uLDIzODkyLjQK
# base64 encoded spectral sample
:CONFig - In-band spectral retrieval configuration
command and query
CONFig collects all configurable parameter of the MEASure:SPECtrum:REQuest node. The configuration of the in-band spectral sample retrieval is equal to the out-of-band spectral retrieval with CONTrol:INPut|MANual:EMITter.
MEASure:SPECtrum:REQuest:CONFig:COUNtallows to specify the amount of spectra to be returned upon callingMEASure:SPECtrum:REQuest?. An infinite emission of spectra can be started by setting the count to0. The default value is1.MEASure:SPECtrum:REQuest:CONFig:FORMatalters the notation of the returned spectra. The default value ishuman. Other possible values are:base64_float,base64_int16andcobs_int16. The last one allows the highest possible sample frequency (see Appendix - Spectral output format for further information).MEASure:SPECtrum:REQuest:CONFig:PROCessingcollects possible processing steps to be applied on the spectra before they are returned. By default no processing is applied. Possible values arereference_dark(seeMEASure:SPECtrum:REFerence:DARK),reference_light(seeMEASure:SPECtrum:REFerence:LIGHt),scale(seeMEASure:SPECtrum:SCALe),average(seeMEASure:SPECtrum:AVERage:NUMBer). The processing steps are listed in Appendix - Processing steps.MEASure:SPECtrum:REQuest:CONFig:ROIrestricts the returned pixel range to the provided values (region-of-interest). The default value varies depending on the built-in spectrometer. For Spektralwerk Core NIR, the default would be0,255(first and last pixel in the region-of-interest). The last pixel cannot be higher than the number of pixels of the built-in spectrometer array subtracted by one.MEASure:SPECtrum:REQuest:CONFig:FREQuencysets the sample rate for spectra. The default value is0which will make the spectrometer return spectra as fast as possible. The unit of the frequency can be obtained with the subqueryMEASure:SPECtrum:REQuest:CONFig:FREQuency:UNIT?. The sample rate is affected by theMEASure:SPECtrum:REQuest:CONFig:FORMatand cannot exceed the maximum sample rate stated in the data sheet for the specific device.
Parent path: MEASure:SPECtrum:REQuest
| SCPI String | Query ? |
Command [<INPUT VALUE>] |
|---|---|---|
:COUNt |
returns the number of spectra returned from in-band query. | <INTEGER>: set the number of spectra returned from in-band query. |
:FORMat |
returns the format of the in-band query. | <OUTPUT_FORMAT>: set the format returned from in-band query. |
:PROCessing |
returns the applied processing steps for spectra returned from in-band query. | <PROCESSING_STEP>: set the processing steps for spectra returned from in-band query. |
:ROI |
returns the current region-of-interest (ROI). | <INTEGER,INTEGER>: set the first and last pixel for region of interest. |
:FREQuency |
returns the current sampling frequency. | <FLOAT>: set sampling frequency. |
:UNIT |
returns the unit of the frequency. | - |
Example:
> MEASure:SPECtrum:REQuest:CONFig:COUNT?
1
> MEASure:SPECtrum:REQuest:CONFig:COUNT 10
> MEASure:SPECtrum:REQuest:CONFig:COUNT?
10
> MEASure:SPECtrum:REQuest:CONFig:FORMat?
human
> MEASure:SPECtrum:REQuest:CONFig:FORMat base64_int16
> MEASure:SPECtrum:REQuest:CONFig:FORMat?
base64_int16
> MEASure:SPECtrum:REQuest:CONFig:PROCessing?
# no processing is enabled by default
> MEASure:SPECtrum:REQuest:CONFig:PROCessing reference_light,average
# enables light_reference and averaging
> MEASure:SPECtrum:REQuest:CONFig:PROCessing?
reference_light,average
> MEASure:SPECtrum:REQuest:CONFig:ROI?
0,255
> MEASure:SPECtrum:REQuest:CONFig:ROI 100,200
> MEASure:SPECtrum:REQuest:CONFig:ROI?
100,200
> MEASure:SPECtrum:REQuest:CONFig:FREQuency?
0
> MEASure:SPECtrum:REQuest:CONFig:FREQuency 10
> MEASure:SPECtrum:REQuest:CONFig:FREQuency?
10
> MEASure:SPECtrum:REQuest:CONFig:FREQuency:UNIT?
Hz
:SCALe - Custom spectra scaling
query and command
The MEASure:SPECtrum:SCALe query and command offers the option of applying a customized scaling to the spectra. If enabled (see MEASure:SPECtrum:REQuest:CONFig:PROCessing and CONTrol:INPut|MANual:EMITter:CONFig:PROCessing), the provided factors are multiplied with the pixel intensities of the raw spectrum.
The MEASure:SPECtrum:SCALe can be enabled by passing the scale flag to MEASure:SPECtrum:REQuest:CONFig:PROCessing or for the out-of-band emission of spectra CONTrol:INPut|MANual:EMITter:CONFig:PROCessing.
A scaling vector containing only 1.0 is equal to not setting scale in the processing configuration (...:CONFig:PROCessing).
The default scale value is the sensitivity curve of the spectrometer (see DEVice:SPECtrometer:PIXels:SENSitivity?).
Parent path: MEASure:SPECtrum
| SCPI String | Query ? |
Command [<INPUT VALUE>] |
|---|---|---|
:SCALe |
returns the current available scaling factors for each pixel | <FLOAT,FLOAT,...>: set scaling factors |
:DEFault |
returns the default scaling factors | - |
Example:
> MEASure:SPECtrum:SCALe?
0.1,0.2,0.3,...,0.3,0.2
> MEASure:SPECtrum:SCALe 0.5,0.5,0.5,...,0.5,0.5
> MEASure:SPECtrum:SCALe?
0.5,0.5,0.5,...,0.5,0.5
> MEASure:SPECtrum:SCALe:DEFault?
0.000,0.010,0.020,...,0.030,0.020
> DEVice:SPECtrometer:PIXels:SENSitivity?
0.000,0.010,0.020,...,0.030,0.020
> MEASure:SPECtrum:REQuest:CONFig:PROCessing scale
# enables scaling for in-band spectral retrieval
> MEASure:SPECtrum:REQuest:RAW?
10000.0,20000.0,30000.0,...,30000.0,20000.0
> MEASure:SPECtrum:SCALe?
0.5,0.5,0.5,...,0.5,0.5
> MEASure:SPECtrum:REQuest?
5000.0,10000.0,15000.0,...,15000.0,10000.0