.

Average: 0
Rating Count: 0

Development status: New development, Release: 1.0
Information status: New
Repository: http://svn.code.sf.net/p/tango-ds/code/DeviceClasses/Motion/CombinedMotor/
Contact:



Class Description


Use to do coupled motion of several motors by one combined motor (VM)

To setup full the MOTOR array with (<motor>, <coupling coefficient>, <position coefficient>) tuples, where:

<motor> - tango address of motor

<coupling coefficients> - how the position, speed, acceleration of physical motor scaled relative to the CM properties i.e.:

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

Unexpected indentation.
physical motor position = coupling coefficient * combined motor position

<position coefficient> - coefficient for calculation of combined motor property out of physical motors i.e.:

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

Unexpected indentation.
combined motor position = motor1 * position coefficient1 + motor2 * position coefficient2 + ....

Important: both coefficients must obey condition: 1 = coupling coefficients1 * position coefficient1 + coupling coefficients2 * position coefficient2 + ...

Examples:
For slit center (cy) assuming that slit_top, slit_bottom moves positive up

coupling coefficient 1 = 1 coupling coefficient 2 = 1

position coefficient 1 = 0.5 position coefficient 2 = 0.5

For slit gap (dy) assuming slit_top, slit_bottom moves positive up

coupling coefficient 1 = 0.5 coupling coefficient 2 = -0.5

position coefficient 1 = 1 position coefficient 2 = -1

For table with 3 legs y1, y2, y3 using 1st leg to define value of virtual motor

coupling coefficient 1 = 1 coupling coefficient 2 = 1 coupling coefficient 3 = 1

position coefficient 1 = 1 position coefficient 2 = 0 position coefficient 3 = 0

For theta 2 theta motor with th, 2th - real motors

coupling coefficient 1 = 1 coupling coefficient 2 = 2

position coefficient 1 = 1 position coefficient 2 = 0

Limits for motion taken correctly from soft limits of physical motors. Change of limits of virtual motor is not allowed

Calibration of the position of the virtual motor is allowed and done for via calibration of physical motors using COEF (like motion).

Families: Motion

Key words:

Platform: All Platforms

Language: Python

License: GPL

Contact:

Hardware


Manufacturer: none

Bus: Not Applicable

Class interface


Attributes:

Name Description
PositionScalar: DevDouble
CwLimitScalar: DevDouble
Ccw_LimitScalar: DevDouble
UnitLimitMinScalar: DevDouble
UnitLimitMaxScalar: DevDouble
ResultSimScalar: DevDouble
AccelerationScalar: DevDouble
BaseRateScalar: DevDouble
ConversionScalar: DevDouble
SlewRateScalar: DevDouble
SlewRateMaxScalar: DevDouble
SlewRateMinScalar: DevDouble
FlagClosedLoopScalar: DevDouble
PositionSimSpectrum: DevString

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.
CalibrateInput: DevDouble
Output: DevVoid
StopMoveInput: DevVoid
Output: DevVoid
movevvcInput: DevVarStringArray
Output: DevVoid

Pipes:

Properties:

Name Description
MotorsCodeDevString


Please log in to comment.

28 Feb 2022, Yury Matveev
Created:
The device class has been added to catalogue.
Added by:ymatveev on:28 Feb 2022, 4:39 p.m.