BasePointToPointActuator

class lsst.ts.simactuators.BasePointToPointActuator(start_position: float, speed: float)

Bases: object

Base class for point to point actuators that move to a specified position at constant velocity and halt.

Parameters
start_positionfloat

Initial position.

speedfloat

Speed of motion.

Raises
ValueError

If speed <= 0

Notes

You may change the speed, but we recommended only doing this when the actuator is stationary, because the actuator is not sophisticated enough to mimic actually changing actuator speed during a move. Changing speed does not change start_position, end_position, start_tai, or end_tai.

The default value for all time arguments is current TAI, in unix seconds. However, you may use any zero point for time that you like, as long as you always specify the time argument. This can be handy in unit tests, as it can eliminate the need to wait for an actuator to move.

Attributes Summary

direction

Direction of current or most recent move, as a lsst.ts.simactuators.Direction enum value.

end_position

Ending position of move.

end_tai

TAI date at end of move, unix seconds.

start_position

Starting position of move.

start_tai

TAI date at start of move move recent move.

Methods Summary

moving([tai])

Is the axis moving? False before and after the move.

position([tai])

Actual position.

remaining_time([tai])

Remaining time for the move (seconds); 0 after the move.

stop([tai])

Stop motion instantly.

velocity([tai])

Actual velocity.

Attributes Documentation

direction

Direction of current or most recent move, as a lsst.ts.simactuators.Direction enum value.

lsst.ts.simactuators.Direction.NEGATIVE if moving or moved in the negative direction, lsst.ts.simactuators.Direction.POSTIVE otherwise, including for a null movement or if never moved.

end_position

Ending position of move.

end_tai

TAI date at end of move, unix seconds.

start_position

Starting position of move.

start_tai

TAI date at start of move move recent move.

Methods Documentation

moving(tai: Optional[float] = None) bool

Is the axis moving? False before and after the move.

Parameters
taifloat or None, optional

TAI date, unix seconds. Current time if None.

position(tai: Optional[float] = None) float

Actual position.

Parameters
taifloat or None, optional

TAI date, unix seconds. Current time if None.

remaining_time(tai: Optional[float] = None) float

Remaining time for the move (seconds); 0 after the move.

Parameters
taifloat or None, optional

TAI date, unix seconds. Current time if None.

stop(tai: Optional[float] = None) None

Stop motion instantly.

Set end_position to the current position, or to the position at the specified time.

Parameters
taifloat or None, optional

TAI date, unix seconds. Current time if None.

velocity(tai: Optional[float] = None) float

Actual velocity.

Parameters
taifloat or None, optional

TAI date, unix seconds. Current time if None.