You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 37 Next »

  1. #General Remarks
  2. #Glossary

General Remarks

  • MPS Config: the client library that helps to interact with Config/Logic DBs as well as relevant MPS PVs
  • MPS GUI: a desktop application that displays the state of the MPS
  • MPS History Server: a Unix daemon that stores MPS messages to Oracle
  • MPS GUI and MPS History Server are built on top of the module MPS Config
  • All SQL queries are stored in .properties files in corresponding packages
  • (Almost) all constants/properties for a "module" are located in the class edu.stanford.slac.module.ModuleProperties

Glossary

Fault

  • aka (binary) input, signal
  • The basic event in the MPS
    • Belongs to an MPS device
    • Is usually a PV
  • Has two states: OK (true or 1) and Faulted (false or 0)
    • Current fault state is most important
  • 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 by MPS engineers

Macro

  • aka logic, 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)
  • Can be bypassed (set) to a #MacroState for a period of time
    • Bypassed fault numbers (ids) are stored in IOC:BSY0:MP01:BYPASS_LIST.VALA
    • Corresponding (absolute) end times are stored in IOC:BSY0:MP01:BYPASS_LIST.VALB (EPICS epoch)
    • Operators should know when bypass expires
  • Macro number is key (and index), macro names may be changed by MPS engineers
  • Stored in the Logic DB
Ignore Condition
  • aka ignoring macro (sigh!), ignore logic
  • Sort-of "meta"-macros that can ignore other macros
    • Useful, if e.g. the fault hardware misbehaves
    • Can be set active or inactive (by MPS engineers, not operators)
    • If active, it is important to know the minimum rate the MPS would allow, if the macro became inactive
    • Note: Some macros are always evaluated
  • Stored in the Logic DB

MacroState

  • aka (just) state
  • Defines the maximum allowed beam rates for certain fault states
    • Rate names are hard-coded in edu.stanford.slac.mps.jdbc.logic.Rate
  • Has a state number
    • If negative, has a special meaning (see method getMacroState() in the class edu.stanford.slac.mps.jdbc.logic.LogicDB in MPS Config)
    • If non-negative, limits beam rates
  • The binary representation of the (non-negative) 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

    Beam Rates at 4 locations

    0

    00

    F

    F

    0Hz 10Hz 0Hz 0Hz

    1

    01

    F

    T

    0Hz 10Hz 120Hz 120Hz

    2

    10

    T

    F

    120Hz 10Hz 0Hz 0Hz

    3

    11

    T

    T

    120Hz 10Hz 120Hz 120Hz

  • Current state numbers for every macro number are stored in IOC:BSY0:MP01:TTBLST.VALA

  • Stored in the Logic DB
  • No labels