This commit is contained in:
gac-alvra
2025-09-04 11:40:41 +02:00
parent 7a44110577
commit 97003e3b4f
95 changed files with 254 additions and 49 deletions

View File

@@ -1,45 +1,62 @@
#Wed Apr 28 10:05:51 CEST 2021
#Thu Sep 04 11:39:10 CEST 2025
autoSaveScanData=true
simulation=false
commandExecutionEvents=false
logDaysToLive=50
xscanCrlogicChannel=null
dataScanSaveOutput=false
userAuthenticator=
logLevelConsole=Off
scanStreamerPort=-1
dataScanSaveScript=false
dataScanSaveSetpoints=false
notifiedTasks=null
parallelInitialization=false
fdaSerialization=false
dataTransferPath=null
saveConsoleSessionFiles=false
versionTrackingManual=true
dataTransferMode=null
xscanAppendSuffix=true
hostName=null
userManagement=false
instanceName=AL
disableEmbeddedAttributes=false
dataServerPort=-1
hideServerMessages=false
serverPort=8080
versionTrackingEnabled=true
dataPath={data}/{year}_{month}/{date}/{date}_{time}_{name}
serverEnabled=false
dataScanReleaseRecords=false
depthDimension=0
dataScanPreserveTypes=false
logLevel=Info
dataScanFlushRecords=false
logPath={logs}/{date}_{time}
dataLayout=default
disableDataFileLogs=false
sessionHandling=null
dataScanSaveTimestamps=false
sessionHandling=Off
terminalEnabled=false
notificationLevel=Off
terminalPort=3579
dataTransferUser=null
xscanContinuousUpdate=false
versionTrackingLogin=auto
noBytecodeFiles=false
versionTrackingRemote=https\://gitea.psi.ch/pshell_config/saresa.git
dataScanLazyTableCreation=false
pythonHome=
xscanMoveTimeout=600
commandExecutionEvents=false
logDaysToLive=50
xscanCrlogicSimulated=false
logLevelConsole=Off
filePermissionsConfig=Default
scanStreamerPort=-1
dataScanSaveSetpoints=false
versionTrackingManual=true
dataTransferMode=Off
userManagement=false
instanceName=AL
dataServerPort=-1
hideServerMessages=false
dataScanReleaseRecords=false
dataScanPreserveTypes=false
dataScanFlushRecords=false
logPath={logs}/{date}_{time}
filePermissionsLogs=Default
filePermissionsScripts=Default
xscanCrlogicPrefix=null
filePermissionsData=Default
xscanCrlogicAbortable=true
createSessionFiles=false
versionTrackingLogin={context}/svcusr-hlapp_robot
versionTrackingRemote=git@git.psi.ch\:pshell_config/saresa.git
dataProvider=h5
xscanCrlogicIoc=null
saveCommandStatistics=false

View File

@@ -1,23 +1,25 @@
#Fri Apr 09 17:22:14 CEST 2021
#Tue Aug 16 17:02:14 CEST 2022
sessionsPath={outp}/sessions
scriptPath={home}/script
pluginsPath={home}/plugins
configFileDevices={config}/devices.properties
consoleSessionsPath={sessions}/console
libraryPath={script}; {script}/Lib
configFilePlugins={config}/plugins.properties
contextPath={outp}/context
xscanPath={script}
queuePath={script}
extensionsPath={home}/extensions
configPath={home}/config
configFileSessions={config}/sessions.properties
userSessionsPath={sessions}/user
dataPath={outp}/data
devicesPath={home}/devices
configFileVariables={config}/variables.properties
configFileSettings={config}/settings.properties
logPath={outp}/log
wwwPath={home}/www
imagesPath={outp}/images
configFile={config}/config.properties
scriptType=py
configFileTasks={config}/tasks.properties
pluginsPath={home}/plugins
consoleSessionsPath={sessions}/console
libraryPath={script}; {script}/Lib
configFilePlugins={config}/plugins.properties
contextPath={outp}/context
devicesPath={home}/devices
configFileSettings={config}/settings.properties
imagesPath={outp}/images
scriptType=py

6
config/variables.properties Normal file → Executable file
View File

@@ -1,2 +1,4 @@
#Tue Mar 23 17:21:24 CET 2021
FileSequentialNumber=594
#Thu May 08 18:44:31 CEST 2025
LastRunDate=250508
FileSequentialNumber=776
DaySequentialNumber=4

0
devices/CamServer.properties Normal file → Executable file
View File

0
devices/Camera Server.properties Normal file → Executable file
View File

View File

@@ -0,0 +1,25 @@
#Thu Jan 19 10:50:45 CET 2023
spatialCalOffsetY=NaN
spatialCalOffsetX=NaN
colormapLogarithmic=false
scale=1.0
grayscale=false
spatialCalScaleX=NaN
spatialCalScaleY=NaN
colormapMax=NaN
rescaleOffset=0.0
roiWidth=-1
colormap=Grayscale
invert=false
colormapMin=NaN
rotation=0.0
rotationCrop=false
rescaleFactor=1.0
spatialCalUnits=mm
flipVertically=false
roiHeight=-1
flipHorizontally=false
colormapAutomatic=false
roiY=0
roiX=0
transpose=false

View File

@@ -1,30 +1,32 @@
#Mon Apr 26 15:10:08 CEST 2021
spatialCalOffsetY=0.0
spatialCalOffsetX=0.0
#Thu Aug 28 10:30:30 CEST 2025
=250
spatialCalOffsetY=-50.0
spatialCalOffsetX=-50.0
colormapLogarithmic=false
scale=1.0
grayscale=false
spatialCalScaleX=1.0
spatialCalScaleY=1.0
spatialCalScaleX=-1.0
spatialCalScaleY=-1.0
colormapMax=5035.0
serverURL=null
colormapMax=NaN
rescaleOffset=0.0
roiWidth=-1
50=
colormap=Grayscale
imageWidth=1280
imageWidth=750
invert=false
colormapMin=NaN
colormapMin=0.0
rotation=0.0
rotationCrop=false
rescaleFactor=1.0
imageHeight=1024
imageHeight=776
spatialCalUnits=mm
flipVertically=false
roiHeight=-1
flipHorizontally=false
colormapAutomatic=false
colormapAutomatic=true
roiY=0
roiX=0
transpose=false
regionStartX=0
regionStartY=0
regionStartX=300
regionStartY=250

0
devices/Data pipeline.properties Normal file → Executable file
View File

0
devices/Image Averager.properties Normal file → Executable file
View File

3
devices/Time.properties Normal file → Executable file
View File

@@ -1,4 +1,4 @@
#Mon Feb 03 15:08:35 CET 2020
#Sat Mar 15 21:42:33 CET 2025
minValue=NaN
unit=null
offset=0.0
@@ -7,4 +7,5 @@ precision=-1
rotation=false
sign_bit=0
scale=1.0
description=null
resolution=NaN

View File

@@ -1,11 +1,13 @@
#Mon Nov 25 14:52:47 CET 2019
#Wed Dec 13 10:51:53 CET 2023
sendStrategy=complete_all
dropIncomplete=false
keepListeningOnStop=false
disableCompression=false
parallelHandlerProcessing=true
sendBuildChannelConfig=at_startup
analizeHeader=false
sendAwaitFirstMessage=false
headerReservingAllocator=false
socketType=DEFAULT
validationInconsistency=keep_as_is
byteBufferAllocator=false

0
devices/dp1.properties Normal file → Executable file
View File

3
devices/dummy_motor.properties Normal file → Executable file
View File

@@ -1,9 +1,10 @@
#Tue Jun 16 19:34:40 CEST 2020
#Tue Aug 16 17:02:17 CEST 2022
offset=0.0
maxValue=10.0
rotation=false
precision=2
scale=1.0
description=null
estbilizationDelay=0
maxSpeed=10.0
resolution=NaN

0
devices/image.properties Normal file → Executable file
View File

0
devices/m1.properties Normal file → Executable file
View File

0
devices/m2.properties Normal file → Executable file
View File

3
devices/motor_x1.properties Normal file → Executable file
View File

@@ -1,9 +1,10 @@
#Wed Sep 18 18:04:41 CEST 2019
#Tue Aug 16 17:02:17 CEST 2022
offset=0.0
maxValue=25.0
precision=4
rotation=false
scale=1.0
description=null
estbilizationDelay=0
maxSpeed=3.0
resolution=0.001

0
devices/p1.properties Normal file → Executable file
View File

0
devices/src1.properties Normal file → Executable file
View File

0
devices/src2.properties Normal file → Executable file
View File

0
plugins/CameraCalibrationDialog.java Normal file → Executable file
View File

0
plugins/Correlation.java Normal file → Executable file
View File

0
plugins/Inventory.java Normal file → Executable file
View File

0
plugins/ScreenPanel5.java Normal file → Executable file
View File

0
plugins/ScreenPanel6.form Normal file → Executable file
View File

0
plugins/ScreenPanel6.java Normal file → Executable file
View File

0
script/1D_EOscan.scan Normal file → Executable file
View File

0
script/1D_HUber_jet_scan.scan Normal file → Executable file
View File

0
script/1D_Huber_pinhole_sca.scan Normal file → Executable file
View File

0
script/1D_Huber_pinhole_scan.scan Normal file → Executable file
View File

0
script/1D_Huber_scan.scan Normal file → Executable file
View File

0
script/1D_delayline_scan.scan Normal file → Executable file
View File

0
script/2D_Huber_pinhole_scan.scan Normal file → Executable file
View File

69
script/AlvraScanWait.py Normal file
View File

@@ -0,0 +1,69 @@
IN_POSITION_BAND = 10.0
#cam_server.start("SAROP21-PSRD103_sp", True)
#cam_server.start("SAROP21-PPRM102_sp", True)
#cam_server.start("SAROP21-PSRD103_sp", True)
#cam_server.start("SAROP11-PSCR106_sp", True)
#cam_server.start("SAROP11-PPRM122_sp", True)
#cam_server.start("SATOP21-PSCR162_sp", True)
#cam_server.stream.waitCacheChange(-1)
#i = cam_server.stream.getChild("intensity")
#iavg = create_averager(i, 20, interval = -1)
#ycent = cam_server.stream.getChild("y_center_of_mass")
#ycentavg = create_averager(ycent, 20, interval = -1)
#xcent = cam_server.stream.getChild("x_center_of_mass")
#xcentavg = create_averager(xcent, 20, interval = -1)
#iode = Channel("SLAAR21-LSCP-DRS1FNS:CH2:BOXCAR.VALP")
#iavg = create_averager(diode, 30, interval = -1)
Keithley = Channel("SATOP31-CSSU-PCEL1381:READOUT")
K_avg = create_averager(Keithley, 10, interval = -1)
def beam_ok():
return "Yes"
I0 = caget ("SATFE10-PEPG046:PHOTON-ENERGY-PER-PULSE-AVG")
if I0 > 100:
return "Yes"
else :
return "No"
def before_sampling(rec):
while beam_ok() == "No":
time.sleep(0.1)
print(".")
def after_sampling(rec):
if beam_ok() == "No":
rec.invalidate()
i0 = Channel("SATFE10-PEPG046:PHOTON-ENERGY-PER-PULSE-AVG")
class DCM(RegisterBase):
def doWrite(self, value):
caput ("SAROP11-ARAMIS:ENERGY_SP", value)
time.sleep(0.5)
cawait('SAROP11-ODCM105:MOVING', 0, timeout = 20.0, type = 'i')
#cawait('SAROP11-ODCM105:DMOV', 1, timeout = 20.0, type = 'i')
#cawait('SFB_BEAM_ENERGY_ECOL:SUM-ERROR-OK', 1, timeout = 10.0, type = 'i')
if abs(value - self.read()) > IN_POSITION_BAND :
raise Exception("Cannot set mono")
def doRead(self):
return caget("SAROP11-ARAMIS:ENERGY")
alvra = DCM()
alvra.initialize()
i0 = Channel("SARFE10-PBPG050:PHOTON-ENERGY-PER-PULSE-US")
#acc = Channel("SARCL02-MBND100:P-READ")
#k = Channel("SARUN-UIND-MOT:KALL.VAL")
Theta=Channel("SAROP11-ODCM105:RX12.RBV")
Gap =Channel("SAROP11-ODCM105:T2.RBV")
#lscan( alvra, [Theta,Gap], 10000.0, 10001.0 ,0.002,0.2,setpoints=True)
lscan( alvra, [Theta,Gap], 2500.0, 3000.0 ,10.0 ,2 ,setpoints=True, passes=2,zigzag=True)

0
script/Bernina_MonoScan_PDIM110.scan Normal file → Executable file
View File

0
script/CD.scan Normal file → Executable file
View File

2
script/Correlation/Correlation2.py Normal file → Executable file
View File

@@ -119,7 +119,7 @@ try:
_stream.initialize()
_stream.start(True)
if _camname != None:
shared = _camname.endswith("_sp1")
shared = _camname.endswith("_sp")
print "Camera: " , _camname, " shared: ", shared
cam_server.start(_camname, shared )

0
script/Huberscan_LaserXrays.scan Normal file → Executable file
View File

0
script/Huberscan_PIPS.scan Normal file → Executable file
View File

0
script/Huberscan_PIPS_2.scan Normal file → Executable file
View File

0
script/Huberscan_PIPS_Continuous.scan Normal file → Executable file
View File

0
script/Huberscan_PIPS_Continuous2.scan Normal file → Executable file
View File

0
script/Huberscan_PIPS_Continuous_All_PIDs.py Normal file → Executable file
View File

0
script/Huberscan_PIPS_PBPS.scan Normal file → Executable file
View File

0
script/Huberscan_PIPS_PBPS_continuous.scan Normal file → Executable file
View File

0
script/IZERO_scan.scan Normal file → Executable file
View File

0
script/Io_correlation.scan Normal file → Executable file
View File

0
script/Io_target.scan Normal file → Executable file
View File

0
script/Io_target_calibrated.scan Normal file → Executable file
View File

0
script/KnifeEdge_Ioxos.scan Normal file → Executable file
View File

0
script/LaserSpectrum.scan Normal file → Executable file
View File

0
script/Laser_mirror_scan.scan Normal file → Executable file
View File

0
script/Laser_mirror_scan_1.scan Normal file → Executable file
View File

0
script/MonoScan.scan Normal file → Executable file
View File

0
script/MonoScan_Ioxos.scan Normal file → Executable file
View File

0
script/MonoScan_PBPS122.scan Normal file → Executable file
View File

0
script/MonoScan_PBPS122_PIPS.scan Normal file → Executable file
View File

0
script/MonoScan_PPR110.scan Normal file → Executable file
View File

0
script/MonoScan_Tune.scan Normal file → Executable file
View File

0
script/PALM_drift.scan Normal file → Executable file
View File

0
script/PALM_lens.scan Normal file → Executable file
View File

0
script/PALM_no_steak_x.scan Normal file → Executable file
View File

0
script/PALM_no_steak_y.scan Normal file → Executable file
View File

0
script/PALM_no_steak_z.scan Normal file → Executable file
View File

0
script/PALM_steak_x.scan Normal file → Executable file
View File

0
script/PALM_steak_y.scan Normal file → Executable file
View File

0
script/PALM_steak_z.scan Normal file → Executable file
View File

View File

@@ -0,0 +1 @@
[ "Linear", [ [ "Channel", "SAROP11-CVME-PBPS2:Lnk9Reg65", 1003.0, 1005.0, 0.1 ] ], [ [ "Channel", "SAROP11-CVME-PBPS2:Lnk9Ch13-DATA-SUM", 10, 0.1, "Enabled" ] ], false, [ ], "", 1, 1.0, 0.0, false, false, true, true, "", "", " ", "", 0, null, null, "Positioner", false, true ]

0
script/PBPS122-PIPS-Correlation.scan Normal file → Executable file
View File

0
script/PBPS122-PIPS2-Correlation.scan Normal file → Executable file
View File

0
script/PSEN knife edge.scan Normal file → Executable file
View File

0
script/PSEN-timeseries.scan Normal file → Executable file
View File

0
script/PhotonDiag/PALM_drift.scan Normal file → Executable file
View File

2
script/PhotonDiag/PALM_t0.scan Normal file → Executable file
View File

@@ -1 +1 @@
[ "Linear", [ [ "Channel", "SLAAR11-LMOT-M423:MOT.VAL", 100.0, 110.0, 0.03 ] ], [ [ "Channel", "SAROP11-PALMK118:CH1_BUFFER", 5, 0.02, "Enabled" ], [ "Channel", "SAROP11-PALMK118:CH2_BUFFER", 5, 0.02, "Enabled" ] ], false, [ ], "", 1, 1.0, 0.0, false, false, true, true, "", "", "", "", 0, null, null, "Positioner", false, true ]
[ "Linear", [ [ "Channel", "SLAAR11-LMOT-M423:MOT.VAL", 90.0, 120.0, 0.03 ] ], [ [ "Channel", "SAROP11-PALMK118:CH1_BUFFER", 10, 0.02, "Enabled" ], [ "Channel", "SAROP11-PALMK118:CH2_BUFFER", 10, 0.02, "Enabled" ] ], false, [ ], "", 1, 1.0, 0.0, false, false, true, true, "", "", "", "", 0, null, null, "Positioner", false, true ]

0
script/SARES11-SPEC125.scan Normal file → Executable file
View File

0
script/Tablescan_PIPS.scan Normal file → Executable file
View File

0
script/Test1.scan Normal file → Executable file
View File

0
script/Test2.scan Normal file → Executable file
View File

0
script/TestMonoScan.scan Normal file → Executable file
View File

0
script/Thzscan.scan Normal file → Executable file
View File

0
script/TimeScan.scan Normal file → Executable file
View File

0
script/incoupling_laser_pinhole_scan.scan Normal file → Executable file
View File

0
script/rotation_scan.scan Normal file → Executable file
View File

61
script/scan_alvra.py Executable file
View File

@@ -0,0 +1,61 @@
IN_POSITION_BAND = 10.0
#cam_server.start("SAROP21-PSRD103_sp", True)
#cam_server.start("SAROP21-PPRM102_sp", True)
#cam_server.start("SAROP21-PSRD103_sp", True)
#cam_server.start("SAROP11-PSCR106_sp", True)
#cam_server.start("SAROP11-PPRM122_sp", True)
cam_server.start("SATOP21-PSCR162_sp", True)
cam_server.stream.waitCacheChange(-1)
i = cam_server.stream.getChild("intensity")
iavg = create_averager(i, 20, interval = -1)
#ycent = cam_server.stream.getChild("y_center_of_mass")
#ycentavg = create_averager(ycent, 20, interval = -1)
#xcent = cam_server.stream.getChild("x_center_of_mass")
#xcentavg = create_averager(xcent, 20, interval = -1)
#iode = Channel("SLAAR21-LSCP-DRS1FNS:CH2:BOXCAR.VALP")
#iavg = create_averager(diode, 30, interval = -1)
def beam_ok():
I0 = caget ("SATFE10-PEPG046:PHOTON-ENERGY-PER-PULSE-AVG")
if I0 > 100:
return "Yes"
else :
return "No"
def before_sampling(rec):
while beam_ok() == "No":
time.sleep(0.1)
print(".")
def after_sampling(rec):
if beam_ok() == "No":
rec.invalidate()
i0 = Channel("SATFE10-PEPG046:PHOTON-ENERGY-PER-PULSE-AVG")
class DCM(RegisterBase):
def doWrite(self, value):
caput ("ATHOS:SetEnergy", value)
time.sleep(0.5)
cawait('ATHOS:MOVING', 0, timeout = 10.0, type = 'i')
cawait('SFB_BEAM_ENERGY_ECOL:SUM-ERROR-OK', 1, timeout = 10.0, type = 'i')
if abs(value - self.read()) > IN_POSITION_BAND :
raise Exception("Cannot set mono")
def doRead(self):
return caget("SAROP11-ODCM105:ENERGY")
alvra = DCM()
alvra.initialize()
i0 = Channel("SARFE10-PBPG050:PHOTON-ENERGY-PER-PULSE-US")
acc = Channel("SARCL02-MBND100:P-READ")
k = Channel("SARUN-UIND-MOT:KALL.VAL")
lscan( alvra, [iavg,i0,k,acc,ycentavg,xcentavg], 4930.0, 5030.0,1.0,0.2)
#scan( (pitch2,alvra), [diode,i0], (5.0,2100.0),(8.0,2300.0),(0.1,1.0), latency= 0.2, before_read=before_sampling, after_read=after_

0
script/t0 scan Normal file → Executable file
View File

0
script/test/Loading.py Normal file → Executable file
View File

View File

@@ -0,0 +1,21 @@
import ch.psi.pshell.bs.ProviderConfig.SocketType as SocketType
CAMERA = "SARES11-XMI125-C4P1"
#CAMERA = "SARES11-SPEC125-M1"
CAMERA_URL = caget(CAMERA + ":BSREADCONFIG").replace("tcp://daq", "tcp://")
#CAMERA_URL= "tcp://sf-sioc-cs-83:9020"
#CAMERA_URL= "tcp://sf-sioc-cs-64:9000"
print CAMERA_URL
st1 = Stream("st1", CAMERA_URL, SocketType.PULL)
st1.initialize()
st1.start()
st1.waitCacheChange(3000)
show_panel(st1)
#try:
# r=bscan (st1, records=10, timeout=10.0, domain_axis="Time", save=False, enabled_plots=[st1,])
# v= st1.getValues()
#finally:
# st1.close()

0
script/test/TestLscanCamServer.scan Normal file → Executable file
View File

0
script/testEdwinChris Normal file → Executable file
View File

0
script/tgfrog.scan Normal file → Executable file
View File

0
script/time zero.scan Normal file → Executable file
View File

0
script/timing yag.scan Normal file → Executable file
View File

0
script/undulators/K-calc2.py Normal file → Executable file
View File

0
script/unknown_PALM Normal file → Executable file
View File

0
script/unknown_PALM_2 Normal file → Executable file
View File