Setting up all slits to have consistent naming and definitions
This commit is contained in:
@ -8,9 +8,11 @@ from .alignment_laser import AlignmentLaser
|
||||
|
||||
from slic.devices.xoptics.kb import KBHor, KBVer
|
||||
from slic.devices.xoptics.offsetmirrors import OffsetMirror
|
||||
from slic.devices.xoptics.slits import SlitUnitCenterWidth
|
||||
|
||||
from .pp_shutter import PP_Shutter
|
||||
from .i0_chamber import i0_chamber
|
||||
from .apertures import slits107, slits149
|
||||
|
||||
# Attenuators
|
||||
upstream_attenuator = Attenuator("SARFE10-OATT053", description="Aramis attenuator OATT053")
|
||||
@ -58,6 +60,14 @@ pbps149 = IntensityMonitorPBPS(
|
||||
description="Intensity/position monitor in the experimental hutch",
|
||||
)
|
||||
|
||||
# I0 chamber
|
||||
i0 = i0_chamber('SARES30-MCS20610')
|
||||
|
||||
# Slits
|
||||
slits149 = SlitUnitCenterWidth('SAROP31-OAPU149')
|
||||
slits107 = SlitUnitCenterWidth('SAROP31-OAPU107')
|
||||
slitsi0 = i0.slits
|
||||
|
||||
# KB mirrors
|
||||
kbHor = KBHor("SAROP31-OKBH154", description="Cristallina horizontal KB mirror")
|
||||
kbVer = KBVer("SAROP31-OKBV153", description="Cristallina vertical KB mirror")
|
||||
@ -69,5 +79,3 @@ mono = CristallinaMono("SAROP31-ODCC110")
|
||||
m3 = OffsetMirror('SAROP31-ODMV152')
|
||||
#TODO the other two offset mirros
|
||||
|
||||
# I0 chamber
|
||||
i0 = i0_chamber('SARES30-MCS20610')
|
@ -1,4 +1,4 @@
|
||||
from slic.core.device import Device
|
||||
from slic.core.device import Device, SimpleDevice
|
||||
from slic.core.adjustable import PVAdjustable
|
||||
from slic.devices.general.motor import Motor
|
||||
|
||||
@ -6,20 +6,25 @@ class i0_chamber(Device):
|
||||
def __init__(self, ID, name="Cristallina I0 chamber with slits and foils", process_time=1, **kwargs):
|
||||
super().__init__(ID, name=name, **kwargs)
|
||||
|
||||
self.foils = Motor(ID+":MCS3", name="Cristallina I0 chamber foil selecting smaract stage")
|
||||
self.foils = Motor(ID+":MCS3")
|
||||
self.slits = i0_slits_unit(ID,name="Cristallina I0 chamber slits")
|
||||
|
||||
class i0_slits_unit(Device):
|
||||
def __init__(self, ID, **kwargs):
|
||||
super().__init__(ID, **kwargs)
|
||||
|
||||
self.x_center = PVAdjustable(ID + "-XSLIT:SLIT_POS")
|
||||
self.width = PVAdjustable(ID + "-XSLIT:SLIT_WIDTH")
|
||||
self.y_center = PVAdjustable(ID + "-YSLIT:SLIT_POS")
|
||||
self.height = PVAdjustable(ID + "-YSLIT:SLIT_WIDTH")
|
||||
self.x = SimpleDevice(ID + "-X",
|
||||
center = PVAdjustable(ID + "-XSLIT:SLIT_POS",units='mm'),
|
||||
width = PVAdjustable(ID + "-XSLIT:SLIT_WIDTH",units='mm')
|
||||
)
|
||||
|
||||
self.y = SimpleDevice(ID + "-Y",
|
||||
center = PVAdjustable(ID + "-YSLIT:SLIT_POS",units='mm'),
|
||||
width = PVAdjustable(ID + "-YSLIT:SLIT_WIDTH",units='mm')
|
||||
)
|
||||
|
||||
self.motors = i0_slits_motors(ID,name='Individual I0 chamber slit motors')
|
||||
|
||||
|
||||
class i0_slits_motors(Device):
|
||||
def __init__(self, ID, **kwargs):
|
||||
super().__init__(ID, **kwargs)
|
||||
|
Reference in New Issue
Block a user