135 lines
3.7 KiB
Python
Executable File
135 lines
3.7 KiB
Python
Executable File
import time
|
|
|
|
def scan_2dfe_center():
|
|
|
|
started = time.strftime("%H:%M:%S", time.localtime())
|
|
|
|
fe_slit_sizex = 0.4
|
|
fe_slit_sizey = 0.4
|
|
|
|
offset_sizex = -0.3
|
|
offset_sizey = 0.0
|
|
|
|
fe_slit_centerx = 0.0
|
|
fe_slit_centery = 0.0
|
|
|
|
# offset_centerx = -0.3
|
|
# offset_centery = 1.25
|
|
|
|
offset_centerx = -0.6
|
|
offset_centery = 1.3
|
|
|
|
# Read initial speed
|
|
# original fe_slit_ini_x_speed = 0.1000
|
|
# original fe_slit_ini_y_speed = 0.1000
|
|
|
|
fe_slit_ini_x_speed = BML_FE_centerX.getSpeed()
|
|
fe_slit_ini_y_speed = BML_FE_centerY.getSpeed()
|
|
|
|
BML_FE_centerX.setSpeed(0.8)
|
|
BML_FE_centerY.setSpeed(0.8)
|
|
|
|
sizex = fe_slit_sizex + offset_sizex
|
|
sizey = fe_slit_sizey + offset_sizey
|
|
|
|
BML_FE_sizeX.move(sizex)
|
|
BML_FE_sizeY.move(sizey)
|
|
|
|
centerx = fe_slit_centerx + offset_centerx
|
|
centery = fe_slit_centery + offset_centery
|
|
|
|
BML_FE_centerX.move(centerx)
|
|
BML_FE_centerY.move(centery)
|
|
|
|
x_range = 1.1
|
|
y_range = 1.1
|
|
|
|
x_steps = 0.05
|
|
y_steps = 0.05
|
|
|
|
xmin = centerx - x_range/2
|
|
xmax = centerx + x_range/2
|
|
|
|
ymin = centery - y_range/2
|
|
ymax = centery + y_range/2
|
|
|
|
print(xmin)
|
|
print(xmax)
|
|
print(ymin)
|
|
print(ymax)
|
|
print(x_steps)
|
|
print(y_steps)
|
|
|
|
BML_FE_centerX.move(xmin)
|
|
BML_FE_centerY.move(ymin)
|
|
|
|
sensors = [BML_FE_CX_RBV, BML_FE_CY_RBV, BML_FE_CX_RBV, BML_FE_CX_RBV, BML_FE_CX_RBV, CADC2]
|
|
#sensors = [BML_FE_CX_RBV, BML_FE_CY_RBV, BML_XBPM_B_SUM, BML_XBPM_B_POS_X, BML_XBPM_B_POS_Y, CADC2]
|
|
#detector = Keithley_2_raw
|
|
|
|
ascan([BML_FE_centerX, BML_FE_centerY], sensors, [xmin, ymin], [xmax, ymax], [x_steps, y_steps], latency=0.1, zigzag=False)
|
|
|
|
BML_FE_sizeX.move(offset_sizex)
|
|
BML_FE_sizeY.move(offset_sizey)
|
|
|
|
BML_FE_centerX.move(offset_centerx)
|
|
BML_FE_centerY.move(offset_centery)
|
|
|
|
BML_FE_centerX.setSpeed(0.1)
|
|
BML_FE_centerY.setSpeed(0.1)
|
|
|
|
stopped = time.strftime("%H:%M:%S", time.localtime())
|
|
print("started: " + started)
|
|
print("stopped: " + stopped)
|
|
|
|
def scan_xbpm2():
|
|
|
|
started = time.strftime("%H:%M:%S", time.localtime())
|
|
# In case that we will later define a center position
|
|
# original xbpm2_cx = 1.395, see /sls/X11MA/data/X11MA/scans/2511/0081.json
|
|
# original xbpm2_cy = -139.7175
|
|
xbpm2_cx = 0.0
|
|
xbpm2_cy = -339.7
|
|
# Read initial speed
|
|
# original xbpm2_ini_x_speed = 2.500
|
|
# original xbpm2_ini_y_speed = 2.500
|
|
|
|
xbpm2_ini_x_speed = BML_XBPM_B_TRX.getSpeed()
|
|
xbpm2_ini_y_speed = BML_XBPM_B_TRY.getSpeed()
|
|
|
|
BML_XBPM_B_TRX.setSpeed(2.5)
|
|
BML_XBPM_B_TRY.setSpeed(2.5)
|
|
|
|
BML_XBPM_B_TRY.move(xbpm2_cy)
|
|
BML_XBPM_B_TRX.move(xbpm2_cx)
|
|
|
|
x_range = 0.5
|
|
y_range = 0.5
|
|
x_steps = 0.05
|
|
y_steps = 0.05
|
|
|
|
xmin = xbpm2_cx - x_range/2
|
|
xmax = xbpm2_cx + x_range/2
|
|
|
|
ymin = xbpm2_cy - y_range/2
|
|
ymax = xbpm2_cy + y_range/2
|
|
|
|
BML_XBPM_B_TRX.move(xmin)
|
|
BML_XBPM_B_TRY.move(ymin)
|
|
|
|
sensors = [BML_XBPM_B_TRX_RBV, BML_XBPM_B_TRY_RBV, BML_XBPM_B_SUM, BML_XBPM_B_POS_X, BML_XBPM_B_POS_Y]
|
|
#detector = Keithley_2_raw
|
|
|
|
ascan([BML_XBPM_B_TRX, BML_XBPM_B_TRY], sensors, [xmin, ymin], [xmax, ymax], [x_steps, y_steps], latency=0.4, zigzag=True)
|
|
#ascan([FE_CX, FE_CY], sensors, [-1.0, 0.3], [0.0, 1.3], [0.1, 0.1], latency=0.5, zigzag=True)
|
|
#ascan([FE_CX, FE_CY], sensors, [xmin, ymin], [xmax, ymax], [STEPS, STEPS], latency=0.25, zigzag=True)
|
|
|
|
BML_XBPM_B_TRY.move(xbpm2_cy)
|
|
BML_XBPM_B_TRX.move(xbpm2_cx)
|
|
|
|
BML_XBPM_B_TRY.setSpeed(xbpm2_ini_y_speed)
|
|
BML_XBPM_B_TRX.setSpeed(xbpm2_ini_x_speed)
|
|
|
|
stopped = time.strftime("%H:%M:%S", time.localtime())
|
|
print("started: " + started)
|
|
print("stopped: " + stopped) |