Added Bernina beam steering (las.eos, las.thz, las.par)
This commit is contained in:
+1
-1
@@ -157,7 +157,7 @@ aliases = {
|
||||
|
||||
},
|
||||
'SLAAR21-LMOT' : {
|
||||
'alias' : 'LasExp',
|
||||
'alias' : 'Las',
|
||||
'z_und' : 142,
|
||||
'desc' : 'Experiment laser optics',
|
||||
'eco_type' : 'loptics.bernina_experiment.Laser_Exp'},
|
||||
|
||||
@@ -153,13 +153,13 @@ class JF:
|
||||
config = self.client.get_config()
|
||||
return config
|
||||
|
||||
def set_config(self, pedestal_fname = '/gpfs/sf-data/bernina/derived/p16582/JF_pedestal/pedestal_20171128_1833_res.h5', fname = "/sf/bernina/data/JF.h5", N = 1000):
|
||||
def set_config(self, pedestal_fname = '/sf/bernina/data/res/p16582/JF_pedestal/pedestal_20180302_1512_res.h5', fname = "/sf/bernina/data/raw/p16582/JF.h5", N = 1000):
|
||||
|
||||
self.reset()
|
||||
self.detector_config = {
|
||||
"timing": "trigger",
|
||||
"exptime": 0.00001,
|
||||
"delay" : 0.00199, # this is the magic aldo number
|
||||
"delay" : 0.001987, # this is the magic aldo number
|
||||
"frames" : 1,
|
||||
"cycles": N}
|
||||
|
||||
@@ -173,10 +173,11 @@ class JF:
|
||||
|
||||
self.backend_config = {
|
||||
"n_frames": N,
|
||||
"gain_corrections_filename": "/sf/bernina/data/res/p16582/gains.h5",
|
||||
"gain_corrections_filename": "/sf/bernina/data/res/p16582/gains_I0.h5",
|
||||
"gain_corrections_dataset": "gains",
|
||||
"pede_corrections_filename": pedestal_fname,
|
||||
"pede_corrections_dataset": "gains",
|
||||
"pede_mask_dataset" : "pixel_mask",
|
||||
"activate_corrections_preview": True}
|
||||
|
||||
|
||||
|
||||
@@ -6,22 +6,9 @@ from .delay_stage import DelayStage
|
||||
class Laser_Exp:
|
||||
def __init__(self,Id):
|
||||
self.Id = Id
|
||||
self.delay_stage_offset =160.
|
||||
|
||||
self.delayStg = SmarActRecord('SARES23-ESB16')
|
||||
self.deltest = DelayStage(self.delayStg)
|
||||
|
||||
### Mirrors used in the expeirment ###
|
||||
try:
|
||||
self.phi = MotorRecord(Id+'-M517:MOT')
|
||||
except:
|
||||
print('No Standa steering phi mirror')
|
||||
pass
|
||||
try:
|
||||
self.th = MotorRecord(Id+'-M518:MOT')
|
||||
except:
|
||||
print('No Standa steering theta mirror')
|
||||
pass
|
||||
|
||||
try:
|
||||
self.lensx = MotorRecord('SARES20-EXP:MOT_DIODE')
|
||||
except:
|
||||
@@ -30,22 +17,51 @@ class Laser_Exp:
|
||||
|
||||
#Waveplate and Delay stage
|
||||
self.wp = MotorRecord(Id+'-M533:MOT')
|
||||
self.delay_stage = MotorRecord(Id+'-M521:MOTOR_1')
|
||||
|
||||
#SmarAct ID
|
||||
self.IdSA = 'SARES23'
|
||||
self._delayStg = SmarActRecord(self.IdSA+'-ESB17')
|
||||
self.eos_delay = DelayStage(self._delayStg)
|
||||
|
||||
def get_delay(self):
|
||||
|
||||
motor_pos = self.delay_stage.wm()
|
||||
motor_pos -= self.delay_stage_offset
|
||||
delay = motor_pos*2.*3.33333333
|
||||
return delay
|
||||
### Mirrors used in the expeirment ###
|
||||
try:
|
||||
self.eos_rot = SmarActRecord(self.IdSA+'-ESB18')
|
||||
except:
|
||||
print('No Smaract EOSrot')
|
||||
pass
|
||||
|
||||
def delay_to_motor(self,delay):
|
||||
motor_pos = delay/2./3.33333333 + self.delay_stage_offset
|
||||
return motor_pos
|
||||
try:
|
||||
self.eos_gonio = SmarActRecord(self.IdSA+'-ESB3')
|
||||
except:
|
||||
print('No Smaract EOSGonio')
|
||||
pass
|
||||
|
||||
def set_delay(self, delay):
|
||||
motor_pos = self.delay_to_motor(delay)
|
||||
self.delay_stage.mv(motor_pos)
|
||||
return (delay, motor_pos)
|
||||
try:
|
||||
self.thz_rot = SmarActRecord(self.IdSA+'-ESB16')
|
||||
except:
|
||||
print('No Smaract THzrot')
|
||||
pass
|
||||
|
||||
|
||||
try:
|
||||
self.thz_gonio = SmarActRecord(self.IdSA+'-ESB2')
|
||||
except:
|
||||
print('No Smaract THzGonio')
|
||||
pass
|
||||
|
||||
try:
|
||||
self.thz_z = SmarActRecord(self.IdSA+'-ESB1')
|
||||
except:
|
||||
print('No Smaract THzZ')
|
||||
pass
|
||||
|
||||
try:
|
||||
self.par_x = SmarActRecord(self.IdSA+'-ESB5')
|
||||
except:
|
||||
print('No Smaract ParX')
|
||||
pass
|
||||
try:
|
||||
self.par_z = SmarActRecord(self.IdSA+'-ESB4')
|
||||
except:
|
||||
print('No Smaract ParZ')
|
||||
pass
|
||||
|
||||
Reference in New Issue
Block a user