Click or drag to resize

BaseDistanceSensor Class

Represents the base class of all plugins of type distance sensor.
Inheritance Hierarchy
SystemObject
  RAYLASE.Marker.PluginBasePlugin
    RAYLASE.Marker.DeviceBaseDeviceController
      RAYLASE.Marker.Device.DistanceSensorBaseDistanceSensor

Namespace: RAYLASE.Marker.Device.DistanceSensor
Assembly: RAYLASE.Marker.Device (in RAYLASE.Marker.Device.dll) Version: 2.26.1
Syntax
C#
public abstract class BaseDistanceSensor : BaseDeviceController

The BaseDistanceSensor type exposes the following members.

Constructors
 NameDescription
Protected methodBaseDistanceSensorInitializes a new instance of the BaseDistanceSensor class
Top
Properties
 NameDescription
Public propertyActivatedChainableFeatures Gets the activated chainable features.
(Inherited from BaseDeviceController)
Public propertyAveraging Number of measurements to run on OCT base unit in order to get one measurement. A value of 1 means no averages are taken; higher values reduce the frame rate proportionally.
Protected propertyConfigurationManager
(Inherited from BasePlugin)
Public propertyDeviceState The state of the device.
Public propertyEnableChainableFeature Gets or sets the flag to enable chainable features.
(Inherited from BaseDeviceController)
Public propertyFieldCorrection A valid field correction containing an Aux axis.
Public propertyFieldParameter Parameters of the calibration field.
Public propertyHasConnectedStatus Is true if the device supports the IsConnected status.
(Overrides BaseDeviceControllerHasConnectedStatus)
Protected propertyInvertMeasuredDistance Flag to invert the distance measurement for alignment with Rayguide. By default, a positive distance in Z direction is further away from the deflection unit while a negative value indicates a closer position to the deflection unit
Public propertyIPAddress IP address of the distance sensor device.
Public propertyIsAutoConnect
(Inherited from BaseDeviceController)
Public propertyIsConnected Is true if the device is connected.
(Inherited from BaseDeviceController)
Public propertyIsHWTrigger Flag to switch between hardware- and software trigger. Set to true to activate hardware triggered measurement; False otherwise and by default.
Public propertyIsInError The flag to indicate that the device is in error state.
Public propertyIsInitialized Is true if the device is initialized.
(Overrides BaseDeviceControllerIsInitialized)
Public propertyIsLaserOn True if the measurement SLD is turned on, false otherwise.
Public propertyJumpDelay (Max) Time in ms after a jump, before a measurement takes place in µs.
Public propertyJumpSpeed Speed to jump to the next measure position. Only used for measurements, not globally.
Protected propertyLogDirectory The directory of the log file.
(Inherited from BasePlugin)
Public propertyLogger The common logger.
(Inherited from BasePlugin)
Public propertyMeasurementBeamOffsetXY Offset of the measurement positions to the actual XY position of the scan head.
Public propertyMeasurementValidation 
Public propertyPeakZeroOffset Offset of the measured RAYDIME METER peak which will be seen as corrected zero position. By moving the measured zero position artificially besides actual zero, interferences by overlapping signals at the zero position can be avoided.
Public propertyPluginMetadata The metadata of the plugin instances. If the concrete class inherits from the BasePluginSetup interface, the metadata of the BasePluginSetup will be prefilled.
(Inherited from BasePlugin)
Public propertySanityCheckThreshold Threshold µm within which all measurements at the same checked measure position must lie.
Public propertyScanController The scan controller with the distance sensor is attached to.
Public propertyScanControllerID The ID to identify the scan controller in a list of available scan controllers.
Public propertyScanHead The scan head the distance sensor is attached to.
Public propertyScanHeadID The ID to identify the scan head in a list of available scan heads.
Public propertySerialNumber Serial number of the device.
(Inherited from BaseDeviceController)
Public propertyStatuses
(Inherited from BaseDeviceController)
Public propertySupportedChainableFeatureMap The map of chainable feature types supported by this device. The value indicates whether the feature is a transmitter or a receiver.
(Inherited from BaseDeviceController)
Public propertyUsableRange Usable measurement range before the returned signal gets too weak in µm +/- current Z height.
Top
Methods
 NameDescription
Public methodCalibrate Calibrates the distance sensor device, if the device can be calibrated.
Public methodClearBuffer Clear all incoming data from the TCP buffer.
Public methodConnect Connects to the device.
(Inherited from BaseDeviceController)
Public methodConnect(ActionBoolean) Connect to a device non-blocking and update UI on success.
Protected methodCreateScanHeadList Lists all available scan heads with distance sensors other than the current distance sensor.
Public methodDisconnect Disconnects from the device.
(Inherited from BaseDeviceController)
Public methodDispose
(Inherited from BasePlugin)
Protected methodDispose(Boolean)Releases the unmanaged resources used by the BaseDistanceSensor and optionally releases the managed resources
(Overrides BaseDeviceControllerDispose(Boolean))
Public methodDisposeUI Disposes the given setting view.
(Inherited from BaseDeviceController)
Protected methodDoDisposeUI
(Inherited from BasePlugin)
Protected methodDoShowUI Shows the specific UI embedded in the plug-in instance. The content will be wrapped by a preset view.
(Inherited from BasePlugin)
Protected methodDoShowUICallback Invokes the callback that can be used when the DoShowUI method is done.
(Inherited from BasePlugin)
Public methodGetCheckedHeightDeviationAt Gets the same measurement value as GetCorrectedRaydimeMeasurementsAt(IListdvec3, Double, NullableDouble, NullableDouble, NullableCancellationToken) but might measure multiple times at the same location and adds sanity checks.
Public methodGetCorrectedRaydimeMeasurementsAt(dvec2, Double, NullableDouble, NullableDouble, NullableCancellationToken)GetCorrectedRaydimeMeasurementsAt(dvec3, Double, NullableDouble, NullableDouble, NullableCancellationToken) for a XY position at measure distance. Requires the distance sensor to be calibrated beforehand so that the z height of 0 is the calibrated distance.
Public methodGetCorrectedRaydimeMeasurementsAt(dvec3, Double, NullableDouble, NullableDouble, NullableCancellationToken)GetCorrectedRaydimeMeasurementsAt(IListdvec3, Double, NullableDouble, NullableDouble, NullableCancellationToken) for a single position.
Public methodGetCorrectedRaydimeMeasurementsAt(IListdvec2, Double, NullableDouble, NullableDouble, NullableCancellationToken)GetCorrectedRaydimeMeasurementsAt(IListdvec3, Double, NullableDouble, NullableDouble, NullableCancellationToken) for a XY position at measure distance. Requires the distance sensor to be calibrated beforehand so that the z height of 0 is the calibrated distance.
Public methodGetCorrectedRaydimeMeasurementsAt(IListdvec3, Double, NullableDouble, NullableDouble, NullableCancellationToken) Use the distance sensor to measure the distance in µm and apply angle error to measured value. Measuring at 0,0,0 will obtain the same result as GetRaydimeMeasurementAt(Nullabledvec3, Double, NullableDouble, NullableDouble, NullableCancellationToken). Measuring e.g. at the corner will result in a smaller distance difference than measured when the beam angle is taken into account.
Public methodGetDeviceStatusRepresentation Returns the color and description of device state. Useful for UI purpose.
(Inherited from BaseDeviceController)
Public methodGetMovableRange Gets the X, Y and Z min/max values which are in the movable range.
Public methodGetRaydimeMeasurementAt Same as GetRaydimeMeasurementsAt(IListdvec3, Double, NullableDouble, NullableDouble, NullableCancellationToken) but measures on a single position only.
Public methodGetRaydimeMeasurementsAt Use the distance sensor to measure the distance in µm at a given position.
Public methodGoToAndTrigger Moves to a position and sends a hardware trigger or does nothing else in case of software trigger.
Public methodHandleExternalDeviceRequestAsync Handles a chained request for a given list of features.
(Inherited from BaseDeviceController)
Public methodInitialize Plug-in specific initialization can be done here if necessary.
(Inherited from BasePlugin)
Protected methodInternalGetRaydimeMeasurementsAt 
Protected methodInvokeConnected Invokes Connected event.
(Inherited from BaseDeviceController)
Protected methodInvokeDeviceUIRequested Callback method to show the nested scan head settings dialog.
Protected methodInvokeDisconnected Invokes Disconnected event.
(Inherited from BaseDeviceController)
Protected methodInvokeInitialized Invokes Initialized event.
(Inherited from BaseDeviceController)
Protected methodInvokeStatusChanged Invokes StatusChanged event.
(Inherited from BaseDeviceController)
Protected methodInvokeUninitialized Invokes Uninitialized event.
Protected methodOnDevicesChanged
(Inherited from BaseDeviceController)
Protected methodReEvaluateMeasurements Re-evaluates measurements and re-measures invalid locations to make sure the position can either not be measured or the measurement is correct. Sets the average Peak and RawPeak values to the original results.
Public methodResolveAngleError(BaseDistanceSensorResult)ResolveAngleError(dvec3, Double) from a BaseDistanceSensorResult.
Public methodResolveAngleError(dvec3, Double) Takes the measurement angle into account and treats the measured distance error as hypotenuse to get the actual object height difference to the expected value.
Public methodStatic memberSanityCheckMeasurements Check if measurements at a position are sensible. At least two measurements are needed for the check. It is checked that the measurements are not exactly the same value and that the values are within the sanityCheckThreshold from each other (measurements must be very close but not the same).
Public methodSendClientHardwareTrigger Toggles the scan controller's DistanceSensorTriggerOut port with approx. one ms pulse width using the client API.
Protected methodSendSoftwareTrigger Send a software trigger to the distance sensor device.
Public methodShowUI Shows the specific UI embedded in the plugin instance.
(Inherited from BaseDeviceController)
Public methodShowUICallback Invokes the callback that can be used when the ShowUI method is done.
(Inherited from BaseDeviceController)
Public methodShowUICancelCallback Invokes the callback that can be used when the ShowUI method is done and the user pressed the cancel button
(Inherited from BasePlugin)
Public methodToString
(Inherited from BasePlugin)
Protected methodTriggerChanged Implements a trigger change and must set the configuration on the remote RAYDIME METER accordingly.
Public methodTurnLaserOn Turns the measurement laser on or off.
Public methodUpdateScanController Updates the scan controller after a scan head change.
Public methodUpdateScanHead 
Public methodWaitForCorrectedRaydimeMeasurement Get a measurement at current position. In case of a hardware trigger, the data must be made available through an independent trigger. In software trigger mode, a software trigger will be sent first.
Public methodWaitForRaydimeMeasurement Device specific implementation of a height deviation distance measurement. The result is expected to be 0. Due to errors in the physical domain, a delta could be measured. It does not return the whole distance but the deviation from the expected distance. To trigger the measurement, either set up the RDM I/O ports on the SPICE card, for plain trigger without movement implement SendClientHardwareTrigger or implement SendSoftwareTrigger for a software trigger on the distance sensor device.
Top
Events
 NameDescription
Public eventConnected An event that is triggered when the device is connected.
(Inherited from BaseDeviceController)
Public eventDeviceUIRequested Getting called when the scan head UI gets requested.
Public eventDisconnected An event that is triggered when the device is disconnected.
(Inherited from BaseDeviceController)
Public eventInitialized An event that is triggered when the device is initialized.
(Inherited from BaseDeviceController)
Public eventStatusChanged An event that is triggered when the status of the device is changed.
(Inherited from BaseDeviceController)
Public eventUninitialized An event that is triggered when the device is uninitialized.
Top
Fields
 NameDescription
Public fieldStatic memberTriggerInBit Pin on the I/O connector to receive the movement trigger from the OCT which indicates that the next position can be moved to.
Public fieldStatic memberTriggerInPolarity Polarity of the I/O connector for TriggerInBit.
Public fieldStatic memberTriggerOutBit Pin in the I/O connector to send a hardware trigger to the OCT which indicates that the next measurement can be started.
Public fieldStatic memberTriggerOutPolarity Polarity of the I/O connector for TriggerOutBit.
Top
See Also