Adding mono + commit after the sticky bit.

This commit is contained in:
2025-03-27 09:42:30 +01:00
parent 792e562d48
commit 3d20248efe
62 changed files with 2156 additions and 249 deletions

BIN
channels/.pv_channels.py.swp Executable file

Binary file not shown.

287
channels/bs_channels.py Normal file → Executable file
View File

@ -1,18 +1,17 @@
# Channels to save at Cristallina endstation
##########################################################################################################
##########################################################################################################
##########################################################################################################
# BS channels
### JUNGFRAU DETECTORS
from slic.core.acquisition.detcfg import DetectorConfig
# TODO: JF settings regarding raw conversion, compression, etc.
detectors = [
"JF16T03V02",
# "JF16T03V01",
# "JF17T16V01",
"JF20T01V01",
"JF16T03V02", # 1.5M from 2025
# "JF16T03V01", # 1.5M from 2022
# "JF17T16V01", # 8M
"JF20T01V01", # IO
# "JF05T01V01", # 0.5M stripsel borrowed from Bernina, now registered in esc network
]
# ALLOWED_PARAMS = dict(
@ -53,26 +52,35 @@ detectors = DetectorConfig(detectors)
detectors_MX = DetectorConfig()
detectors_MX.add("JF17T16V01", adc_to_energy=True, compression=True, crystfel_lists_laser=True, double_pixels_action="mask", factor=11.00, remove_raw_files=True, save_dap_results=True, geometry=True)
detectors_MX.add("JF17T16V01", adc_to_energy=True, compression=True, crystfel_lists_laser=True, double_pixels_action="mask", factor=12.00, remove_raw_files=True, save_dap_results=True, geometry=False)
##########################################################################################################
##########################################################################################################
##########################################################################################################
### BS CHANNELS
###########################################################################
#### CAMERAS COLLECTED
camera_channels = [
# "SARES30-CAMS156-PCO1:FPICTURE", # PCO edge camera for the wavefront analysis (from Alvra)
# "SARES30-CAMS156-SMX-OAV:FPICTURE", # SwissMX OAV camera picture
# "SARES30-CAMS156-SMX-OAV.jet_projection", #SWISSMX oav jET PROJECTION
# "SARES30-CAMS156-SMX-OAV:FPICTURE", # SwissMX OAV camera picture
# "SARES30-CAMS156-SMX-OAV.jet_projection", #SWISSMX oav jET PROJECTION
# "SARES30-CAMS156-XE:FPICTURE", # X-ray eye
]
####################
# Machine gas intensity monitor
channels_gas_monitor = [
"SARFE10-PBPG050:PHOTON-ENERGY-PER-PULSE-AVG",
# "SARFE10-PBPG050:SLOW-X",
# "SARFE10-PBPG050:SLOW-Y",
"SARFE10-PBIG050-EVR0:CALCI", # good for correlations with total beam intensity
"SARFE10-PBPG050:HAMP-INTENSITY-CAL",
]
###########################################################################
#### MACHINE
# RF phases and amplitudes
channels_RF = [
@ -145,36 +153,38 @@ channels_RF = [
"S30CB14-RLLE-DSP:AMPLT-VS",
]
channels_Xeye = ["SARES30-CAMS156-XE:intensity",
"SARES30-CAMS156-XE:x_center_of_mass",
"SARES30-CAMS156-XE:x_fit_amplitude",
"SARES30-CAMS156-XE:x_fit_mean",
"SARES30-CAMS156-XE:x_fit_offset",
"SARES30-CAMS156-XE:x_fit_standard_deviation",
"SARES30-CAMS156-XE:x_fwhm",
"SARES30-CAMS156-XE:x_profile",
"SARES30-CAMS156-XE:x_rms",
"SARES30-CAMS156-XE:y_center_of_mass",
"SARES30-CAMS156-XE:y_fit_amplitude",
"SARES30-CAMS156-XE:y_fit_mean",
"SARES30-CAMS156-XE:y_fit_offset",
"SARES30-CAMS156-XE:y_fit_standard_deviation",
"SARES30-CAMS156-XE:y_fwhm",
"SARES30-CAMS156-XE:y_profile",
"SARES30-CAMS156-XE:y_rms",
# "SARES30-CAMS156-XE:FPICTURE",
]
######################
# PBPS053
###########################################################################
#### FRONT-END
####################
# Gas intensity monitor PBPG050
channels_gas_monitor = [
"SARFE10-PBPG050:PHOTON-ENERGY-PER-PULSE-AVG",
# "SARFE10-PBPG050:SLOW-X",
# "SARFE10-PBPG050:SLOW-Y",
"SARFE10-PBIG050-EVR0:CALCI", # good for correlations with total beam intensity
"SARFE10-PBPG050:HAMP-INTENSITY-CAL",
]
###################
# Beam position and intensity monitor PBPS053
channels_PBPS053 = [
"SARFE10-PBPS053:INTENSITY",
"SARFE10-PBPS053:XPOS",
"SARFE10-PBPS053:YPOS",
]
####################
# PSSS059
###################
# Spectrometer PSSS059
channels_PSSS059 = [
"SARFE10-PSSS059:FIT-COM",
"SARFE10-PSSS059:FIT-FWHM",
@ -190,7 +200,9 @@ channels_PSSS059 = [
"SARFE10-PSSS059:processing_parameters",
]
# Large bandwidth camera
###################
# Spectrometer PSSS059, large bandwidth camera
channels_PSSS059_LB = [
"SARFE10-PSSS059-LB:FIT-COM",
"SARFE10-PSSS059-LB:FIT-FWHM",
@ -207,18 +219,13 @@ channels_PSSS059_LB = [
"SARFE10-PSSS059-LB:FIT-BRT",
]
###################################
## Bernina channels
# Beam position monitor PBPS113
#channels_Bernina = [
# "SAROP21-PBPS103:INTENSITY",
# "SAROP21-PBPS103:XPOS",
# "SAROP21-PBPS103:YPOS",
# #"SAROP21-PPRM113:FPICTURE",
# "SAROP21-PPRM113:intensity",
# "SAROP21-PPRM113:x_fit_mean",
# "SAROP21-PPRM113:y_fit_mean",
#]
###########################################################################
#### BERNINA BRANCH until DCM
###################
# Bernina beam intensity and position monitor PBPS113 (alias PBPS103)
channels_PBPS113_bernina = [
"SAROP21-PBPS103:INTENSITY",
@ -231,6 +238,10 @@ channels_PBPS113_bernina = [
"SAROP21-PBPS103:YPOS",
]
###################
# Bernina screen PPRM113
channels_PPRM113_bernina = [
"SAROP21-PPRM113:intensity",
"SAROP21-PPRM113:x_center_of_mass",
@ -253,8 +264,15 @@ channels_PPRM113_bernina = [
]
###################################
# Beam position monitor PBPS113
###########################################################################
#### CRISTALLINA BRANCH
###################
## Beam position and intensity monitor PBPS113
channels_PBPS113 = [
"SAROP31-PBPS113:INTENSITY",
"SAROP31-PBPS113:INTENSITY_UJ",
@ -262,11 +280,11 @@ channels_PBPS113 = [
"SAROP31-PBPS113:Lnk9Ch0-PP_VAL_PD1",
"SAROP31-PBPS113:Lnk9Ch0-PP_VAL_PD2",
"SAROP31-PBPS113:Lnk9Ch0-PP_VAL_PD3",
"SAROP31-PBPS113:Lnk9Ch0-PP_VAL_PD4",
"SAROP31-PBPS113:XPOS",
"SAROP31-PBPS113:YPOS",
]
# purpose?
channels_PBPS113_waveforms = [
"SAROP31-PBPS113:Lnk9Ch0-WF-DATA",
"SAROP31-PBPS113:Lnk9Ch1-WF-DATA",
@ -286,8 +304,18 @@ channels_PBPS113_waveforms = [
"SAROP31-PBPS113:Lnk9Ch15-WF-DATA",
]
####################
# Profile monitor PPRM113 (from _proc process)
###################
# Diode PDIM113
channels_PDIM113 = [
"SAROP31-PBPS113:Lnk9Ch0-PP_VAL_PD4",
]
###################
# Beam profile monitor PPRM113
channels_PPRM113 = [
"SAROP31-PPRM113:intensity",
"SAROP31-PPRM113:x_center_of_mass",
@ -309,13 +337,10 @@ channels_PPRM113 = [
# "SAROP31-PPRM113:FPICTURE", # full pictures for debugging purposes at the moment, from _ib process
]
###########################
# Beam position monitor PBPS149
# "SARES30-CAMS156-PCO1:FPICTURE", # PCO edge camera for the wavefront analysis (from Alvra)
# "SARES30-CAMS156-SMX-OAV:FPIC
###########################
# Beam position monitor
###################
# Beam position and intensity monitor PBPS149
channels_PBPS149 = [
"SAROP31-PBPS149:INTENSITY",
"SAROP31-PBPS149:INTENSITY_UJ",
@ -327,6 +352,7 @@ channels_PBPS149 = [
"SAROP31-PBPS149:YPOS",
]
#######################
# Profile monitor PPRM150 (from _proc process)
channels_PPRM150 = [
@ -350,14 +376,32 @@ channels_PPRM150 = [
# "SAROP31-PPRM150:FPICTURE", # full pictures for debugging purposes at the moment, from _ib process
]
####################
# Diode under screen between the KB's PSCD153
channels_PSCD153 = [
"SAROP31-PBPS149:Lnk9Ch0-PP_VAL_PD4",
]
###########################################################################
#### GENERAL PURPOSE EXPERIMENT
#######################
# Cristallina event reciever
channels_EVR = [
"SAR-CVME-TIFALL6:EvtSet",
]
#######################
# Digitizer
channels_digitizer = [
# extra non-beam synchronous channels:
#"SARES30-LTIM01-EVR0:DUMMY_PV1_NBS",
@ -366,37 +410,126 @@ channels_digitizer = [
#"SARES30-LTIM01-EVR0:DUMMY_PV4_NBS",
# other EVR channels:
"SARES30-LSCP1-FNS:CH0:VAL_GET", # Signal-Background
"SARES30-LSCP1-FNS:CH1:VAL_GET", # Signal-Background
"SARES30-LSCP1-FNS:CH2:VAL_GET", # Signal-Background
"SARES30-LSCP1-FNS:CH3:VAL_GET", # Signal-Background
"SARES30-LSCP1-FNS:CH4:VAL_GET", # Signal-Background
"SARES30-LSCP1-FNS:CH5:VAL_GET", # Signal-Background
"SARES30-LSCP1-FNS:CH6:VAL_GET", # Signal-Background
"SARES30-LSCP1-FNS:CH7:VAL_GET", # Signal-Background
"SARES30-LSCP1-CRISTA1:CH0:1", # Waveform signal
"SARES30-LSCP1-CRISTA1:CH2:1", # Waveform trigger
"SARES30-LSCP1-CRISTA1:CH1:1", # Waveform signal
"SARES30-LSCP1-CRISTA1:CH2:1", # Waveform signal
"SARES30-LSCP1-CRISTA1:CH3:1", # Waveform signal
"SARES30-LSCP1-CRISTA1:CH4:1", # Waveform signal
"SARES30-LSCP1-CRISTA1:CH5:1", # Waveform signal
"SARES30-LSCP1-CRISTA1:CH6:1", # Waveform signal
"SARES30-LSCP1-CRISTA1:CH7:1", # Waveform signal
# "SARES30-LSCP1-CRISTA1:CH2:1", # Waveform trigger
"SARES30-LTIM01-EVR0:CALCI", # Calculated intensity
]
#######################
# Other BS channels that we sometimes use
channels_other = [
# "SARFE10-PPRM053:FPICTURE", # TODO: Test if this works here
# "SARFE10-PPRM064:FPICTURE", # TODO: Test if this works here
]
# X-ray eye
channels_Xeye = [
"SARES30-CAMS156-XE:intensity",
"SARES30-CAMS156-XE:x_center_of_mass",
"SARES30-CAMS156-XE:x_fit_amplitude",
"SARES30-CAMS156-XE:x_fit_mean",
"SARES30-CAMS156-XE:x_fit_offset",
"SARES30-CAMS156-XE:x_fit_standard_deviation",
"SARES30-CAMS156-XE:x_fwhm",
"SARES30-CAMS156-XE:x_profile",
"SARES30-CAMS156-XE:x_rms",
"SARES30-CAMS156-XE:y_center_of_mass",
"SARES30-CAMS156-XE:y_fit_amplitude",
"SARES30-CAMS156-XE:y_fit_mean",
"SARES30-CAMS156-XE:y_fit_offset",
"SARES30-CAMS156-XE:y_fit_standard_deviation",
"SARES30-CAMS156-XE:y_fwhm",
"SARES30-CAMS156-XE:y_profile",
"SARES30-CAMS156-XE:y_rms",
# "SARES30-CAMS156-XE:FPICTURE",
]
###########################################################################
#### CRISTALLINA-Q EXPERIMENT
#######################
# Diffractometer 1 bs_channels
ID_dm1 = "SARES31-GPS"
diffractometer_1_bs = [
ID_dm1 + ":ROT2THETA-BS",
ID_dm1 + ":ROTTHETA-BS",
ID_dm1 + ":TRX-BS",
ID_dm1 + ":TRY-BS",
ID_dm1 + ":TRZ-BS",
ID_dm1 + ":TD-BS",
ID_dm1 + ":TRXBASE-BS",
ID_dm1 + ":TRYBASE-BS",
ID_dm1 + ":TRYBASE-Avg-BS",
ID_dm1 + "::CALC1",
ID_dm1 + "::CALC2",
ID_dm1 + "::CALC3",
ID_dm1 + "::CALC4",
]
###########################################################################
#### CHANNEL GROUPS
bs_channels = (
camera_channels
+ channels_gas_monitor
channels_gas_monitor
# + channels_RF
+ channels_Xeye
+ channels_PBPS053
+ channels_PSSS059
+ channels_PSSS059_LB
+ channels_PBPS113
# + channels_PBPS113_waveforms
+ channels_PDIM113
# + channels_PPRM113
+ channels_PBPS149
# + channels_PBPS149_waveforms
# + channels_PPRM150 # only if screen is inserted
+ channels_PSCD153
+ channels_EVR
# + channels_digitizer
+ channels_other
+ channels_digitizer
# + channels_Xeye
# + diffractometer_1_bs
# + camera_channels
)
bs_channels_cristallina_beamline = (
channels_gas_monitor
# + channels_RF
+ channels_PBPS053
+ channels_PSSS059
+ channels_PSSS059_LB
+ channels_PBPS113
# + channels_PBPS113_waveforms
+ channels_PDIM113
# + channels_PPRM113
+ channels_PBPS149
# + channels_PBPS149_waveforms
# + channels_PPRM150 # only if screen is inserted
+ channels_PSCD153
+ channels_EVR
)
bs_channels_bernina_DCM = (
channels_gas_monitor
# + channels_RF

496
channels/pv_channels.py Normal file → Executable file
View File

@ -1,15 +1,15 @@
##########################################################################################################
##########################################################################################################
##########################################################################################################
# Epics PVS
### EPICS PVS
###########################################################################
#### MACHINE
# Compression, charge settings
#######################
# Machine
pvs_machine = [
"SARCL02-MBND100:P-READ", # Predicted bunch energy
"SARUN:FELPHOTENE.VAL", # Predicted photon energy from machine settings
"SARFE10-PBPG050:PHOTON-ENERGY-PER-PULSE-AVG.VAL", # Average pulse energy from the gas detector
]
# accelerator parameters
@ -83,8 +83,10 @@ pvs_RF = [
"S30CB14-RSYS:GET-VSUM-AMPLT-SCALE",
]
#######################
# Undulator gap
pvs_undulator = [
"SARUN03-UIND030:K_SET.VAL",
"SARUN04-UIND030:K_SET.VAL",
@ -99,17 +101,24 @@ pvs_undulator = [
"SARUN13-UIND030:K_SET.VAL",
"SARUN14-UIND030:K_SET.VAL",
"SARUN15-UIND030:K_SET.VAL",
"SFB_POINTING_AR:SP1",
"SFB_POINTING_AR:SP2",
"SFB_POINTING_AR:ONOFF1",
"SGE-HL-FPAR:X-SLOPE1",
"SGE-HL-FPAR:Y-SLOPE1",
"SGE-HL-FPAR:X-OFFSET1",
"SGE-HL-FPAR:Y-OFFSET1",
]
####################
# Machine gas intensity monitor
pvs_gas_monitor = [
"SARFE10-PBPG050:PHOTON-ENERGY-PER-PULSE-US",
"SARFE10-PBPG050:PHOTON-ENERGY-PER-PULSE-DS",
]
###########################################################################
#### FRONT-END
#####################
# Slits OAPU044
pvs_OAPU044 = [
"SARFE10-OAPU044:MOTOR_X",
"SARFE10-OAPU044:MOTOR_Y",
@ -117,37 +126,30 @@ pvs_OAPU044 = [
"SARFE10-OAPU044:MOTOR_H",
]
####################
# Gas intensity monitor PBPG050
pvs_gas_monitor = [
"SARFE10-PBPG050:PHOTON-ENERGY-PER-PULSE-US",
"SARFE10-PBPG050:PHOTON-ENERGY-PER-PULSE-DS",
"SARFE10-PBPG050:PHOTON-ENERGY-PER-PULSE-AVG",
]
###################
# Beam position monitor PBPS053
# Beam position and intensity monitor PBPS053
pvs_PBPS053 = [
"SARFE10-PBPS053:MOTOR_X1",
# "SARFE10-PBPS053:MOTOR_X2", # Not available, disabled
"SARFE10-PBPS053:MOTOR_PROBE",
]
###################
# Spectrometer PSSS059
pvs_PSSS059 = [
"SARFE10-PSSS055:MOTOR_X1.RBV",
"SARFE10-PSSS055:MOTOR_Y1.RBV",
"SARFE10-PSSS055:MOTOR_ROT_X1.RBV",
"SARFE10-PSSS055:MOTOR_PROBE.RBV",
"SARFE10-PSSS059:MOTOR_X3.RBV",
"SARFE10-PSSS059:MOTOR_Y3.RBV",
"SARFE10-PSSS059:MOTOR_ROT_X3.RBV",
"SARFE10-PSSS059:MOTOR_Y4.RBV",
"SARFE10-PSSS059:MOTOR_ROT_X4.RBV",
"SARFE10-PSSS059:MOTOR_X5.RBV",
"SARFE10-PSSS059:MOTOR_Y5.RBV",
"SARFE10-PSSS059:MOTOR_Z5.RBV",
"SARFE10-PSSS055:GRATING_SP",
"SARFE10-PSSS059:CRYSTAL_SP",
"SARFE10-PSSS059:SPC_ROI_YMIN",
"SARFE10-PSSS059:SPC_ROI_YMAX",
]
####################
# Upstream attenuator OATT053
pvs_OATT053_old = [
"SARFE10-OATT053:MOTOR_1",
"SARFE10-OATT053:MOTOR_1.RBV",
@ -169,6 +171,7 @@ pvs_OATT053_old = [
####################
# New Upstream attenuator OATT053
pvs_OATT053 = [
"SARFE10-OATT053:photonenergy", # Photon energy for Transmission
"SARFE10-OATT053:transmission", # Total Transmission of all stages
@ -183,38 +186,98 @@ pvs_OATT053 = [
"SARFE10-OATT053:MOTOR_6", # motor Motor 6
]
###################
# Beam profile monitor PPRM053
pvs_PPRM053 = [
"SARFE10-PPRM053:MOTOR_PROBE.RBV",
#"SARFE10-PPRM053:FPICTURE",
#"SARFE10-PPRM064:FPICTURE", # TODO move to correct place
]
###################
# Bernina mono
#pvs_Bernina = [
# "SAROP21-ARAMIS:ENERGY_SP",
# "SAROP21-ARAMIS:ENERGY",
# "SAROP21-PBPS103:MOTOR_X1.DRBV",
# "SAROP21-PBPS103:MOTOR_Y1.DRBV",
# "SAROP21-PBPS103:MOTOR_X1.RBV",
# "SAROP21-PBPS103:MOTOR_Y1.RBV",
# "SAROP21-PBPS103:MOTOR_PROBE.RBV",
# "SAROP21-PPRM113:MOTOR_PROBE.RBV"
#]
# Diode PDIM053
# pvs_PDIM053 = [
# ]
###################
# Spectrometer PSSS059
pvs_PSSS059 = [
"SARFE10-PSSS055:MOTOR_X1.RBV",
"SARFE10-PSSS055:MOTOR_Y1.RBV",
"SARFE10-PSSS055:MOTOR_ROT_X1.RBV",
"SARFE10-PSSS055:MOTOR_PROBE.RBV",
"SARFE10-PSSS059:MOTOR_X3.RBV",
"SARFE10-PSSS059:MOTOR_Y3.RBV",
"SARFE10-PSSS059:MOTOR_ROT_X3.RBV",
"SARFE10-PSSS059:MOTOR_Y4.RBV",
"SARFE10-PSSS059:MOTOR_ROT_X4.RBV",
"SARFE10-PSSS059:MOTOR_X5.RBV",
"SARFE10-PSSS059:MOTOR_Y5.RBV",
"SARFE10-PSSS059:MOTOR_Z5.RBV",
"SARFE10-PSSS055:GRATING_SP",
"SARFE10-PSSS059:CRYSTAL_SP",
"SARFE10-PSSS059:SPC_ROI_YMIN",
"SARFE10-PSSS059:SPC_ROI_YMAX",
"SARFE10-PSSS055:MOTOR_PROBE.RBV",
]
###################
# PPRM064
# pvs_PPRM064 = [
# ]
###################
# Alvra M1 horizontal offset mirror
# pvs_OOMH064 = [
# ]
###################
# PPRM066
# pvs_PPRM066 = [
# ]
###########################################################################
#### BERNINA BRANCH until DCM
###################
# Bernina photon energy
pvs_photon_energy_bernina = [
"SAROP21-ARAMIS:ENERGY_SP",
"SAROP21-ARAMIS:ENERGY",
]
###################
# Bernina apertures OAPU092
pvs_OAPU092_bernina = [
"SAROP21-OAPU044:MOTOR_X.RBV",
"SAROP21-OAPU044:MOTOR_Y.RBV",
"SAROP21-OAPU044:MOTOR_W.RBV",
"SAROP21-OAPU044:MOTOR_H.RBV",
"SAROP21-OAPU092:MOTOR_X.RBV",
"SAROP21-OAPU092:MOTOR_Y.RBV",
"SAROP21-OAPU092:MOTOR_W.RBV",
"SAROP21-OAPU092:MOTOR_H.RBV",
]
###################
# Bernina M1 vertical offset mirror
pvs_OOMV092_bernina = [
"SAROP21-OOMV092:W_X.RBV",
"SAROP21-OOMV092:W_Y.RBV",
@ -228,11 +291,19 @@ pvs_OOMV092_bernina = [
"SAROP21-OOMV092:TX.RBV",
]
###################
# Bernina post-M1 screen PPRM094
pvs_PPRM094_bernina = [
"SAROP21-PPRM113:MOTOR_PROBE",
#"SAROP21-PPRM113:FPICTURE",
]
###################
# Bernina M2 vertical offset mirror
pvs_OOMV096_bernina = [
"SAROP21-OOMV096:W_X.RBV",
"SAROP21-OOMV096:W_Y.RBV",
@ -246,10 +317,18 @@ pvs_OOMV096_bernina = [
"SAROP21-OOMV096:TX.RBV",
]
###################
# Bernina post-M2 screen PSCR097
pvs_PSCR097_bernina = [
"SAROP21-PSCR097:MOTOR_Y1.RBV",
]
###################
# Bernina DCM ODCM098
pvs_ODCM098_bernina = [
"SAROP21-ODCM098:RX12.RBV", # BRAGG
"SAROP21-ODCM098:TX12.RBV", # Horizontal
@ -257,19 +336,32 @@ pvs_ODCM098_bernina = [
"SAROP21-ODCM098:RZ1.RBV", # 1st xtal roll
"SAROP21-ODCM098:RZ2.RBV", # 2nd xtal roll
"SAROP21-ODCM098:RX2.RBV", # 2nd xtal pitch
"SAROP21-ODCM098:ENERGY", # DCM photon energy
]
###################
# Bernina apertures OAPU102
pvs_OAPU102_bernina = [
"SAROP21-OAPU092:MOTOR_X.RBV",
"SAROP21-OAPU092:MOTOR_Y.RBV",
"SAROP21-OAPU092:MOTOR_W.RBV",
"SAROP21-OAPU092:MOTOR_H.RBV",
"SAROP21-OAPU102:MOTOR_X.RBV",
"SAROP21-OAPU102:MOTOR_Y.RBV",
"SAROP21-OAPU102:MOTOR_W.RBV",
"SAROP21-OAPU102:MOTOR_H.RBV",
]
###################
# Bernina spontaneous radiation monitor PSRD103
pvs_PSRD103_bernina = [
"SAROP21-PSRD103:MOTOR_PROBE",
]
###################
# Bernina beam intensity and position monitor PBPS113 (alias PBPS103)
pvs_PBPS113_bernina = [
"SAROP21-PBPS103:MOTOR_X1.DRBV",
"SAROP21-PBPS103:MOTOR_Y1.DRBV",
@ -279,6 +371,10 @@ pvs_PBPS113_bernina = [
"SAROP21-PPRM113:MOTOR_PROBE.RBV"
]
###################
# Bernina pulse-picker OPPI113
pvs_OPPI113_bernina = [
"SAROP21-OPPI113:MOTOR_X1.RBV", # X1 instead of X
"SAROP21-OPPI113:MOTOR_Y1.RBV", # Y1 instead of X
@ -286,13 +382,23 @@ pvs_OPPI113_bernina = [
]
pvs_PPRM113 = [
###################
# Bernina screen PPRM113
pvs_PPRM113_bernina = [
"SAROP21-PPRM113:MOTOR_PROBE.RBV",
]
###########################################################################
#### CRISTALLINA BRANCH
####################
# First Cristallina horizontal offset mirror OOMH067
# Cristallina M1 horizontal offset mirror OOMH067
pvs_OOMH067 = [
"SAROP31-OOMH067:W_X.RBV",
"SAROP31-OOMH067:W_Y.RBV",
@ -308,14 +414,17 @@ pvs_OOMH067 = [
"SAROP31-OOMH067:RY.RBV",
]
####################
# Beam screen between the first two horizontal mirrors PSCR068
pvs_PSCR068 = [
"SAROP31-PSCR068:MOTOR_PROBE.RBV",
]
####################
# Second Cristallina horizontal offset mirror OOMH084
# Cristallina M2 horizontal offset mirror OOMH084
pvs_OOMH084 = [
"SAROP31-OOMH084:W_X.RBV",
"SAROP31-OOMH084:W_Y.RBV",
@ -331,14 +440,18 @@ pvs_OOMH084 = [
"SAROP31-OOMH084:RY.RBV",
]
###################
# Beam profile monitor PPRM085
pvs_PPRM085 = [
"SAROP31-PPRM085:MOTOR_PROBE.RBV",
]
###################
# Slits OAPU107
pvs_OAPU107 = [
"SAROP31-OAPU107:MOTOR_X.VAL",
"SAROP31-OAPU107:MOTOR_X.RBV",
@ -346,8 +459,30 @@ pvs_OAPU107 = [
"SAROP31-OAPU107:MOTOR_Y.RBV",
]
###################
## Double channel-cut monochromator ODCC110
pvs_ODCC110 = [
"SAROP31-ODCC110:MOT_RX1.RBV",
"SAROP31-ODCC110:MOT_RX2.RBV",
"SAROP31-ODCC110:MOT_ENY.RBV",
"SAROP31-ODCC110:MOT_OFS.RBV",
"SAROP31-ODCC110:MOT_TX1.RBV",
]
###################
## Infra-channel-cut-crystals screen PSCR110110
pvs_PSCR110 = [
"SAROP31-PSCR110:MOT_TY1.RBV",
]
###################
## Beam position and intensity monitor PBPS113
pvs_PBPS113 = [
"SAROP31-PBPS113:MOTOR_X1.DRBV",
"SAROP31-PBPS113:MOTOR_Y1.DRBV",
@ -356,20 +491,34 @@ pvs_PBPS113 = [
"SAROP31-PBPS113:MOTOR_PROBE.RBV",
]
###################
# Diode PDIM113
pvs_PDIM113 = [
"SAROP31-PDIM113:MOTOR_PROBE.RBV",
]
###################
# Beam profile monitor PPRM113
pvs_PPRM113 = [
"SAROP31-PPRM113:MOTOR_PROBE.RBV",
]
####################
# Alignment laser mirror OLAS147
pvs_OLAS147 = [
"SAROP31-OLAS147:MOTOR_1.RBV",
]
###################
# Slits OAPU149
pvs_OAPU149 = [
"SAROP31-OAPU149:MOTOR_X.RBV",
"SAROP31-OAPU149:MOTOR_Y.RBV",
@ -377,8 +526,10 @@ pvs_OAPU149 = [
"SAROP31-OAPU149:MOTOR_H.RBV",
]
###################
# Beam position and intensity monitor PBPS149
pvs_PBPS149 = [
"SAROP31-PBPS149:MOTOR_X1.DRBV",
"SAROP31-PBPS149:MOTOR_Y1.DRBV",
@ -387,14 +538,18 @@ pvs_PBPS149 = [
"SAROP31-PBPS149:MOTOR_PROBE.RBV",
]
###################
# Beam profile monitor PPRM150
pvs_PPRM150 = [
"SAROP31-PPRM150:MOTOR_PROBE.RBV",
]
####################
# Attenuators OATA150
# Attenuators OATA150, old
pvs_OATA150_old = [
"SAROP31-OATA150:MOTOR_1.RBV",
"SAROP31-OATA150:MOTOR_2.RBV",
@ -409,8 +564,10 @@ pvs_OATA150_old = [
"SAROP31-OATA150:MOT2TRANS.VALD"
]
####################
# New Attenuators OATA150
# Attenuators OATA150
pvs_OATA150 = [
"SAROP31-OATA150:photonenergy", # ai Photon energy for Transmission SAROP31-CPCL-OSAT150 swissfel
"SAROP31-OATA150:transmission", # ai Total Transmission of all stages SAROP31-CPCL-OSAT150 swissfel
@ -429,9 +586,9 @@ pvs_OATA150 = [
]
####################
# Pulse picker OPPI151
pvs_OPPI151 = [
"SAROP31-OPPI151:MOTOR_X1.RBV", # X1 instead of X
"SAROP31-OPPI151:MOTOR_Y1.RBV", # Y1 instead of X
@ -441,6 +598,7 @@ pvs_OPPI151 = [
####################
## Horizontal offset mirror ODMV152
pvs_ODMV152 = [
"SAROP31-ODMV152:W_X.RBV",
"SAROP31-ODMV152:W_Y.RBV",
@ -454,8 +612,10 @@ pvs_ODMV152 = [
"SAROP31-ODMV152:TX.RBV",
]
###########################
# Vertical KB mirror OKBV153
pvs_OKBV153 = [
"SAROP31-OKBV153:W_X.RBV",
"SAROP31-OKBV153:W_Y.RBV",
@ -471,14 +631,18 @@ pvs_OKBV153 = [
"SAROP31-OKBV153:TX2.RBV",
]
####################
# Screen between the KB's PSCD153
pvs_PSCD153 = [
"SAROP31-PSCD153:MOTOR_PROBE.RBV"
]
###########################
# Horizontal KB mirror OKBH154
pvs_OKBH154 = [
"SAROP31-OKBH154:W_X.RBV",
"SAROP31-OKBH154:W_Y.RBV",
@ -493,16 +657,38 @@ pvs_OKBH154 = [
"SAROP31-OKBH154:TX2.RBV",
]
###########################
# Izero-slit unit
pvs_i0_chamber = [
"SARES30-MCS20610:MCS1.RBV",
"SARES30-MCS20610:MCS2.RBV",
"SARES30-MCS20610:MCS3.RBV",
"SARES30-MCS20610:MCS4.RBV",
"SARES30-MCS20610:MCS5.RBV"
]
###########################################################################
#### GENERAL PURPOSE EXPERIMENT
####################
# Standa motors (mainly used with the X-ray eye)
pvs_standa = [
"SARES30-MOBI1:MOT_1.RBV",
"SARES30-MOBI1:MOT_2.RBV",
"SARES30-MOBI1:MOT_3.RBV",
]
####################
# Newport 300 mm stage
pvs_newport_300 = [
"SARES30-MOBI1:MOT_5.RBV",
]
@ -510,6 +696,7 @@ pvs_newport_300 = [
###############################
# Smaract stages mini XYZ from SwissMX
pvs_smaract_xyz = [
"SARES30-MCS2750:MOT_1.RBV",
"SARES30-MCS2750:MOT_1.VAL",
@ -519,15 +706,19 @@ pvs_smaract_xyz = [
"SARES30-MCS2750:MOT_3.VAL",
]
####################
# Attocube motors
pvs_attocube = [
"SARES30-ATTOCUBE:A0-POS",
"SARES30-ATTOCUBE:A1-POS",
]
###############################
# Smaract stages from Juraj
pvs_smaract_juraj = [
"SARES30-XSMA156:X:MOTRBV",
"SARES30-XSMA156:Y:MOTRBV",
@ -537,30 +728,9 @@ pvs_smaract_juraj = [
"SARES30-XSMA156:Rz:MOTRBV",
]
pvs_diffractometer_1 = [
"SARES30-CPCL-ECMC02:ROT2THETA-PosAct",
"SARES30-CPCL-ECMC02:ROTTHETA-PosAct",
"SARES30-CPCL-ECMC02:TRXBASE-PosAct",
"SARES30-CPCL-ECMC02:TRY-PosAct",
"SARES30-CPCL-ECMC02:TRX-PosAct",
"SARES30-CPCL-ECMC02:TRZ-PosAct",
"SARES30-CPCL-ECMC02:TD-PosAct",
"SARES30-CPCL-ECMC02:m1s012-Drv01-TrqAct", # TRYBASE Mot 1 torque
"SARES30-CPCL-ECMC02:m1s013-Drv01-TrqAct", # TRYBASE Mot 2 torque
"SARES30-CPCL-ECMC02:m1s014-Drv01-TrqAct", # TRYBASE Mot 3 torque
"SARES30-CPCL-ECMC02:m1s015-Drv01-TrqAct", # TRYBASE Mot 4 torque
"SARES30-CPCL-ECMC02:m1s027-Drv01-TrqAct", # TD Mot torque
"SARES30-CPCL-ECMC02:m1s011-Drv01-TrqAct", # TRXBASE Mot torque
"SARES30-CPCL-ECMC02:m1s030-Drv01-TrqAct", # TRX Mot torque
"SARES30-CPCL-ECMC02:m1s031-Drv01-TrqAct", # TRY Mot torque
"SARES30-CPCL-ECMC02:m1s029-Drv01-TrqAct", # TRZ Mot torque
"SARES30-CPCL-ECMC02:m1s010-Drv01-TrqAct", # ROT2THETA Mot torque
"SARES30-CPCL-ECMC02:m1s028-Drv01-TrqAct", # ROTTHETA Mot torque
]
pvs_huber_z= [
"SARES30-MOBI2:MOT_Z.RBV",
]
###############################
# General purpose JJ-slits
pvs_JJ_slits = [
"SARES30-MOBI2:MOT_X.RBV",
@ -569,27 +739,123 @@ pvs_JJ_slits = [
"SARES30-MOBI2:MOT_H.RBV",
]
###########################################################################
#### CRISTALLINA-Q EXPERIMENT
###############################
# Diffractometer 1
ID_dm1 = "SARES31-GPS"
pvs_diffractometer_1 = [
ID_dm1 + ":ROT2THETA-PosAct",
ID_dm1 + ":ROTTHETA-PosAct",
ID_dm1 + ":TRXBASE-PosAct",
ID_dm1 + ":TRY-PosAct",
ID_dm1 + ":TRX-PosAct",
ID_dm1 + ":TRZ-PosAct",
ID_dm1 + ":TD-PosAct",
ID_dm1 + ":m1s012-Drv01-TrqAct", # TRYBASE Mot 1 torque
ID_dm1 + ":m1s013-Drv01-TrqAct", # TRYBASE Mot 2 torque
ID_dm1 + ":m1s014-Drv01-TrqAct", # TRYBASE Mot 3 torque
ID_dm1 + ":m1s015-Drv01-TrqAct", # TRYBASE Mot 4 torque
ID_dm1 + ":m1s027-Drv01-TrqAct", # TD Mot torque
ID_dm1 + ":m1s011-Drv01-TrqAct", # TRXBASE Mot torque
ID_dm1 + ":m1s030-Drv01-TrqAct", # TRX Mot torque
ID_dm1 + ":m1s031-Drv01-TrqAct", # TRY Mot torque
ID_dm1 + ":m1s029-Drv01-TrqAct", # TRZ Mot torque
ID_dm1 + ":m1s010-Drv01-TrqAct", # ROT2THETA Mot torque
ID_dm1 + ":m1s028-Drv01-TrqAct", # ROTTHETA Mot torque
]
###############################
# Diffractometer 2
ID_dm2 = "SARES32-GPS"
pvs_diffractometer_2 = [
ID_dm2 + ":ROTTHETA-PosAct",
ID_dm2 + ":TRXBASE-PosAct",
ID_dm2 + ":TRY-PosAct",
ID_dm2 + ":TRX-PosAct",
ID_dm2 + ":ROT2THETA-PosAct",
ID_dm2 + ":TRZ-PosAct",
ID_dm2 + ":TD-PosAct",
ID_dm2 + ":ROTX-PosAct",
ID_dm2 + ":ROTZ-PosAct",
ID_dm2 + ":m0s012-Drv01-TrqAct", # TRYBASE Mot 1 torque
ID_dm2 + ":m0s012-Drv01-TrqAct", # TRYBASE Mot 2 torque
ID_dm2 + ":m0s014-Drv01-TrqAct", # TRYBASE Mot 3 torque
ID_dm2 + ":m0s015-Drv01-TrqAct", # TRYBASE Mot 4 torque
ID_dm2 + ":m0s027-Drv01-TrqAct", # TD Mot torque
ID_dm2 + ":m0s011-Drv01-TrqAct", # TRXBASE Mot torque
ID_dm2 + ":m0s030-Drv01-TrqAct", # TRX Mot torque
ID_dm2 + ":m0s032-Drv01-TrqAct", # ROTX Mot torque
ID_dm2 + ":m0s033-Drv01-TrqAct", # ROTZ Mot torque
ID_dm2 + ":m0s010-Drv01-TrqAct", # ROT2THETA Mot torque
ID_dm2 + ":m0s028-Drv01-TrqAct", # ROTTHETA Mot torque
]
###############################
# Huber vertical stage
pvs_huber_z= [
"SARES30-MOBI2:MOT_Z.RBV",
]
###########################################################################
#### CRISTALLINA-MX EXPERIMENT
###############################
# Fast XY-stage
pvs_swissmx = [
"SAR-EXPMX:MOT_FX.RBV",
"SAR-EXPMX:MOT_FY.RBV",
]
###########################################################################
#### CHANNEL GROUPS
###############################
# All channels (slic updates the list based on these)
pv_channels = (
pvs_machine
# + pvs_RF
# + pvs_undulator
+ pvs_gas_monitor
+ pvs_undulator
+ pvs_OAPU044
+ pvs_gas_monitor
+ pvs_PBPS053
+ pvs_OATT053
+ pvs_PPRM053
# + pvs_PDIM053
+ pvs_PSSS059
# + pvs_PPRM064
# + pvs_OOMH064
# + pvs_PPRM066
+ pvs_OOMH067
+ pvs_PSCR068
+ pvs_OOMH084
+ pvs_PPRM085
+ pvs_OAPU107
+ pvs_ODCC110
+ pvs_PSCR110
+ pvs_PBPS113
+ pvs_PDIM113
+ pvs_PPRM113
+ pvs_OLAS147
+ pvs_OAPU149
@ -601,44 +867,81 @@ pv_channels = (
+ pvs_OKBV153
+ pvs_PSCD153
+ pvs_OKBH154
+ pvs_i0_chamber
+ pvs_standa
# + pvs_newport_300
# + pvs_newport_300
# + pvs_smaract_xyz
+ pvs_diffractometer_1
+ pvs_diffractometer_2
+ pvs_huber_z
+ pvs_JJ_slits
# + pvs_swissmx
# + pvs_Bernina
# + pvs_attocube
# + pvs_smaract_juraj
# + pvs_photon_energy_bernina
# + pvs_OAPU092_bernina
# + pvs_OOMV092_bernina
# + pvs_PPRM094_bernina
# + pvs_OOMV096_bernina
# + pvs_PSCR097_bernina
# + pvs_ODCM098_bernina
# + pvs_OAPU102_bernina
# + pvs_PSRD103_bernina
# + pvs_PBPS113_bernina
# + pvs_OPPI113_bernina
# + pvs_PPRM113_bernina
)
# + pvs_attocube
# + pvs_smaract_juraj
pv_channels_front_end = (
pv_channels_cristallina_beamline = (
pvs_machine
# + pvs_RF
# + pvs_undulator
+ pvs_gas_monitor
+ pvs_undulator
+ pvs_OAPU044
+ pvs_gas_monitor
+ pvs_PBPS053
+ pvs_OATT053
+ pvs_PPRM053
# + pvs_PDIM053
+ pvs_PSSS059
# + pvs_PPRM064
# + pvs_OOMH064
# + pvs_PPRM066
+ pvs_OOMH067
+ pvs_PSCR068
+ pvs_OOMH084
+ pvs_PPRM085
+ pvs_OAPU107
+ pvs_ODCC110
+ pvs_PSCR110
+ pvs_PBPS113
+ pvs_PDIM113
+ pvs_PPRM113
+ pvs_OLAS147
+ pvs_OAPU149
+ pvs_PBPS149
+ pvs_PPRM150
+ pvs_OATA150
+ pvs_OPPI151
+ pvs_ODMV152
+ pvs_OKBV153
+ pvs_PSCD153
+ pvs_OKBH154
+ pvs_i0_chamber
)
pv_channels_bernina = (
pv_channels_bernina_DCM = (
pvs_machine
# + pvs_RF
# + pvs_undulator
+ pvs_gas_monitor
+ pvs_undulator
+ pvs_OAPU044
+ pvs_gas_monitor
+ pvs_PBPS053
+ pvs_OATT053
+ pvs_PPRM053
# + pvs_PDIM053
+ pvs_PSSS059
# + pvs_PPRM064
# + pvs_OOMH064
# + pvs_PPRM066
+ pvs_OOMH067
+ pvs_PSCR068
+ pvs_photon_energy_bernina
@ -651,5 +954,6 @@ pv_channels_bernina = (
+ pvs_OAPU102_bernina
+ pvs_PSRD103_bernina
+ pvs_PBPS113_bernina
+ pvs_PPRM113
+ pvs_OPPI113_bernina
+ pvs_PPRM113_bernina
)