EPICS for Dummies

From Beam Line Controls
Revision as of 16:04, 10 February 2023 by Rodolakis (talk | contribs)
Jump to navigation Jump to search

What is EPICS?

EPICS = Experimental Physics and Industrial Control System

EPICS is a distributed control system, which means that the IOC (software) can run on a different computer as the user interfaces.

What is an IOC?

IOC (Input/output controller) is a piece of software running on a computer:

  • serves something called process variables (PVs) that you can read and write to
  • used to run on VMEs, but nowadays it runs on anything.
  • usually talks to hardware, but that isn’t a requirement.

What is a PV?

PV (process variables) is a the field from a record: PV = record_name + . + field_name

EPICS records have many fields that allow users to configure how they behave and monitor their state. Most of the interactive parts of user displays have PVs associated with them.

What is a record?

Records are the building blocks of EPICS

  • Each record type performs a specific function
  • Records are customizable via fields
  • Records vary significantly in complexity
    • Simple records are associated with individual data types
    bi, bo, mbbi, mbbo, longin, longout, ai, ao, stringin, stringout, waveform
    • Intermediate records often perform calculations or link multiple records
    calcout, scalcout, acalcout, swait, transform, fanout, dfanout
    • Complex records are associated with devices or higher-level functionality
    motor, scaler, mca, sscan, table, digitel, vs
    • Flexible records allow custom functionality to be implemented
    sub, aSub, luascript






Help: https://www.mediawiki.org/wiki/Help:Formatting