Source code for dodal.devices.p45

from ophyd import Component as Cpt
from ophyd import EpicsMotor, MotorBundle
from ophyd.areadetector.base import ADComponent as Cpt


[docs] class SampleY(MotorBundle): """ Motors for controlling the sample's y position and stretch in the y axis. """ base = Cpt(EpicsMotor, "CS:Y") stretch = Cpt(EpicsMotor, "CS:Y:STRETCH") top = Cpt(EpicsMotor, "Y:TOP") bottom = Cpt(EpicsMotor, "Y:BOT")
[docs] class SampleTheta(MotorBundle): """ Motors for controlling the sample's theta position and skew """ base = Cpt(EpicsMotor, "THETA:POS") skew = Cpt(EpicsMotor, "THETA:SKEW") top = Cpt(EpicsMotor, "THETA:TOP") bottom = Cpt(EpicsMotor, "THETA:BOT")
[docs] class TomoStageWithStretchAndSkew(MotorBundle): """ Grouping of motors for the P45 tomography stage """ x = Cpt(EpicsMotor, "X") y = Cpt(SampleY, "") theta = Cpt(SampleTheta, "")
[docs] class Choppers(MotorBundle): """ Grouping for the P45 chopper motors """ x = Cpt(EpicsMotor, "ENDAT") y = Cpt(EpicsMotor, "BISS")