Author: Lauer, K.R.
Paper Title Page
MO4BCO06
ATEF, an Automated Test Execution Framework for System Configuration Checkouts  
 
  • R.S. Tang-Kong, K.R. Lauer
    SLAC, Menlo Park, California, USA
 
  Funding: This work is supported by Department of Energy contract DE-AC02-76SF00515.
LCLS is home to nine beamlines with drastically differing capabilities and competencies. These beamlines are comprised of a wide variety of different devices, and are frequently reconfigured to improve these capabilities or fit the current experiment. This varied and rapidly changing environment has made automating system configuration checks a challenging but vital step toward consistently performing high impact research. LCLS has begun development on ATEF (automated test execution framework), which aims to provide a framework for LCLS scientists to perform system configuration checks quickly and reproducibly. Atef offers a suite of tools for performing both active and passive checks built on the Bluesky/Ophyd data collection framework, as well as a Qt-based GUI for constructing and configuring said checks. This talk will outline the development of this tool, along with lessons learned through its initial deployment amongst our beamlines.
 
slides icon Slides MO4BCO06 [4.179 MB]  
Cite • reference for this paper using ※ BibTeX, ※ LaTeX, ※ Text/Word, ※ RIS, ※ EndNote (xml)  
 
TH2BCO03 The LCLS-II Experiment Control System 1172
 
  • T.A. Wallace, D.L. Flath, M. Ghaly, T.K. Johnson, K.R. Lauer, Z.L. Lentz, R.S. Tang-Kong, J. Yin
    SLAC, Menlo Park, California, USA
 
  Funding: Work supported by the U.S. Department of Energy under contract number DE-AC02-76SF00515.
The Linac Coherent Light Source (LCLS) has been undergoing upgrades for several years now through at least two separate major projects: LCLS-II a DOE 403.13b project responsible for upgrading the accelerator, undulators and some front-end beam delivery systems, and the LCLS-II Strategic Initiative or L2SI project which assumed responsibility for upgrading the experiment endstations to fully utilize the new XFEL machine capabilities to be delivered by LCLS-II. Both projects included scope to design, install and commission a control system prepared to handle the risks associated with the tenfold increase in beam power we will eventually achieve. This paper provides an overview of the new control system architecture from the LCLS-II and L2SI projects and status of its commissioning.
 
slides icon Slides TH2BCO03 [2.700 MB]  
DOI • reference for this paper ※ doi:10.18429/JACoW-ICALEPCS2023-TH2BCO03  
About • Received ※ 04 November 2023 — Accepted ※ 11 December 2023 — Issued ※ 16 December 2023  
Cite • reference for this paper using ※ BibTeX, ※ LaTeX, ※ Text/Word, ※ RIS, ※ EndNote (xml)  
 
THMBCMO08 whatrecord: A Python-Based EPICS File Format Tool 1206
 
  • K.R. Lauer
    SLAC, Menlo Park, California, USA
 
  Funding: This work is supported by Department of Energy contract DE-AC02-76SF00515.
whatrecord is a Python-based parsing tool for interacting with a variety of EPICS file formats, including R3 and R7 database files. The project aims for compliance with epics-base by using Lark grammars that closely reflect the original Lex/Yacc grammars. It offers a suite of tools for working with its supported file formats, with convenient Python-facing dataclass object representations and easy JSON serialization. A prototype backend web server for hosting IOC and record information is also included as well as a Vue.js-based frontend, an EPICS build system Makefile dependency inspector, a static analyzer-of-sorts for startup scripts, and a host of other things that the author added at whim to this side project.
 
slides icon Slides THMBCMO08 [1.442 MB]  
poster icon Poster THMBCMO08 [1.440 MB]  
DOI • reference for this paper ※ doi:10.18429/JACoW-ICALEPCS2023-THMBCMO08  
About • Received ※ 03 October 2023 — Revised ※ 24 October 2023 — Accepted ※ 14 December 2023 — Issued ※ 21 December 2023
Cite • reference for this paper using ※ BibTeX, ※ LaTeX, ※ Text/Word, ※ RIS, ※ EndNote (xml)  
 
THMBCMO13
TwinCAT BSD Virtual Machines and Ansible Provisioning  
 
  • K.R. Lauer
    SLAC, Menlo Park, California, USA
 
  Funding: This work is supported by Department of Energy contract DE-AC02-76SF00515.
TwinCAT/BSD is a lightweight FreeBSD-based operating system for TwinCAT PLCs that Beckhoff has offered since 2021 as an alternative to Microsoft Windows. These BSD-based PLCs offer the same runtime capabilities as their Windows-based counterparts and also bring the benefits of a Unix-like operating system. With TwinCAT/BSD images provided by Beckhoff, virtual machines are now easy to spin up for prototyping, development, and unit testing without direct access to PLC hardware. Ansible playbooks with some custom additions make provisioning these VMs and real PLCs simple. Automated installation of TwinCAT tools and packages, upgrades of runtime versions, route management, AMS Net ID settings, firewall configuration, and more are now handled with ease when using TwinCAT/BSD with Ansible.
 
slides icon Slides THMBCMO13 [1.088 MB]  
poster icon Poster THMBCMO13 [1.633 MB]  
Cite • reference for this paper using ※ BibTeX, ※ LaTeX, ※ Text/Word, ※ RIS, ※ EndNote (xml)  
 
THPDP089
Centralized Logging and Alerts for EPICS-based Control Systems with Logstash and Grafana  
 
  • K.R. Lauer
    SLAC, Menlo Park, California, USA
 
  Funding: This work is supported by Department of Energy contract DE-AC02-76SF00515.
Controls-focused centralized logging on the experimental side of the LCLS aims to bring together logging information from a variety of disparate sources into a single database for easy correlation and alerting. Our application of EPICS covers thousands of IOCs, dozens of Channel Access gateways, hundreds of PLCs and other physical devices, and numerous user-facing applications all running simultaneously. Each of these elements has its own idiosyncrasies in terms of how log messages are generated, where they are stored (if at all), and what information is contained. Our centralized logging implementation routes messages from our most common sources to a logstash instance which is configured to interpret each message and store the parsed information into a database. This system includes support for caput logs, Channel Access gateway put logs, messages generated from TwinCAT PLCs, user-facing Python applications, and the EPICS error logging facility. Aggregated logs can then be readily queried alongside EPICS Process Variable data in Grafana. Alerts can be easily configured by end-users to notify users of situations by way of Slack message and e-mail.
 
poster icon Poster THPDP089 [2.207 MB]  
Cite • reference for this paper using ※ BibTeX, ※ LaTeX, ※ Text/Word, ※ RIS, ※ EndNote (xml)