Added deadbands for diffractometer motors

This commit is contained in:
2025-04-16 14:58:02 +02:00
parent 64616cf98e
commit ca3a5199b6

View File

@ -9,11 +9,16 @@
"""
from slic.core.adjustable import Adjustable, Linked
from slic.core.device import Device, SimpleDevice
from slic.core.adjustable import PVAdjustable, Linked, Adjustable
from slic.core.device import Device
from slic.devices.general.motor import Motor
class MotorECMC(Motor):
'''Regular motor class with extra EPICS and ECMC tolerance deadbands for motion.'''
def __init__(self, ID, **kwargs):
super().__init__(ID, **kwargs)
self.deadband_epics = PVAdjustable(self.name+'-SetCtrlDB',units='mm',name='Tolerance deadband for EPICS target reached flag.')
self.deadband_ecmc = PVAdjustable(self.name+'-SetAtTrgtDB',units='mm', name='Tolerance deadband for ECMC servo motor control')
class Diffractometer(Device):
def __init__(self, ID, **kwargs):
@ -34,8 +39,8 @@ class Diffractometer(Device):
if ID == "SARES32-GPS":
self.name = "DM2: Cristallina pulsed magnet diffractometer"
# This diffractometer also has extra swivel stages
self.rotx = Motor(ID + ":ROTX")
self.rotz = Motor(ID + ":ROTZ")
self.rot_x = Motor(ID + ":ROTX")
self.rot_z = Motor(ID + ":ROTZ")
if ID == "SARES31-GPS":
self.name = "DM1: Cristallina dilution fridge diffractometer"