mxcubecore.HardwareObjects.LNLS.EPICS.EPICSMotor#

Classes

EPICSMotor(name)

EPICSMotorDetachable(name)

Class that implements an interface of motor record IOC and accepts a presence PV, that indicated if the motor is or is not present on the facility.

class mxcubecore.HardwareObjects.LNLS.EPICS.EPICSMotor.EPICSMotor(name)[source]#

Bases: EPICSActuator, AbstractMotor

abort()[source]#

Immediately terminate HardwareObject action.

Should not happen in state READY.

get_limits()[source]#

Return actuator low and high limits.

Returns:

Two-item tuple (low limit, high limit).

Return type:

(tuple)

get_velocity()[source]#

Read motor velocity. :returns: velocity [unit/s] :rtype: (float)

init()[source]#

Initialise tolerance property

set_velocity(value)[source]#

Set the motor velocity :param velocity: target velocity :type velocity: float

wait_ready(timeout: float | None = None)[source]#

Wait timeout seconds till object is ready.

If timeout is None: wait forever.

Parameters:

timeout (Optional[float], optional) – Timeout (seconds). Defaults to None.

class mxcubecore.HardwareObjects.LNLS.EPICS.EPICSMotor.EPICSMotorDetachable(name)[source]#

Bases: EPICSMotor

Class that implements an interface of motor record IOC and accepts a presence PV, that indicated if the motor is or is not present on the facility. If it is present, it actuates as an EpicsMotor, if it is not, then the widget receives the state OFF and remains disabled.

YAML Example#

%YAML 1.2 — class: LNLS.EPICS.EPICSMotor.EPICSMotorDetachable epics: “MOTOR_PV”:

channels: ‘’:

‘PRESENCE_PREFIX’:

channels: ‘presence’:

suffix: “PRESENCE_SUFFIX”

configuration: is_absent_value: 0

get_value()[source]#

Read the actuator position.

Returns:

Actuator position.

init()[source]#

Initialise tolerance property