The lower level of GM/CA control system is constituted by EPICS. EPICS is an abbreviation for "Experimental Physics and Industrial Control System", a distributed hardware control system widely deployed at the APS and other synchrotron radiation facilities. In EPICS each hardware component is interfaced via a database server called input-output controller (IOC).
GM/CA runs multiple IOC for each beamline:
EPICS allows multiple client programs to access the IOC and control hardware in parallel. While our main user interface software is JBluIce, manual and semi-automated procedures, for example interfacing beamline intensity feedback, can be performed with other EPICS tools such as MEDM and CaQtDMscreens, StripTool (time plots) and various automation scripts. Most of relevant EPICS tools are available via the Beamline Controls Toolbar, which can be accessed either from the JBluIce Tools menu, or by opening a terminal window and typing 23i, 23o, or 23b for the 23ID-D, 23ID-B or 23BM beamline respectively, or by pressing the icon on the computer desktop (the color may vary per beamline).
Our main EPICS development platform is Redhat Enterprise Linux and the VME IOC are operational under VxWorks.
The core of the whole control system are Turbo PMAC2 motion controllers that we made available in EPICS. The advantages of these controllers are (see the picture below):
Using these controllers we implemented on-the-fly scans for beamline
alignment. The scans are partially based on an open-source FastScans
project formerly carried by Elena Kondrashkina and Sergey Stepanov
while they were employed at BioCAT.
The package consists of a number of programs written in C language with
user-friendly GUI frontend developed in Java.
As illustrated by the scan plot, the actual motion time of the shutter is about 12.5 ms and the beam blocking occurs within 2.5 ms.
> JBluIce - EPICS source distribution