Files
x11ma/script/test/slit_otf.py
T
2026-06-24 13:28:45 +02:00

72 lines
1.7 KiB
Python

def FE_scan_prepare():
FE_centerX_ini = BML_FE_centerX.read()
FE_centerY_ini = BML_FE_centerY.read()
BML_FE_centerX.setSpeed(1.5)
BML_FE_centerY.setSpeed(1.5)
FE_centerX = 0.0
FE_centerY = 0.0
FE_sizeX = 0.1
FE_sizeY = 0.1
x_range = 4.0
y_range = 4.0
x_steps = 0.2
y_steps = 0.2
xmin = FE_centerX - x_range/2
xmax = FE_centerX + x_range/2
ymin = FE_centerY - y_range/2
ymax = FE_centerY + y_range/2
xsteps = x_steps
ysteps = y_steps
BML_FE_centerX.update()
BML_FE_centerY.update()
#started = time.strftime("%H:%M:%S", time.localtime())
BML_FE_centerX.move(xmin)
BML_FE_centerY.move(ymin)
def FE_scan_move():
BML_FE_centerY.setSpeed(0.05)
BML_FE_centerY.moveAsync(2.0)
for i in range(0,10):
BML_FE_centerX.move(2.0)
BML_FE_centerX.move(-2.0)
print(i)
def time_scan_2DFE(samples=850, interval=0.1):
try:
sensors = [SR_current, "ca://X11MA-FE-SL1:TRXR-VelAct", 'ca://X11MA-FE-SL1:TRXW-VelAct', 'ca://X11MA-FE-SL1:TRXR-PosAct', 'ca://X11MA-FE-SL1:TRXW-PosAct', 'ca://X11MA-FE-SL1:TRYB-VelAct', 'ca://X11MA-FE-SL1:TRYT-VelAct', 'ca://X11MA-FE-SL1:TRYB-PosAct', 'ca://X11MA-FE-SL1:TRYT-PosAct']
#85 * PASSES
tscan(sensors, samples, interval, auto_range=(samples<0))
except ScanAbortedException as ex:
print "Stop Scan"
def run_parallel_scan(fixed=True):
FE_scan_prepare()
if fixed:
parallelize(FE_scan_move, time_scan_2DFE)
else:
task = fork((time_scan_2DFE,(-1,)))
try:
FE_scan_move()
except:
print sys.exc_info()
finally:
abort()
run_parallel_scan()