SPEAR Controls

IOC and Host Programs

Quick Links

General

IOC Applications

Name Brief Description Machine or Process Source
Orbit Interlock Interface IP module interface for orbit interlock reset and test and status of bypass, BPLD, beam current, RF enable, beamline open, and beamline stoppers. Multi-Use IOC $EPICS/app/MultiUse/
Control Room Interface IP module interface for bucket and state display, kicker trigger enable, audio alarms, and bucket buttons, control and strobe. Multi-Use IOC $EPICS/app/MultiUse/
Beam Loss Monitor BLM scaler counters. Multi-Use IOC $EPICS/app/MultiUse/
BPM RMS Calculation BPM orbit U and V RMS calculation Multi-Use IOC $EPICS/app/MultiUse/multiUseApp/src/BPMRMSCalc.st
Feedback Monitor Checks that either fast or slow feedback is running and BPM RMS is OK. Triggers a BPM orbit history dump and control room audible alarm when problems. Multi-Use IOC $EPICS/app/MultiUse/multiUseApp/src/fdbkMon.st
Beam Orbit Post-Mortem Dump Triggers a BPM orbit post-mortem dump on orbit interlock fault. Multi-Use IOC $EPICS/app/MultiUse/multiUseApp/src/beamDump.st
BuckoMat Automatic injection of booster beam into SPEAR buckets Multi-Use IOC $EPICS/app/MultiUse/multiUseApp/src/buckoMat.st
VME Crate Canbus Interface CANbus interface for monitor/control of all Wiener VME crates. Multi-Use IOC $EPICS/app/MultiUse/
VME Crate Ethernet Interface Ethernet interface for monitor/control of ethernet VME crates. Also, IOC monitoring. Shared with LCLS. soft-iocmgr $EPICS/app/IOCManager/
Alarm Handler (ALH) Support Records for alarms on operator displays and for the alarm handler. Shared with LCLS. soft-iocalh-* $EPICS/app/ALARMS/
Bucket Select SPEAR bucket pattern selection for use by BuckoMat. Sets the count of the number of shots each of 372 buckets gets during injection. Includes the active pattern and 9 pattern savesets. soft-iocbucket $EPICS/app/EtherIoc/etherIocApp/Db/bucket*
SPEAR Scraper Interface to motors used for the SPEAR scraper. Needs to be upgraded from Motor to InsertionDevices application.
Scraper IOC
$EPICS/app/Motor/
ID Interface Interface to motors used for beamline insertion devices. BL12-2 IOC,
BL4,11,13 IOC,
BL7,9,10 IOC,
BL5,6,15 IOC
$EPICS/app/InsertionDevices/
ID Remote Control ID remote control. soft-iocidctrl $EPICS/app/InsertionDevices/
Beamline Calculations Beamline calculations including period, gap, gap state, magnetic field, K, and power. soft-iocmcortrim $EPICS/app/Mcor/trimMcorApp
ID Trim Tracking Trim tracking MCOR power supply control for insertion devices. soft-iocmcortrim $EPICS/app/Mcor/trimMcorApp
PPS PLC Interface Interface to all PPS PLCs. ALARA injector lost charge (LTB stoppers) interlock. soft-iocpps $EPICS/app/EtherIoc/etherIocApp/Db/many files
MPS, Screen Control, Kicker, MS1-BDBLK, Beamline PLC Interface Interface to all MPS and other PLCs. ALARA spear lost charge (PR2 stopper) interlock. soft-iocmps $EPICS/app/EtherIoc/etherIocApp/Db/many files
ALARA Lost Charge Integration ALARA spear and injector lost charge integration for running hour (updating every second) and running day (updating every hour). soft-iocalara $EPICS/app/Alara/alaraApp
SRS DG535 Timing Monitor and control the SRS DG535 delay generators. soft-iocgpib $EPICS/app/EtherIoc/etherIocApp/Db/DG*, kicker_timing*
RF Frequency Read RF frequency in SPEAR, booster, and linac via Agilent Hp53181A frequency counters. Set SPEAR RF frequency and BPM test tone via PTS 500 frequency synthesizers. soft-iocgpib $EPICS/app/EtherIoc/etherIocApp/Db/gpib*
Linac RF Frequency Synchronization Synchronize linac frequency at the time of booster injection. Linac PAC IOC $EPICS/app/PAC/
Beam Current and Charge from DVMs Monitors Keithley 2002 multimeters to acquire DCCT and NPCT beam current readouts. Performs beam current calculations including average, lifetime, vacuum quality, and loss rate for 4 time intervals: Fast (1 sec), 10 sec, 60 sec, slow (180 sec). Calculates ALARA 1 second spear beam charge. Updates beam current for CURMON every second. See the DCCT overview and DCCT data acquisition presentations. soft-iocgpib $EPICS/app/EtherIoc/
Beam Current and Charge from SCI Acquires DCCT and NPCT beam currents from the stored current interlock (SCI) chassis at 10Hz. Calculates ALARA 1 second spear beam charge. Scraper IOC $EPICS/app/Motor/
Matlab Interface PVs used by production matlab programs so that matlab calculations can be added to history plot (readbacks) and to allow operator input for matlab programs without GUIs in the control room (setpoints). Matlab programs must use the labCA interface to access PVs so that automatic reconnections are made after IOC restart. soft-iocmatlab $EPICS/app/EtherIoc/etherIocApp/Db/config*, pinhole*, injectionControl*
Camera Interface Interface to screen cameras. soft-ioccam-* $EPICS/app/Camera/
HLS Interface Gets Hydrostatic Leveling System (HLS) water levels around the beamlines. soft-iochls $EPICS/app/EtherIoc/etherIocApp/Db/hls*
Beamline Mirror LCW Temperature Interface Get temperature readout from all beamline mirror LCW supply temperature controllers. soft-ioctemp $EPICS/app/EtherIoc/etherIocApp/Db/tempControl*
LCW Mettler-Toledo M800 Interface Get LCW dissolved O2, pH, and conductivity from M800 using RS485. soft-ioclcw $EPICS/app/EtherIoc/etherIocApp/Db/lcwProperties*
Beamline Mirror Pitch Feedback Interface Provide PVs for the LabView beamline mirror pitch feedbacks. soft-ioctemp $EPICS/app/EtherIoc/etherIocApp/Db/fdbk*
Alarm Monitor Interface Provides PVs for the ALARMSEQ process, alarm summaries, and annunciators. soft-iocalh-al00 $EPICS/app/ALARMS/alhPVApp/Db/spear/monitor*, annunicator*
SPEAR and Injector CAMAC Interface Monitors SPEAR and Injector CA server PVs to add calculations and support the alarm handler. Provides slow feedback PVs. PVs for injector and SPEAR BSOICs. soft-ioccamac $EPICS/app/EtherIoc/etherIocApp/Db/camac*, fdbk*
Beamline Radiation Monitor Interface Interface to beamline radiation monitors for BCS (SAPE 234, SAPE 239, M595). Also, provides PVs for the non-BCS topoff software interlocks and summaries. Configuration control for limits. soft-iocrp $EPICS/app/EtherIoc/etherIocApp/Db/gamma*, rp*, config*
Power Supply (PS) Control SLAC Ethernet and Bitbus PS control. Also, injector PS interface for power supplies served by the injector CA server. SPEAR PS RTEMS IOC, soft-iocpsspr, soft-iocpsinj $EPICS/app/PowerSupply/
psControl Power supply standardization and ramp-off SPEAR PS RTEMS IOC, soft-iocpsspr, soft-iocpsinj $EPICS/app/PowerSupply/bitPSCApp/src/psControl.st
tspControl Power supply current control for TSP flashing and ramp-off soft-iocpsspr $EPICS/app/PowerSupply/bitPSCApp/src/tspControl.st
Pulse Signal Monitoring Digitizer waveform acquisition and processing. ALARA lost charge calculations. SPEAR PS, Linac PSM, Booster PSM IOCs $EPICS/app/PowerSupply/, $EPICS/modules/spearUtils/spearUtils/devPsm
BCS TopOff Interface Remote digital input and output for Beam Containment System. SAPE 239. SPEAR PS,Booster PSM RTEMS IOCs $EPICS/app/PowerSupply/
MCOR 4kHz Control
Hardware interface. MCOR IOCs $EPICS/app/Mcor/mcorApp
SPEAR BPMs SPEAR Electron and Photon BPM aquisition SPEAR BPM IOCs $EPICS/app/BPM/bpmAdcApp
Transport Line BPMs LTB/BTS Electron BPM aquisition LTB/BTS BPM IOC $EPICS/app/BPM/transBpmApp
Chopper Control and Interlock On/off control of chopper timing delay generator and ALARA chopper interlock. LTB/BTS BPM IOC $EPICS/app/BPM/transBpmApp
SPEAR RF Hardware interface and slow control SPEAR RF IOC $EPICS/app/RF-SPEAR/
4kHz Controls
Fast corrector and BPM features / control
(PDF document here)
BPM, MCOR,FOFB IOCs
$EPICS/app/BPM/
Bunch-By-Bunch Feedback
iGp12-372F Signal Processor User Manual BxB IOCs
N/A

OpenVMS Host Programs

To restart a program running on SPEAR1/2/3 or INJ02, a SPEAR system manager must log onto the machine running the program, get all privileges, and type the program name which will stop and restart the program. Contact a SSRL system manager to restart a program running on SSRL.
To rebuild a program: @spear_root:[epics.3_14_8_2epics]setup
set def <path to source code>
mms <program name>
mms production <program name>
Name Description Machine Source
ACM Integral Read linac and BTS ACM values (from local injector control system) and calculate different electron charge integrals. Use the reset mini-procedure to reset the integrals before a new run. INJ02 [INJECTOR.CMSLIB.KERNEL]ACM.C
ALARM_HANDLER Read and store alarm messages, generate notifications as required. SPEAR1,2,3,INJ02 spear_root:[monitoring]alarm_handler.c
ALARMSEQ Manages alarms. SPEAR1 spear_root:[alarms]alarmseq.c
BEAMINT Calculate SPEAR beam integrals every second. Use the reset mini-procedure to reset the integrals before a new run. SPEAR3 spear_root:[beamint]beamint.c
BL_INTRLK Calculate product of beam current (DCCT) and beamline vacuum and periodicall update integrals. Close beamline stopper when integral is too high. SPEAR3 spear_root:[monitoring]bl_intrlk.c
BL12_INTRLK Protect the BL12-2 insertion device in vacuum magnets from radiation from uncontrolled beam. SPEAR3 spear_root:[monitoring]bl12_intrlk.c
BOOSTER_FDBK Booster Extraction Septum Feedback INJ02 user_disk:[wermelsk.injector]booster_fdbk.c
BPMRACKTEMP Turn B116 and B132 BPM rack fans on and off to control temperature. SPEAR3 spear_root:[monitoring]bpmracktemp.c
CALSERVER Return PV values to webserver applications. SPEAR1 spear_root:[epics.calserver]calserver.c
CRATE_MONITOR Reboot MicroVax and generate an alarm message when a crash is detected. SPEAR3 spear_root:[monitoring]crate_monitor.c
CURMON Generate SPEAR beam current X display depending on selected machine mode SPEAR1 spear_root:[curmon]curmon.c
CURR_INTRLK Limit maximum SPEAR beam current and dump beam if beam current discrepancy SPEAR3 spear_root:[monitoring]curr_intrlk.c
HISTORYLOG_CA History Log Channel Access SPEAR1 spear_root:[history]historylog_ca.c
HISTORYLOG_RDB History Log RDB Update. Use PV Database web page to make changes to history. Changes can also be made using SQL commands. SPEAR1 spear_root:[history]historylog_rdb.c
HISTORYPLOT History Plot Viewer. When a new PV is added to history, historyplot needs to be restarted (or an old run accessed and then the new run). If 5 minutes has elapsed and historyplot still cannot access the new PV, a spear system manager must restart the SQL server. SPEAR1/2/3/SSRL spear_root:[history]historyplot.c
LINAC_FDBK Gun Heater, Linac RFDD, Gun Phase, Linac Klystron Phase and Power Feedbacks INJ02 user_disk:[wermelsk.injector]linac_fdbk.c
MSG_HANDLER Message handler. How to start MSG_HANDLER. SPEAR1 spear_root:[monitoring]msg_handler.c
MCC_POWER Get values from Motor Control Center Interfaces and update PVs on soft-iocpsspr. SPEAR2 spear_root:[mcc_power]mcc_power.c
PVSERVER Get record list from each IOC and reply with all corresponding PV setpoints SPEAR1 spear_root:[history]pvserver.c
ROOM_MONITOR Log event and set alarm status when a room or crate temperature goes beyond a limit. SPEAR3 spear_root:[monitoring]room_monitor.c
SPEAR_SERVER The SPEAR Control System Upgrade SPEAR3 user_disk:[cox.epics2005.ssrl_servers]
TC_INTRLK Monitor all SPEAR thermocouple readouts. SPEAR3 spear_root:[monitoring]tc_intrlk.c
TSP TSP flashing SPEAR3 spear_root:[tsp]tsp.c
VACUUM_MONITOR Calculate vacuum parameters every second. SPEAR3 spear_root:[monitoring]vacuum_monitor.com
WC_FDBK White Circuit Feedback INJ02 user_disk:[wermelsk.injector]wc_fdbk.c
XCAMAC XCAMAC SPEAR3 spear_root:[xcamac]xcamac.for

Linux Host and Console Programs

Most of the following programs run using the spear AFS account. When one machine (connie or beldar) is down, the other machine is used instead.
Name Description Machine Config Files and Scripts
iocLogMsgServer Receive messages from iocLog clients and send them to the RDB event log via msg_handler connie $EPICS/app/iocLog/
caRepeater Forward IOC beacons to CA clients on this host all N/A
alh Send PV alarms to iocLogMsgServer connie $EPICS/app/alh/
autoFill Compiled matlab script for automatic injection into SPEAR (ake, frequent fill, trickle-charge) connie $SPEAR_MATLAB/automatedFill/
blds Compiled matlab script for beam line dynamic steering connie $SPEAR_MATLAB/blds/
feedbackBooRF Compiled matlab script for booster RF phase stabilization feedback connie $SPEAR_MATLAB/feedbackBooRF/
Xvfb Virtual framebuffer X server required for alh and autoFill all $EPICS/app/alh/
channelWatcher Store PV setpoints and send setpoint changes to iocLogMsgServer connie $EPICS/app/cw/
gateway (public) Serve SPEAR PVs to clients outside the firewall beldar $EPICS/app/gtw/
gateway (SPEAR RF) Serve SPEAR RF (b132-iocrf) PVs to all SPEAR clients connie $EPICS/app/gtw/
Various Programs Soft IOCs all $IOC/soft-ioc*
iocConsole Processes IOC console access using screen all $IOC/screenrc and screeniocs
Extensible Display Manager (EDM) EPICS GUI displays, VACMON display on b117-pc13, displaying on b117-pc2 second monitor. all SPEAR EDM Design Rules,
SPEAR EDM Presentation
StripTool EPICS GUI strip chart tool all N/A
Matlab Programs Accelerator Physics Matlab Programs all N/A


SPEAR EPICS | EPICS Home | SPEAR Home | SSRL Computing/Networking | SSRL Home | SLAC Computing | SLAC Networking | SLAC Home

Contact: Stephanie Allison
Last Modified: Mar 19, 2014