Data |
For the SetDataSource command, the DataSource selector parameter occupies the lower 8 bits of the 16-bit command-parameter pair within the 20-bit transmission frame.
public enum DataSource
Member name | Description |
---|---|
StatusWord | XY2-100-Enhanced status as 2 * 8 flag bits. Response: 16-bit unsigned See also: CompatibleStatusWord. |
CurrentPosition | Current position of galvo. Response: see above. |
TargetPosition | Last commanded position for galvo. Response: see above. |
PositionError | (TargetPosition - CurrentPosition). Response: see above. |
OutputCurrent | Output current to galvo in mA. Response: 16-bit signed |
RelativeOutputCurrent | Output current to galvo in ‰ (parts-per-thousand) relative to 10A. Response: 16-bit signed |
CurrentVelocity | Current angular velocity of galvo in bit/ms. Response: 16-bit signed |
GalvoTemperature | Temperature of galvo in degC/10. Response: 16-bit signed |
ServoBoardTemperature | Temperature on servo board in degC/10. Response: 16-bit signed |
PDAGCVoltage | Position detector AGC voltage in V/100. Response: 16-bit signed |
DSPCoreVoltage | DSP core voltage in V/100. Response: 16-bit signed |
DSPIOVoltage | DSP IO voltage in V/100. Response: 16-bit signed |
AnalogSupplyVoltage | Analog section supply voltage in V/100. Response: 16-bit signed |
ADCSupplyVoltage |
(SS-III) ADC supply voltage in V/100. Response: 16-bit signed |
MainSupplyVoltage |
(SS-IV, SS-V) Main supply voltage in V/100. Response: 16-bit signed |
PDAGCCurrent | Position detector AGC current in mA. Response: 16-bit signed |
RelativeHeatingOutput | Heating output of galvo in ‰ (parts-per-thousand). |
SerialNumberLow | Serial number, low word. Response: 16-bit unsigned |
SerialNumberHigh | Serial number, high word. Response: 16-bit unsigned |
ArticleNumberLow | Article number, low word. Response: 16-bit unsigned |
ArticleNumberHigh | Article number, high word. Response: 16-bit unsigned |
FirmwareVersion | Firmware version number. Response: 16-bit unsigned |
CalibrationFactor | Calibration factor in bits/mrad. Response: 16-bit unsigned |
Aperture | Aperture size in mm. Response: 16-bit unsigned |
Wavelength | Wavelength in nm. Response: 16-bit unsigned |
TuningSelectors | Current and startup tuning selectors as 2 * 8-bit unsigned values. Response: 16-bit unsigned |
DataSourceSelectors | Current and startup data source selectors as 2 * 8-bit unsigned values. Response: 16-bit unsigned |
StateFlagsLow | Current operational state flags, low word. Response: 16-bit unsigned |
StateFlagsHigh | Current operational state flags, high word. Response: 16-bit unsigned |
StopEventCode | Stop event code flag bits. Response: 16-bit unsigned |
StopFlagsLow | Operational flags at last stop event, low word. Response: 16-bit unsigned |
StopFlagsHigh | Operational flags at last stop event, high word. Response: 16-bit unsigned |
RunningTimeSeconds | Cumulative service time counter, seconds. Response: 16-bit unsigned |
RunningTimeMinutes | Cumulative service time counter, minutes. Response: 16-bit unsigned |
RunningTimeHours | Cumulative service time counter, hours. Response: 16-bit unsigned |
RunningTimeDays | Cumulative service time counter, days. Response: 16-bit unsigned |
PositionScale | Current position scale factor. Response: 16-bit unsigned |
PositionAcknowledgeLevel | Current position acknowledge level. Response: 16-bit unsigned |
CompatibleStatusWord | XY2-100 compatible (legacy) status as 2 * 8 flag bits. Response: 16-bit unsigned See also: StatusWord. |
InterpolationTimeConfiguration |
Current and startup interpolation times as 2 * 8-bit unsigned values. Response: 16-bit unsigned |
MirrorTiltAngle |
Current and startup mirror tilt angles as 2 * 8-bit unsigned values. Response: 16-bit unsigned |
The response format for almost all DataSources is: 16-bits, signed or unsigned as appropriate, left-aligned in a 20-bit field.
// NB: we assume the use of suitable commands here... uint[] responses = client.ScannerCommunication.TransceiveEnhanced(head, axes, commands, timeoutMs); short signedDataValue = (short)(responses[0] >> 4); ushort unsignedDatavalue = (ushort)(responses[1] >> 4);
A few DataSources return positions in their responses:
These are all signed values, with 16 or 20 significant bits, left-aligned in a 20-bit field.
// NB: we assume the use of suitable commands here... uint[] responses = client.ScannerCommunication.TransceiveEnhanced(head, axes, commands, timeoutMs); short position16bit = (short)(responses[0] >> 4); int position20bit = ((int)(responses[0] << 12)) >> 12; // sign-extension trick // // NB: the sign-extension trick extracts the raw 20-bit signed position // from the surrounding unsigned 32-bit response frame, // and converts it into a signed 32-bit signed int value.