From e91b076bbcb62e5a163afced96211af3bd200325 Mon Sep 17 00:00:00 2001 From: Roman Mankowsky Date: Sat, 2 Jun 2018 20:53:36 +0200 Subject: [PATCH] etc --- acquisition/scan.py | 8 ++++---- devices_general/detectors.py | 11 ++++++++++- loptics/bernina_experiment.py | 13 +++++++++---- timing/SLAAR-LTIM02-EVR0:Pul2-Delay-RB | 2 +- timing/SLAAR-LTIM02-EVR0:Pul3-Delay-RB | 2 +- timing/SLAAR02-TSPL-EPL:CURR_DELTA_T | 4 ++-- timing/lasertiming.py | 2 +- xoptics/slits.py | 12 +++++++++--- 8 files changed, 37 insertions(+), 17 deletions(-) diff --git a/acquisition/scan.py b/acquisition/scan.py index 44d0114..553da58 100755 --- a/acquisition/scan.py +++ b/acquisition/scan.py @@ -99,11 +99,11 @@ class ScanSimple: with open(self.scan_info_filename,'w') as f: json.dump(self.scan_info,f,indent=4,sort_keys=True) - def scanAll(self): + def scanAll(self, step_info=None): done = False try: while not done: - done = not self.doNextStep() + done = not self.doNextStep(step_info=step_info) except: tb = traceback.format_exc() else: @@ -126,12 +126,12 @@ class Scans: self.checker = checker self._scan_directories = scan_directories - def ascan(self,adjustable,start_pos,end_pos,N_intervals,N_pulses,file_name=None,start_immediately=True): + def ascan(self,adjustable,start_pos,end_pos,N_intervals,N_pulses,file_name=None,start_immediately=True, step_info = None): positions = np.linspace(start_pos,end_pos,N_intervals+1) values = [[tp] for tp in positions] s = ScanSimple([adjustable],values,self._default_counters,file_name,Npulses=N_pulses,basepath=self.data_base_dir,scan_info_dir=self.scan_info_dir,checker=self.checker,scan_directories=self._scan_directories) if start_immediately: - s.scanAll() + s.scanAll(step_info=step_info) return s def rscan(self,adjustable,start_pos,end_pos,N_intervals,N_pulses,file_name=None,start_immediately=True): diff --git a/devices_general/detectors.py b/devices_general/detectors.py index 4cb843c..eff427f 100755 --- a/devices_general/detectors.py +++ b/devices_general/detectors.py @@ -253,8 +253,17 @@ class DIAClient: def take_pedestal(self, n_frames, analyze=True, n_bad_modules=0, update_config=True): from jungfrau_utils.scripts.jungfrau_run_pedestals import run as jungfrau_utils_run directory = '/sf/%s/data/p%d/raw/JF_pedestal/' % (self.instrument, self.pgroup) + if not os.path.exists(directory): + print("Directory %s not existing, creating it" % directory) + os.makedirs(directory) + + res_dir = directory.replace("/raw/", "/res/") + if not os.path.exists(res_dir): + print("Directory %s not existing, creating it" % res_dir) + os.makedirs(res_dir) filename = "pedestal_%s.h5" % datetime.now().strftime("%Y%m%d_%H%M") - jungfrau_utils_run(self._api_address, filename, directory, self.pgroup, 0.1, self.detector_config["exptime"], + period = 0.04 + jungfrau_utils_run(self._api_address, filename, directory, self.pgroup, period, self.detector_config["exptime"], n_frames, 1, analyze, n_bad_modules, self.instrument, self.jf_name) if update_config: diff --git a/loptics/bernina_experiment.py b/loptics/bernina_experiment.py index 232131c..55b8b44 100755 --- a/loptics/bernina_experiment.py +++ b/loptics/bernina_experiment.py @@ -18,13 +18,18 @@ class Laser_Exp: pass #Waveplate and Delay stage - self.wp = MotorRecord(Id+'-M533:MOT') + self.wp = MotorRecord(Id+'-M534:MOT') + self._delayStg = MotorRecord(self.Id+'-M521:MOTOR_1') + self.pump_delay = DelayStage(self._delayStg) + + #LAM delay stage + self._lam_delayStg = SmarActRecord('SLAAR21-LMTS-LAM11') + self.lam_delay = DelayStage(self._lam_delayStg) + + #SmarAct ID self.IdSA = 'SARES23' - #self._delayStg = SmarActRecord(self.IdSA+'-ESB17') - #self.eos_delay = DelayStage(self._delayStg) - ### Mirrors used in the expeirment ### try: diff --git a/timing/SLAAR-LTIM02-EVR0:Pul2-Delay-RB b/timing/SLAAR-LTIM02-EVR0:Pul2-Delay-RB index 8fbe75c..9e9db53 100644 --- a/timing/SLAAR-LTIM02-EVR0:Pul2-Delay-RB +++ b/timing/SLAAR-LTIM02-EVR0:Pul2-Delay-RB @@ -1,2 +1,2 @@ -# Sun Mar 18 13:14:38 2018 +# Thu May 31 22:39:30 2018 0.001990231000000 \ No newline at end of file diff --git a/timing/SLAAR-LTIM02-EVR0:Pul3-Delay-RB b/timing/SLAAR-LTIM02-EVR0:Pul3-Delay-RB index c791921..985728c 100644 --- a/timing/SLAAR-LTIM02-EVR0:Pul3-Delay-RB +++ b/timing/SLAAR-LTIM02-EVR0:Pul3-Delay-RB @@ -1,2 +1,2 @@ # Sat Mar 17 19:39:21 2018 -0.001996422000000 +0.001996429000000 diff --git a/timing/SLAAR02-TSPL-EPL:CURR_DELTA_T b/timing/SLAAR02-TSPL-EPL:CURR_DELTA_T index 937a49d..8a94216 100644 --- a/timing/SLAAR02-TSPL-EPL:CURR_DELTA_T +++ b/timing/SLAAR02-TSPL-EPL:CURR_DELTA_T @@ -1,2 +1,2 @@ -# Sun Mar 18 13:14:38 2018 -0.000000004999803 \ No newline at end of file +# Thu May 31 22:39:30 2018 +0.000000006999952 \ No newline at end of file diff --git a/timing/lasertiming.py b/timing/lasertiming.py index 5d9ddc4..3726076 100644 --- a/timing/lasertiming.py +++ b/timing/lasertiming.py @@ -5,7 +5,7 @@ import time from ..devices_general.utilities import Changer -_basefolder = "/sf/bernina/config/src/python/devel/eco/timing" +_basefolder = "/sf/bernina/config/src/python/eco/timing" def timeToStr(value,n=12): fmt = "%%+.%df" % n diff --git a/xoptics/slits.py b/xoptics/slits.py index d79aad2..650e07b 100755 --- a/xoptics/slits.py +++ b/xoptics/slits.py @@ -44,7 +44,9 @@ class SlitBlades: self.set_vg(height) def __repr__(self): - return '(%s,%s) mm'%(self.get_hg(),self.get_vg()) + string1 = 'gap: (%g,%g) mm'%(self.get_hg(),self.get_vg()) + string2 = 'pos: (%g,%g) mm'%(self.get_ho(),self.get_vo()) + return '\n'.join((string1,string2)) class SlitFourBlades: @@ -103,7 +105,9 @@ class SlitFourBlades: self.set_vg(height) def __str__(self): - return '(%g,%g) mm'%(self.get_hg(),self.get_vg()) + string1 = 'gap: (%g,%g) mm'%(self.get_hg(),self.get_vg()) + string2 = 'pos: (%g,%g) mm'%(self.get_ho(),self.get_vo()) + return '\n'.join((string1,string2)) def __repr__(self): return self.__str__() @@ -146,4 +150,6 @@ class SlitPosWidth: self.set_vg(height) def __repr__(self): - return '(%s,%s) mm'%(self.get_hg(),self.get_vg()) + string1 = 'gap: (%g,%g) mm'%(self.get_hg(),self.get_vg()) + string2 = 'pos: (%g,%g) mm'%(self.get_ho(),self.get_vo()) + return '\n'.join((string1,string2))