# 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-EMH","FC","CurrR","Current FC",13,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-EMH","FC","CurrR","CurrR",13,0,2,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,TYPE,SIGNAL1,SIGNAL2,SIGNAL3} {"LNS-ISRC-010","PBI-EM","V","FC:CurrR","HV1:VoltR","HV2:VoltR"} {"LNS-ISRC-010","PBI-EM","H","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)"} {"$(DEVICE)","LNS-ISRC-010:PBI-EMH-FC:CurrR:AVG","DET1","CURRENT","$(BUFFERSIZE)","1000","$(SCAN_EF)","$(SCAN_SLIT)","$(MTRREC)"} {"$(DEVICE)","LNS-ISRC-010:PBI-EMH: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-EMV","BPS-CurS", 2 ,0, 0,0.000244148, 0, 8,1,"mA"} {"LNS-ISRC-010:PBI-EMV","BPS-VolS", 2 ,1, 0 , 0.09155553, 0, 1500,1,"V"} {"LNS-ISRC-010:PBI-EMH","BPS-CurS", 2 ,2, 0, 0.000244148, 0, 8,1,"mA"} {"LNS-ISRC-010:PBI-EMH","BPS-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-EMV","BPS-CurR",1 ,0, "mA", 0.000244148,0} {"LNS-ISRC-010:PBI-EMV","BPS-VolR",1 ,1, "V", 0.09155553,0} {"LNS-ISRC-010:PBI-EMH","BPS-CurR",1 ,2, "mA", 0.000244148,0} {"LNS-ISRC-010:PBI-EMH","BPS-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,""} }