diff --git a/aliases/alvra.py b/aliases/alvra.py index 440dee5..970960a 100755 --- a/aliases/alvra.py +++ b/aliases/alvra.py @@ -210,6 +210,21 @@ aliases = { 'z_und' : 127, 'desc' : 'Experiment laser phase shifter (Globi)', 'eco_type' : 'devices_general.alvratiming.PhaseShifterAramis'}, + 'SLAAR11-LMOT' : { + 'alias' : 'psen', + 'z_und' : 119, + 'desc' : 'PSEN delay line', + 'eco_type' : 'xdiagnostics.psen.psen'}, + 'SLAAR11-LMOT' : { + 'alias' : 'palm', + 'z_und' : 119, + 'desc' : 'PALM delay line', + 'eco_type' : 'xdiagnostics.palm.palm'}, + 'SLAAR11-LMOT' : { + 'alias' : 'palm_eo', + 'z_und' : 119, + 'desc' : 'PALM EO-sampling delay line', + 'eco_type' : 'xdiagnostics.palm.eo'}, # 'http://sf-daq-2:10000' : { # 'alias' : 'DetJF', # 'z_und' : 127, @@ -256,12 +271,7 @@ aliases = { 'alias' : '_xmic_rot', 'z_und' : 127, 'desc' : 'Prime microscope mirror rotation', - 'eco_type' : 'devices_general.smaract.SmarActRecord'}, - 'SLAAR11-LMOT' : { - 'alias' : 'psen', - 'z_und' : 119, - 'desc' : 'PSEN timing system', - 'eco_type' : 'xdiagnostics.psen.psen'} + 'eco_type' : 'devices_general.smaract.SmarActRecord'} } diff --git a/xdiagnostics/palm.py b/xdiagnostics/palm.py new file mode 100755 index 0000000..b66f07f --- /dev/null +++ b/xdiagnostics/palm.py @@ -0,0 +1,46 @@ +from ..devices_general.motors import MotorRecord +from ..devices_general.smaract import SmarActRecord +from epics import PV +from ..devices_general.delay_stage import DelayStage + +class palm: + def __init__(self,Id): + self.Id = Id + + self.delay = MotorRecord(self.Id+'-M423:MOT') + self.delayTime = DelayStage(self.delay) + + + def get_adjustable_positions_str(self): + ostr = '***** PALM motor positions ******\n' + + for tkey,item in self.__dict__.items(): + if hasattr(item,'get_current_value'): + pos = item.get_current_value() + ostr += ' ' + tkey.ljust(10) + ' : % 14g\n'%pos + return ostr + + + def __repr__(self): + return self.get_adjustable_positions_str() + +class eo: + def __init__(self,Id): + self.Id = Id + + self.delay = MotorRecord(self.Id+'-M422:MOT') + self.delayTime = DelayStage(self.delay) + + + def get_adjustable_positions_str(self): + ostr = '***** PALM EO sampling motor positions ******\n' + + for tkey,item in self.__dict__.items(): + if hasattr(item,'get_current_value'): + pos = item.get_current_value() + ostr += ' ' + tkey.ljust(10) + ' : % 14g\n'%pos + return ostr + + + def __repr__(self): + return self.get_adjustable_positions_str() \ No newline at end of file