42 lines
1.2 KiB
Python
42 lines
1.2 KiB
Python
scan_start = 9.0
|
|
scan_stop = 9.2
|
|
scan_step = 0.002
|
|
passes = 1
|
|
zigzag = False
|
|
|
|
|
|
setup_brag_plot(False)
|
|
|
|
scaler.stop() #caput("X10DA-ES-SCALER.CNT", 0)
|
|
scaler.channels[0].setPreset(False) #caput("X10DA-ES-SCALER.G1", 0)
|
|
#scaler.channels[0].setPresetValue(0)
|
|
scaler.setOneShot() #caput("X10DA-ES-SCALER.CONT", 0)
|
|
|
|
caput("X10DA-ES1:START-CSMPL", 1)
|
|
caput("X10DA-ES1:TOTAL-CYCLES", 5)
|
|
caput("X10DA-ES1:SMPL-BTN", 1)
|
|
|
|
i0 = CrlogicSensor("I0", "SCALER12", True)
|
|
i1 = CrlogicSensor("I1", "SCALER13", True)
|
|
i2 = CrlogicSensor("I2", "SCALER14", True)
|
|
ref = CrlogicSensor("ScalerRef", "SCALER15", True)
|
|
|
|
class AbsCalc(Readable):
|
|
def read(self):
|
|
return math.log(math.fabs(i0.take()) / math.fabs(i1.take()))
|
|
abs_calc = AbsCalc()
|
|
|
|
class ECalc(Readable):
|
|
def read(self):
|
|
return 12.39842 / (crystal.take() * math.sin( math.radians(bragg.readback.take())))
|
|
|
|
e_calc = ECalc()
|
|
sensors = [crystal, i0, i1, i2, ref, abs_calc, e_calc]
|
|
|
|
bragg.move(scan_start)
|
|
#caput("X10DA-OP-MO3:ROX.URIP", 'No')
|
|
scaler.start()
|
|
|
|
r1 = hscan(crlogic_config, bragg, sensors, scan_start, scan_stop, scan_step, passes=passes, zigzag=zigzag)
|
|
|