-
Victor Nadot authoredVictor Nadot authored
Code owners
Assign users and groups as approvers for specific file changes. Learn more.
EMU_VME.substitutions 11.00 KiB
# File wireScanner.substitutions
# Author: Alexander Soderqvist <alexander.soderqvist@esss.se>
#
# Prototype allison scanner. Compilations of components from scanning module.
#
##########################################################################
################################ OUTER SCAN: MOTOR #######################
##########################################################################
file "scanBase.db"
{
pattern {
DEVICE,
SCAN,
MAX_POINTS,
# INTERFACE POSITIONERS: 1 and 2. 3 is also available but not used here
POS1_SP_PV,
POS2_SP_PV,
# INTERFACE MAIN POSITIONER, This positioner 4 on sscan to allow the other positioner to be used for configuration
POS_SP_PV,
POS_SCALAR_RBV_PV,
# INTERFACE: TIMING RECEIVER
TR_TL1,
TR_TLTSEL,
# INTERFACE: DETECTOR TRIGGERS, T1PV is take by timing receiver control
T1PV,
# INTERFACE: DETECTORS,
D01PV,
# INTERFACE: BEFORE, AFTER and ABORT scan links
# Before, after and abort scan links. Both for Step by step and on the fly.
# General before and after scan links with data output, for both fly and step by step.
BS_LNK,
BS_DO,
AS_LNK,
AS_DO,
AB_LNK,
AB_DO,
BF_STEP_LNK1,
BF_STEP_LNK2,
BF_STEP_DO1,
BF_STEP_DO2,
BF_STEP_FLNK,
AF_STEP_LNK1,
AF_STEP_LNK2,
AF_STEP_DO1,
AF_STEP_DO2,
AF_STEP_FLNK,
AB_STEP_LNK1,
AB_STEP_LNK2,
AB_STEP_DO1,
AB_STEP_DO2,
AB_STEP_FLNK
}
{
"$(DEVICE)",
"$(SCAN_SLIT)",
"$(MAX_POINTS_SLIT)",
# INTERFACE POSITIONER: Motor record for a wirescanner
"$(MTRREC).ACCL",
"$(MTRREC).VELO",
# INTERFACE MAIN POSITIONER:
"$(MTRREC).VAL",
"$(MTRREC).RBV",
# INTERFACE: Timing receiver Action in ESS timing
"",
"$(DEVICE):$(SCAN_EF)-TS_START.TIME",
# INTERFACE: Detector Trigger
"$(DEVICE):$(SCAN_EF).EXSC",
# INTERFACE: Detectors. No detectors on Outer scan
"",
# INTERFACE: BEFORE, AFTER and ABORT scan links
# General links before scan
"$(MTRREC).SPMG",
"3",
# General links after scan
"$(MTRREC).SPMG",
"1",
# General links abort scan
"$(MTRREC).STOP PP",
"1",
# Before scan step by step links
"$(DEVICE):PROC-SLIT-BF.PROC PP",
"",
"1",
"",
"",
# After scan step by step links
"$(DEVICE):PROC-SLIT-AF.PROC PP",
"",
"1",
"",
"",
# Abort scan step by step links
"$(DEVICE):PROC-SLIT-AB.PROC PP",
"",
"1",
"",
"$(DEVICE):$(SCAN_EF)-ABORT"
}
}
##########################################################################
################################ INNER SCAN: DAC #######################
##########################################################################
# INNER SCAN: Electrical field
file "scanBase.db"
{
pattern {
DEVICE,
SCAN,
MAX_POINTS,
# Power supply PS1
POS_SP_PV,
POS_SCALAR_RBV_PV,
# Power supply PS2
POS1_SP_PV,
POS1_RBV_PV,
POS1_MODE,
# INTERFACE: TIMING RECEIVER
TR_TL1,
TR_TLTSEL,
# INTERFACE: DETECTOR TRIGGERS, T1PV is take by timing receiver control
T1PV,
# INTERFACE: DETECTORS,
D01PV,
D02PV,
D03PV,
# INTERFACE: BEFORE, AFTER and ABORT scan links
# Before, after and abort scan links. Both for Step by step and on the fly.
# General before and after scan links with data output, for both fly and step by step.
BS_LNK,
BS_LNK_DO,
AS_LNK,
AS_LNK_DO,
AB_LNK,
AB_DO,
BF_STEP_LNK1,
BF_STEP_LNK2,
BF_STEP_LNK1_DO,
BF_STEP_LNK2_DO,
BF_STEP_FLNK,
AF_STEP_LNK1,
AF_STEP_LNK2,
AF_STEP_LNK1_DO,
AF_STEP_LNK2_DO,
AF_STEP_FLNK,
AB_STEP_LNK1,
AB_STEP_LNK2,
AB_STEP_LNK1_DO,
AB_STEP_LNK2_DO,
AB_STEP_FLNK
}
{
"$(DEVICE)",
"$(SCAN_EF)",
"$(MAX_POINTS_EF)",
# PS1 POSITIONER INTERFACE
"$(PSU_SP)",
"$(PSU_RBV)",
# PS2 POSITIONER INTERFACE
"$(PSU2_SP)",
"$(PSU2_RBV)",
"LINEAR",
# INTERFACE: Timing receiver Action in ESS timing
"$(TR_TL) PP",
"$(TR_TLTSEL)",
# INTERFACE: Detector Trigger
"$(DEVICE):DAQTRG-TRG",
# INTERFACE: Detectors
"$(DEVICE):BUFF-DET1",
"$(DEVICE):BUFF-DET23",
"",
# INTERFACE: BEFORE, AFTER and ABORT scan links
# General links after scan
"",
"",
# General links before scan
"",
"",
# General links abort scan
"",
"",
# Before scan step by step links
"$(DEVICE):PROC-PS-BF.PROC PP",
"",
"1",
"",
"",
# After scan step by step links
"$(DEVICE):PROC-PS-AF.PROC PP",
"",
"1",
"",
"$(DEVICE):$(SCAN_SLIT)-SAVE_TS",
# Abort scan step by step links
"$(DEVICE):DAQTRG-RST.PROC PP",
"",
"1",
"",
""
}
}
##########################################################################
################################ OUTER SCAN: MOTOR #######################
##########################################################################
#
# Detector trigger control
#
file "scanDAQDetTrig.template"
{
pattern {
DEVICE,
DETTRG,
SCAN,
POS_NUM,
RSTEVENT,
NDET,
ACQ_STOP_LNK,
ACQ_STOP_STR,
ACQ_START_LNK,
ACQ_START_STR,
DAQ_DATA_RDY_FLNK,
DAQ_STATE_PV,
DAQ_STATE_OKVALUE
}
{
"$(DEVICE)",
"DAQTRG"
"$(SCAN_EF)",
"4",
"55",
"3",
"$(DAQNDSPREFIX):PBI-EM:CARD0-STAT",
"ON",
"$(DAQNDSPREFIX):PBI-EM:CARD0-STAT",
"RUNNING",
"$(DEVICE):$(SCAN_EF)-SAVE_TS",
"$(DAQNDSPREFIX):PBI-EM:CARD0-STAT-RB",
"4"
}
}
##########################################################################
################################ DETECTOR 1: Faraday CUP #################
##########################################################################
file "scanDAQDet.template"
{
pattern {
DEVICE,
DET,
DETTRG,
RSTEVENT,
NELM,
TRGRRBVREC,
WFSRCREC,
WFNORD
}
{
"$(DEVICE)",
"DET1",
"DAQTRG",
"55"
"$(DAQBUFSIZE)",
"$(DAQNDSPREFIX):PBI-EM:CARD0:TriggerRepeat-RB",
"$(DAQNDSPREFIX):$(DET1WF)",
"$(DAQNDSPREFIX):$(DET1WF).NORD"
}
}
##########################################################################
################################ DETECTOR 2: PS1 #########################
##########################################################################
file "scanDAQDet.template"
{
pattern {
DEVICE,
DET,
DETTRG,
RSTEVENT,
NELM,
TRGRRBVREC,
WFSRCREC,
WFNORD
}
{
"$(DEVICE)",
"DET2",
"DAQTRG",
"55"
"$(DAQBUFSIZE)",
"$(DAQNDSPREFIX):PBI-EM:CARD0:TriggerRepeat-RB",
"$(DAQNDSPREFIX):$(DET2WF)",
"$(DAQNDSPREFIX):$(DET2WF).NORD"
}
}
##########################################################################
################################ DETECTOR 3: PS2 #########################
##########################################################################
file "scanDAQDet.template"
{
pattern {
DEVICE,
DET,
DETTRG,
RSTEVENT,
NELM,
TRGRRBVREC,
WFSRCREC,
WFNORD
}
{
"$(DEVICE)",
"DET3",
"DAQTRG",
"55"
"$(DAQBUFSIZE)",
"$(DAQNDSPREFIX):PBI-EM:CARD0:TriggerRepeat-RB",
"$(DAQNDSPREFIX):$(DET3WF)",
"$(DAQNDSPREFIX):$(DET3WF).NORD"
}
}
##########################################################################
################################ DACQ ###################################
##########################################################################
file DataAcquisitionChannel.template
{
pattern
{ SECTION, SUBSECTION, DISC, DEVICE, SIGNAL,DESCRIPTION, EVENT_IN,NELM,SIZE,SAMPLING_RATE_PV}
{"LNS","ISRC-010","PBI-EMV","FC","CurrR","Current FC",10,16000,520,LNS-ISRC-010:PBI-EM:CARD0:SAMPLINGRATE-RB}
{"LNS","ISRC-010","PBI-EM","HV1","VoltR","Voltage HV1 FC",11,16000,520,LNS-ISRC-010:PBI-EM:CARD0:SAMPLINGRATE-RB}
{"LNS","ISRC-010","PBI-EM","HV2","VoltR","Voltage HV2 FC",12,16000,520,LNS-ISRC-010:PBI-EM:CARD0:SAMPLINGRATE-RB}
}
file FastAcquisition.template
{
pattern
{ SECTION,SUBSECTION, DISC, DEVICE, SIGNAL,NICKNAME,EVENT_OUT,CARD,CHANNEL,NELM }
{"LNS","ISRC-010","PBI-EMV","FC","CurrR","CurrR",10,0,3,16000}
{"LNS","ISRC-010","PBI-EM","HV1","VoltR","HV1VoltR",11,0,0,16000}
{"LNS","ISRC-010","PBI-EM","HV2","VoltR","HV2VoltR",12,0,1,16000}
}
file FastAcquisitionInformation.template
{
pattern
{ CARD,FMC,NELM,SECTION}
{0,2,16000,"LNS-ISRC-010:PBI-EM"}
}
file EMU_DACQ_SYNC.template
{
pattern
{ PREFIX,DEVICE,SIGNAL1,SIGNAL2,SIGNAL3}
{"LNS-ISRC-010","PBI-EM","FC:CurrR","HV1:VoltR","HV2:VoltR"}
}
##########################################################################
################################ PROCESS ################################
##########################################################################
file EMU_PROCESS.template
{
pattern {DEVICE, SCAN_EF}
{"$(DEVICE)","$(SCAN_EF)"}
}
##########################################################################
################################ CALCUL ################################
##########################################################################
file EMU_CALCUL.template
{
pattern {DEVICE,DAQPREFIX,DET2WF,DET3WF,DET2,DET3,NELM,SCAN_EF}
{"$(DEVICE)","$(DAQNDSPREFIX)","PBI-EM-HV1:VoltR_Y","PBI-EM-HV2:VoltR_Y","DET2","DET3","$(BUFFERSIZE)","PS"}
}
##########################################################################
################################ BUFFER ##################################
##########################################################################
file EMU_BUFF_CHAN.template
{
pattern {DEVICE,SIGNAL_IN,DET,SIGNAL2,NELM,NELM_COMP,SCAN_EF,SCAN_SLIT,MTRREC}
{"$(DEVICE)","LNS-ISRC-010:PBI-EMV-FC:CurrR:AVG","DET1","CURRENT","$(BUFFERSIZE)","1000","$(SCAN_EF)","$(SCAN_SLIT)","$(MTRREC)"}
{"$(DEVICE)","LNS-ISRC-010:PBI-EMV:CALC-ANGLE","DET23","ANGLE","$(BUFFERSIZE)","1000","$(SCAN_EF)","$(SCAN_SLIT)","$(MTRREC)"}
}
file EMU_BUFF_POS.template
{
pattern {DEVICE,NELM_COMP,DET,SCAN_SLIT,MTRREC}
{"$(DEVICE)","1000","DET1","$(SCAN_SLIT)","$(MTRREC)"}
}
##########################################################################
################################ ETHERCAT ################################
##########################################################################
file ecat2el41xx.template
{
pattern {PREFIX,CH_ID, SLAVE_IDX,PDO_IDX, EOFF, ESLO, DRVL, DRVH, PREC,EGU}
{"LNS-ISRC-010:PBI-EM","HVhor-SP", 3, 0, 0, 0.0003051850947599719, -10, 10,5,"kV"}
{"LNS-ISRC-010:PBI-EM","HVver-SP", 3, 2, 0, 0.0003051850947599719, -10, 10,5,"kV"}
{"LNS-ISRC-010:PBI-EM","BPS1-CurS", 2 ,0, 0,0.000244148, 0, 8,1,"mA"}
{"LNS-ISRC-010:PBI-EM","BPS1-VolS", 2 ,1, 0 , 0.09155553, 0, 1500,1,"V"}
{"LNS-ISRC-010:PBI-EM","BPS2-CurS", 2 ,2, 0, 0.000244148, 0, 8,1,"mA"}
{"LNS-ISRC-010:PBI-EM","BPS2-VolS", 2 ,3, 0 , 0.09155553, 0, 1500,1,"V"}
}
file ecat2el316x.template
{
pattern {PREFIX,CH_ID, SLAVE_IDX, PDO_IDX,EGU,ESLO,EOFF}
{"LNS-ISRC-010:PBI-EM","BPS1-CurR",1 ,0, "mA", 0.000244148,0}
{"LNS-ISRC-010:PBI-EM","BPS1-VolR",1 ,1, "V", 0.09155553,0}
{"LNS-ISRC-010:PBI-EM","BPS2-CurR",1 ,2, "mA", 0.000244148,0}
{"LNS-ISRC-010:PBI-EM","BPS2-VolR",1 ,3, "V", 0.09155553,0}
}
file ecat2slave.template
{
pattern {PREFIX,DTYP,MOD_ID,SLAVE_IDX,DEVICENAME}
{"LNS-ISRC-010:PBI-EM","ES4134","ES4134",3,""}
{"LNS-ISRC-010:PBI-EM","EL4104","EL4104",2,""}
{"LNS-ISRC-010:PBI-EM","ES3164","ES3164",1,""}
}