This is historical information of device classes implemented in SmarActMCS2Motor device server.

Use this link to find the valid information.

Development status: Released, Release: Release_1_4
Information status: Updated
Repository: http://svn.code.sf.net/p/tango-ds/code/DeviceClasses/Motion/MotorControllers/Smaract/SmarActMCS2Motor
Contact:



Class Description


Motor class for smaract mcs controller.

The server supports using a Picoscale interferometer as encoder. If you don`t want or need this call make PICOSCALESUPPORT=no.

If your controller has an IO module added, you will see some additional attributes on the motor devices

OutputTriggerMode: This attribute specifies the output trigger mode of a motor channel. Valid values are: 0: constant mode (output trigger does not change) 1: position compare (output trigger will change when the position

System Message: ERROR/3 (<string>, line 14)

Unexpected indentation.
changes by a defines increment, cf. attribute PositionCompareIncrement)

System Message: WARNING/2 (<string>, line 15)

Block quote ends without a blank line; unexpected unindent.

2: target reached (output trigger will change when the motor has reached it`s target position) 3: active move (utput trigger will change when the motor starts/stops)

PositionCompareDirection: This attribute specifies the position compare direction when having set OutputTriggerMode to 2. Valid values are: 0: forward direction, the trigger pulse is output when the position value passes the threshold from below. 1: backward direction, the trigger pulse is output when the position value passes the threshold from above. 2: either direction, the trigger pulse is output when the position value passes the threshold from below or above.

OutputTriggerPolarity: This attribute specifies the output trigger polarity. Valid values are: 0: active low (the idle levelis high and a low pulse is generated when the trigger occurs) 1: active high (he idle levelis low and a high pulse is generated when the trigger occurs)

OutputTriggerPulseWidth: This attribute specifies the output trigger pulse width. Valid range is:

100 ns ... 4 × 10^9 ns

PositionCompareStartThreshold: This attribute specifies the position compare start threshold when having set OutputTriggerMode to 2. As soon as the position passes this threshold in the configured direction (cf. attribute PositionCompareDirection) an output pulse is generated. Additionally the threshold is incremented by the value of the atribute PositionCompareIncrement to define the next trigger threshold.

PositionCompareIncrement: This attribute specifies the position compare output trigger increment. Valid range is 1 ... 1 × 10^12 pm or n° (watch out, attribute conversion is taken into account)

PositionCompareLimitMin: This attribute specifies the lower limit for the position compare output trigger. The limits act as an additional gate for the generation of output pulses. Output pulses are only generated when the current position lies between the configured minimum and maximum limits. Note that the maximum limit must be configured to a higher value than the minimum limit for the limit checks to be active. If both limits are set to the same value the checks are disabled and output pulses are generated according to the configured start threshold, increment and direction.

PositionCompareLimitMax: This attribute specifies the upper limit for the position compare output trigger in pm or n°. The limits act as an additional gate for the generation of output pulses. Output pulses are only gener- ated when the current position lies between the configured minimum and maximum limits. Note that the maximum limit must be configured to a higher value than the minimum limit for the limit checks to be active. If both limits are set to the same value the checks are disabled and output pulses are generated according to the configured start threshold, increment and direction.

For more detailed information on the use of trajectory streaming and the IO modules check the smaract documentation.

Families: Motion

Key words:

Platform: Unix Like

Language: Cpp

License: GPL

Contact:

Hardware


Manufacturer: Smaract

Product:

Bus: Not Applicable

Class interface


Attributes:

Name Description
MoveModeScalar: DevLong Get/Set move mode. This might mofify meaning and behaviour of Position attribute 0 : closed loop absolute 1 : closed loop relative 2 : scan mode absolute 3 : scan mode relative 4 : step mode
StepAmplitudeScalar: DevLong Gets/sets step amplitude for open-loop movements. Value range: 1 - 65535 65535 corresponds to 100V
StepFrequencyScalar: DevLong Gets/sets step frequency for open-loop movements. Value range: 1 - 20000 Hz
PositionScalar: DevDouble Native units are picometer for linear axes and nanodegrees for rotary axes. Can be changed by adjusting conversion attribute.
ConversionScalar: DevDouble Factor for converting encoder steps to units, defaults to 1
UnitLimitMinScalar: DevDouble MInimum position in units we are allowed to go to. If both UnitLimitMin and UnitLimitMax are set to 0 limit settings are ignored.
UnitLimitMaxScalar: DevDouble Maximum position in units we are allowed to go to. If both UnitLimitMin and UnitLimitMax are set to 0 limit settings are ignored.
AutoZeroScalar: DevBoolean If set to true, the current position will be set to 0 when the reference mark is found on running the Home command.
HoldTimeScalar: DevULong Closed loop velocity hold time (time in ms the position is actively held after reaching the target posi- tion) Range: 0 - 4294967295 (0 disables holding, max value is for infinite, i.e. hold until motor is stopped)
SpeedScalar: DevLong64 Closed loop velocity, pm s^-1 for linear movements, n° s^−1 for rotary movements Range: 0 - 100000000000
PositionKnownScalar: DevBoolean True, if physical position is known (i.e. Home command ran successfully)
AxisTypeScalar: DevULong The axis type, 0: linear movement 1: rotary movement 2: goniometer 3: tilt movement
MaxFrequencyScalar: DevLong The maximum closed loop frequency in hz (50 - 20000). If you experience sudden stops on one axis when starting a movement on another try setting this to a lower value.
SensorTypeScalar: DevULong Sensor type number, check with hardware doc (MCS2PositionerTypes.pdf)
StepLimitMinScalar: DevLong64 This attribute uses the controllers ability to store limit values. If this value is set a movement will stop if this limit is hit. The attribute does not take conversion into account, it treats values as encoder steps. To enable this feature set StepLimitMax to a value greater than StepLimitMin. Valid range: -100000000000000 - 100000000000000
StepLimitMaxScalar: DevLong64 This attribute uses the controllers ability to store limit values. If this value is set a movement will stop if this limit is hit. The attribute does not take conversion into account, it treats values as encoder steps. To enable this feature set StepLimitMax to a value greater than StepLimitMin. Valid range: -100000000000000 - 100000000000000
SensorModeScalar: DevLong sensor mode 0: sensor disabled 1: sensor continuously supplied with power 2: sensor power supply pulsed to keep the heat generation low
ActuatorModeScalar: DevLong actuator mode 0: normal 1: quiet 2: low vibration (needs feature permission activated and payed for)
AccelerationScalar: DevLong64 Closed loop acceleration, pm s^−2 for linear positioners and n° s^−2 for rotary positioners Range: 0 - 100000000000
FollowingErrorLimitScalar: DevLong64 Following error limit, pm for linear movements and n° for rotary movements. A value of 0 disables following error detection. Range: 0 - 100000000000
SearchDirectionScalar: DevBoolean Toggling the value will reverse start direction on reference mark search. true: search in negative direction false: search in positive direction The search direction value does not take the sign of the conversion attribute into respect.
SensorNameScalar: DevString Sensor type description, check with hardware doc (MCS2PositionerTypes.pdf)

Commands:

Name Description
StateInput: DevVoid
Output: State
Device state
This command gets the device state (stored in its device_state data member) and returns it to the caller.
StatusInput: DevVoid
Output: ConstDevString
Device status
This command gets the device status (stored in its device_status data member) and returns it to the caller.
HomeInput: DevVoid
Output: DevVoid
Drive to reference mark (and set position to 0 if AutoZero ist true)
CalibrateInput: DevVoid
Output: DevVoid
performs a calibration routine for a channel
StopInput: DevVoid
Output: DevVoid
Stop movement on this axis (holding will be disabled if in closed loop mode).

Pipes:

Properties:

Name Description
SmarActMCS2CtrlDeviceDevString Name of SmarActMCS2Ctrl device
AxisNumberDevULong axis index number
PicoScaleEncodedDevBoolean Set to true, if this axis uses a picoscale interferometer as encoder (may need server code recompile with `make PICOSCALESUPPORT=yes`)
SensorTypeDevULong Normally the sensor type will be configured by Smaract for the positioners the controller was ordered/delivered with. If this property is 0 (the default value) we assume that this is still the case, no modification to the controller-stored sensor type will be done. If you ever change to a different type of positioner its sensor type code has to be given to the controller. Check out the type code from the smaract docs (MCS2PositionerTypes.pdf.gz) and enter it here. It will be written to the controller at server start.

13 Nov 2021, DS Admin
Updated:
The device class has been updated.
You can see previous version here .



11 Sep 2021, DS Admin
Updated:
The device class has been updated.
You can see previous version here .



14 Aug 2021, DS Admin
Updated:
The device class has been updated.
You are looking at this version now.



27 Mar 2021, DS Admin
Updated:
The device class has been updated.
You can see previous version here .



13 Jun 2020, DS Admin
Updated:
The device class has been updated.
You can see previous version here .



12 Oct 2019, DS Admin
Updated:
The device class has been updated.
You can see previous version here .



24 Aug 2019, DS Admin
Updated:
The device class has been updated.
You can see previous version here .



10 Aug 2019, DS Admin
Created:
The device class has been added to catalogue.
Added by:dadmin on:14 Aug 2021, 4:01 a.m.