Author: Freyermuth, T.
Paper Title Page
MO2BCO04 Applying Standardised Software Architectural Concepts to Design Robust and Adaptable PLC Solutions 40
 
  • S.T. Huynh, B. Baranasic, M. Bueno, L. Feltrin Zanellatto, T. Freyermuth, P. Gessler, N. Jardón Bueno, N. Mashayekh, J. Tolkiehn
    EuXFEL, Hamburg, Germany
 
  Between evolving requirements, additional feature requests and urgent maintenance tasks, the Programmable Logic Controllers (PLC) at the European X-Ray Free Electron Laser Facility (EuXFEL) have become subjected to an array of demands. As the maintainability effort towards the existing systems peak, the requirement for a sustainable solution become an ever pressing concern. Ultimately, in order to provide a PLC code base which can easily be supported and adapted to, a reworking was required from the ground up in the form of a new suite of libraries and tools. Through this, it was possible to bring standardised software principals into PLC design and development, conjunctively offering an interface into the existing code base for ongoing support of legacy code. The set of libraries are developed by incorporating software engineering principles and design patterns in test driven development within a layered architecture. In defining clear interfaces across all the architectural layers - from hardware, to the software representation of hardware, and clusters of software devices, the complexity of PLC development decreases down into modular blocks of unit tested code. Regular tasks such as the addition of features, modifications or process control can easily be performed due to the adaptability, flexibility and modularity of the core PLC code base.  
slides icon Slides MO2BCO04 [0.910 MB]  
DOI • reference for this paper ※ doi:10.18429/JACoW-ICALEPCS2023-MO2BCO04  
About • Received ※ 05 October 2023 — Revised ※ 08 October 2023 — Accepted ※ 14 November 2023 — Issued ※ 09 December 2023
Cite • reference for this paper using ※ BibTeX, ※ LaTeX, ※ Text/Word, ※ RIS, ※ EndNote (xml)  
 
MO4AO06 Overview and Outlook of FPGA Based Hardware Solutions for Data Synchronization, Acquisition and Processing at the Euxfel 233
 
  • B.J. Fernandes, F. Babies, T. Freyermuth, P. Gessler, I.S. Soekmen, H. Sotoudi Namin
    EuXFEL, Hamburg, Germany
 
  The European X-Ray Free Electron Laser facility (EuXFEL) provides ultra short coherent X-Ray flashes, spaced by 220 nanoseconds and with a duration of less than 100 femtoseconds, in bursts of up to 2700 pulses every 100ms to several instruments. The facility has been using standardized Field-Programmable Gate Array (FPGA) based hardware platforms since the beginning of user operation in 2017. These are used for timing distribution, data processing from large 2D detectors, high speed digitizers for acquisition and processing of pulse signals, monitoring beam characteristics, and low latency communication protocol for pulse data vetoing and Machine Protection System (MPS). Our experience grows in tandem with user requests for more specific and challenging case studies, leading to tailor made hardware algorithms and setups. In some cases, these can be fulfilled with the integration of new hardware, where collaboration with companies for new and/or updated platforms is a key factor, or taking advantage of unused features in current setups. In this overview, we present the FPGA hardware based solutions used to fulfill EuXFEL’s requirements. We also present our efforts in integrating new solutions and possible development directions, including Machine Learning (ML) research, with the aim of bringing more accurate results and configurable setups to user experiments and facilitate communications with other platforms used in the facility, namely Programmable Logic Controllers (PLC).  
DOI • reference for this paper ※ doi:10.18429/JACoW-ICALEPCS2023-MO4AO06  
About • Received ※ 06 October 2023 — Accepted ※ 13 October 2023 — Issued ※ 23 October 2023  
Cite • reference for this paper using ※ BibTeX, ※ LaTeX, ※ Text/Word, ※ RIS, ※ EndNote (xml)  
 
TUSDSC03 Integrating Tools to Aid the Automation of PLC Development Within the TwinCat Environment 925
 
  • N. Mashayekh, B. Baranasic, M. Bueno, L. Feltrin Zanellatto, T. Freyermuth, P. Gessler, S.T. Huynh, N. Jardón Bueno, J. Tolkiehn
    EuXFEL, Hamburg, Germany
 
  Within the myriad of day to day activities, a consistent and standardised code base can be hard to achieve, especially when a diverse array of developers across different fields are involved. By creating tools and wizards, it becomes possible to guide the developer and/or user through many of the development and generic tasks associated with a Programmable Logic Controller (PLC). At the European X-Ray Free Electron Laser Facility (EuXFEL), we have striven to achieve structure and consistency within the PLC framework through the use of C# tools which are embedded into the TwinCAT environment (Visual Studio) as extensions. These tools aid PLC development and deployment, and provide a clean and consistent way to develop, configure and integrate code from the hardware level, to the Supervisory Control And Data Acquisition (SCADA) system.  
poster icon Poster TUSDSC03 [0.137 MB]  
DOI • reference for this paper ※ doi:10.18429/JACoW-ICALEPCS2023-TUSDSC03  
About • Received ※ 05 October 2023 — Accepted ※ 29 November 2023 — Issued ※ 12 December 2023  
Cite • reference for this paper using ※ BibTeX, ※ LaTeX, ※ Text/Word, ※ RIS, ※ EndNote (xml)  
 
THPDP023 Evolution of Control System and PLC Integration at the European XFEL 1354
 
  • A. Samadli, T. Freyermuth, P. Gessler, G. Giovanetti, S. Hauf, D.G. Hickin, N. Mashayekh, A. Silenzi
    EuXFEL, Schenefeld, Germany
 
  The Karabo software framework* is a pluggable, distributed control system that offers rapid control feedback to meet the complex requirements of the European X-ray Free Electron Laser facility. Programmable Logic Controllers (PLC) using Beckhoff technology are the main hardware control interface system within the Karabo Control System. The communication between Karabo and PLC currently uses an in-house developed TCP/IP protocol using the same port for operational-related communications and self-description (the description of all available devices sent by PLC). While this simplifies the interface, it creates a notable load on the client and lacks certain features, such as a textual description of each command, property names coherent with the rest of the control system as well as state-awareness of available commands and properties**. To address these issues and to improve user experience, the new implementation will provide a comprehensive self-description, all delivered via a dedicated TCP port and serialized in a JSON format. A Python Asyncio implementation of the Karabo device responsible for message decoding, dispatching to and from the PLC, and establishing communication with relevant software devices in Karabo incorporates lessons learned from prior design decisions to support new updates and increase developer productivity.
* Hauf, et al. The Karabo distributed control system J.Sync. Rad.26.5(2019): 1448ff
** T. Freyermuth et al. Progression Towards Adaptability in the PLC Library at the EuXFEL, PCaPAC’22, pp. 102-106. 
 
poster icon Poster THPDP023 [0.338 MB]  
DOI • reference for this paper ※ doi:10.18429/JACoW-ICALEPCS2023-THPDP023  
About • Received ※ 05 October 2023 — Revised ※ 25 October 2023 — Accepted ※ 13 December 2023 — Issued ※ 18 December 2023
Cite • reference for this paper using ※ BibTeX, ※ LaTeX, ※ Text/Word, ※ RIS, ※ EndNote (xml)