Click or drag to resize

DataSource Enumeration

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.


Namespace: RAYLASE.SPICE3.ScannerEnhancedProtocol
Assembly: RAYLASE.SPICE3 (in RAYLASE.SPICE3.dll) Version: 2.3.5
Syntax
C#
public enum DataSource
Members
Member nameDescription
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

Remarks
  • The response format for almost all DataSources is: 16-bits, signed or unsigned as appropriate, left-aligned in a 20-bit field.

    C#
    // 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:

    • CurrentPosition
    • TargetPosition
    • PositionError

    These are all signed values, with 16 or 20 significant bits, left-aligned in a 20-bit field.

    C#
    // 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.
    
See Also