General design
- All SQL statements are stored in .properties files in corresponding packages
Glossary
Fault
- aka device, input, signal
- The basic event in the MPS, usually a PV
- Has two states: OK (true or 1) and Faulted (false or 0)
- Stored in the Config DB
- 4 types: EPICS, LinkNode, LinkNodeChannel, LinkProcessor
- Classes in MPS Config edu.stanford.slac.mps.fault
- Fault number is the key, fault names may be changed (manually)
Macro
- aka Truth Table
- Defines 2-4 #MacroStates for 1-2 faults
- The order of faults matters (there is a column "position" in the DB)
- May need support for more than 2 faults in the future (currently not supported)
- Some macros, called "ignoring macros", may ignore other
- Stored in the Logic DB
MacroState
- Defines the maximum allowed beam rates given a particular state of the corresponding macro
- Rate names are hard-coded in edu.stanford.slac.mps.jdbc.logic.Rate
- The binary representation of the state number reflects the state of the corresponding faults; example for 2 faults: A (position=0) and B (position=1):
State Number
Binary Representation
B
A
0
00
F
F
1
01
F
T
2
10
T
F
3
11
T
T
- Stored in the Logic DB