An EPICS Adventure
In late June, representatives from two SLAC software controls groups held a class in EPICS, the Experimental Physics and Industrial Control System. EPICS is a highly modular set of open source, cross-platform, scalable tools used to develop control systems for large experimental and industrial devices such as particle accelerators. EPICS also includes data-gathering and user interface tools, enabling engineers and scientists to develop their own front ends to view, manipulate and store data. EPICS classes are held periodically (the next is August 26–27) and are given jointly by SLAC's Accelerator Engineering Controls Software Engineering Group and the Photon Controls and Data Systems Group.
EPICS forms the basis for the software that controls the Linac Coherent Light Source and attendant instruments, and plans are under way to migrate more of the lab's systems. Stephen Lewis, an expert in EPICS who is currently with the Photon Controls and Data Systems Group, has helped implement EPICS on numerous SLAC devices, starting with PEP-II and moving on to the BaBar detector, then LCLS.
Lewis likened EPICS modules to Lego blocks. "Any two bricks will snap together," he explained.
EPICS classes at SLAC have previously been two-day classes geared toward teaching end users which bricks snap together where, but this past class, held June 22–25, was different. After Lewis spent two days covering the basic, top-level bricks (the user interface), Stephanie Allison from the SPEAR3 Controls Group and Eric Norum from Lawrence Berkeley National Laboratory covered more deeply buried bricks, including the real-time operating system and EPICS device drivers and hardware support. Whenever schedules permit, future classes will do the same in a continued effort to grow EPICS expertise at the lab, so that SLACers can actively add to the development of EPICS, not just use it.
"SLAC wants to be a major player in control systems," said Ernest Williams, manager of the EPICS group, and he said the way to accomplish this is through EPICS. According to Williams, that's just good business for SLAC. EPICS is taught through the U.S. Particle Accelerator School, and is considered enough of a standard that many manufacturers now sell EPICS-compatible devices.
"EPICS may have a reputation as a difficult system to learn," Lewis said, adding that its reputation is not due to intrinsic shortcomings, but rather to a lack of good introductory documentation. Williams and his group will do what they can to offset that lack via EPICS training. "Two to three days of hands-on training and occasional access to nearby experts has always been sufficient to empower groups at SLAC to successfully implement EPICS-based control systems," Lewis said, "whether they are stand-alone test-bench efforts or components of one the large SLAC facilities such as SPEAR or LCLS."
Ultimately the Controls and Software Engineering Group wants SLACers to consider EPICS as their one-stop shopping center for all their software needs, with its plug-and-play modules capable of providing everything from communication with device drivers to graphical user interfaces,. And if by some stretch of the imagination EPICS doesn't have the right module, the Controls Group wants to be able to create it.
After all, as Williams pointed out, "LCLS wouldn't be here if we didn't put those Lego bricks together."
—Lori Ann White