References
Subsystems
Display
CVS for ALH Configuration Files Reference directory: /afs/slac/g/lcls/tools/alh/config
Guidelines for adding PVs to the alarm handler
Info needed to define a subsystem Alarm Handler Tree
see below for more details about each aspect
Alarm Handler Tree Structures
There will be different tree structures for different purposes. In at least one of the available tree structures, the ALH alarm status at the area/region level will need to match the alarm status on the CUD display. A PV or subtree can be present in more than one tree. However, please note that a PV should only log changes once to cmlog, i.e. logging should be turned off for all but one entry in the Alarm Tree.
Tree structure I: device-level PVs
Useful for debugging device failure.
Possibly, Tree structure II: summary PVs
Useful for identifying which devices or subsystems are failing.
* |
IN20, LI21 and BSY Beam Regions
For Alarming purposes, IN20, LI21 and BSY both contain multiple beam regions. Otherwise, beam regions correspond to previously-defined areas .
Here are the Beam Regions, their start and end points as locations in the MAD deck, and their abbreviations for the alhConfig filenames (for example, mgnt_in20Gr_bend.alhConfig)
Beam Region |
start |
end |
unit numbers |
Abbrev. for ALH |
---|---|---|---|---|
IN20 Gun Region |
SOL1BK/CATHODE |
XC01/YC01 |
100-230 |
in20Gr |
IN20 Gun Spectrometer |
BXG |
FCG1 |
800-899 |
in20Gs |
IN20 Injector Linac, Heater, Emittance Region |
BXG |
QM02/BPM12 |
231-660 |
in20Ilhe |
IN20 Injector Spectrometer |
BX01 |
SDMP |
900-999 |
in20Is |
IN20 Dogleg-1 Region |
BX01 |
IM03 |
661-799 |
in20Dl |
LI21 Before TD11 |
L1S |
BPM21301 |
100-304 |
li21L1Bc1 |
LI21 After and including TD11 |
TD11 |
BPM21901 |
305-999 |
li21L2 |
BSY Before 50B1 |
|
50B1 |
|
bsy50B1 |
BSY 50B1 to 52SL2 |
50B1 |
52SL2 |
|
bsy52SL2 |
BSY 50B1 to D10 |
50B1 |
D10 |
|
bsyD10 |
BSY After D10 |
D10 |
end |
|
bsyEnd |
wiki page listing MAD names + control system names for IN20 which may be helpful.
Other regions in the alarm handler and lclshome correspond to the usual set of AREAs (e.g. LI23, LI30)
* |
Modes
On the alarm handler display, the operators will be able to see the status/readiness of various operational modes. Under each mode are the alarm sub-trees for devices required. Alarm sub-trees may be present in multiple modes. The modes are:
The alh logging instance uses the "All LCLS Devices" mode tree only. All PVs should be present in the All LCLS Devices mode tree.
Acknowledging Alarms
ALH instances started from control room OPIs will run in global mode, which allows globally visible alarm acknowledgement. Other ALH instances will be run in local passive mode, and not allow acknowledgement. See LCLS use of Alarm Handler Alarm Handler Processes for running in these modes.
Configuration File Naming Convention
Production alhConfig files are located in /usr/local/lcls/tools/alh/config (and in CVS under tools/alh/config)
In general:
Summary PVs and Alarm Group Naming Conventions
Level |
Summary PV |
Example |
Alarm Group Name |
---|---|---|---|
Area |
ALL:<area>:1:STATSUMY.SEVR |
ALL:LI22:1:STATSUMY.SEVR |
ALL:LI22:1 |
lclshome/CUD "alarmed box" |
<subsystem>:<area>:1:STATSUMY.SEVR |
MGNT:LI22:1:STATSUMY.SEVR |
MGNT:LI22:1 |
Device type per area |
<device type>:<area>:<position>:STATSUMY.SEVR |
BEND:LI22:MG01:STATSUMY.SEVR |
BEND:LI22:MG01 |
Device |
<device type>:<area>:<position>:STATSUMY.SEVR |
BEND:LI21:215:STATSUMY.SEVR |
BEND:LI21:215 |
Device (related measurements)1 |
<device type><subsystem abbrev>:<area>:<position>:STATSUMY.SEVR |
BENDTM:LI21:215:STATSUMY.SEVR |
BENDTM:LI21:215 |
Device level status PV
SUMMARIZED PVs and the linkage between alh trees and lclshome: DP PVs
Enabling/disabling of alarm trees is propagated to the lclshome alarm summaries by this mechanism (and see below for details on enable/disable):
The PVs that participate in the summaries are derived from the original subsystem PVs, with DP appended to the name e.g. VGPR:IN20:STATUSDP.
The DP PV alarm statuses are enabled or disabled depending on the value of the corresponding FORCEPVs (using the DISV, SDIS, DISS fields). If a FORCEPV is set to 1 (disabled) the DP PV alarm state is set to NO_ALARM, and it effectively drops out of the summaries above. When the FORCEPV is set to 0 (enabled) the DP PV alarm state reflects the alarm state of the original source PV.
FORCEPVs
The config file $FORCEPV option allows segments of the alarm tree to be temporarily disabled/enabled. I.e., the PVs in the tree are eliminated on the fly from contributing to the alarm display and from logging to cmlog. A FORCE PV triggers a change of the ALH channel. Due to ALH gui limitations, FORCEPVs will be defined only on the individual PV level.
FORCEPVs and DP PVs are generated from the same database file, alhFORCEPV.db
FORCEPV summaries: STATSUMYFP PVs
FORCEPV alarm severities are:
FORCEPV severities are summarized at each level of the tree, with a STATSUMYFP PV for each STATSUMY PV in the system. On the lclshome display, STATSUMYFP for each subsystem/area (colored box) is used to show that an alarm sub-tree in the corresponding subsystem/area has been disabled: an asterisk is displayed. The asterisk disappears when the sub-tree is enabled. To track exactly what has been disabled, use the alh gui.
enable/disable scripts: disabling/enabling alarming and logging on the fly
To disable/enable alarming for an alh group:
Groupname can be found in the "G"uidance popup for each group, or for devices, simply use the device name if no "G" button is present. You can also specify an individual PV name.
The script will prompt for confirmation; enter Y to confirm.
After running disableALHGroup you will see:
After running enableALHGroup you will see:
ALH disable/enable operations are propagated to the lclshome alarm colors: see the "SUMMARIZED PVs: linkage between alh trees and lclshome" section above for details.
(A new version of ALH from SNS will be put into production soon that allows multiple options from the "P" button. The enable and disable scripts will be added to the dropdown list for each group...coming eventually!)
Related edm displays
Clicking the P button at any level of the alarm tree will launch the appropriate associated edm display.
Soon a new version of ALH will be brought in from SNS that allows dropdown lists from the P button. To see the related edm display, select "edm display" from the dropdown.
Adding to the alarm tree, and useful scripts
Some useful scripts to assist in adding subsystems to the alarm tree can be found in /afs/slac/g/lcls/tools/alh/script. README describes the scripts, plus what needs to be done to add elements to the tree. These helper scripts are not necessarily production-quality at the moment; they are made availabe as-is - please inspect output before putting into the production alarm tree! (-:
changeMasks.pl changes masks for Channels that match a wildcard. Useful for, e.g., changing all magnet
"ACT" channels to turn of logging.
Meeting Notes