Difference between revisions of "EPICS for Dummies"

From Beam Line Controls
Jump to navigation Jump to search
Line 1: Line 1:
=== What is EPICS? ===
=== What is EPICS? ===


EPICS = Experimental Physics and Industrial Control System
EPICS (Experimental Physics and Industrial Control System) is a distributed control system, which means that the IOC (software) can run on a different computer as the user interfaces.
 
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? ===
=== What is an IOC? ===
Line 16: Line 14:
PV (Process Variables) is a the field from a record: PV = record_name + . + field_name
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.
Most of the interactive parts of user displays have PVs associated with them.


Line 23: Line 20:
Records are the building blocks of EPICS
Records are the building blocks of EPICS
* Each record type performs a specific function
* Each record type performs a specific function
* Records are customizable via fields
* Records are customizable via fields that allow users to configure how they behave and monitor their state.
* Records vary significantly in complexity
* Records vary significantly in complexity
** Simple records are associated with individual data types
** Simple records are associated with individual data types

Revision as of 16:17, 10 February 2023

What is EPICS?

EPICS (Experimental Physics and Industrial Control System) 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

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 that allow users to configure how they behave and monitor their state.
  • 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