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)