1 About this Document
This document outlines the conceptual and, in some cases, the detailed design for the LCLS Beam-Based Fast Feedback Controller IOC. This IOC application is responsible for running from 1 to N feedback loops configured for the LCLS Program. This document includes a description of the functionality of the entire Controller IOC application, its EPICS Database and processing, and the design of each thread involved.
2 Introduction
2.1 Background
2.2 Naming Conventions
- Bunch Charge (Feedback Loop) - Maintains bunch charge; requires Laser Power Set
- Laser Power Set - Wakes up when Laser Power is changed, calculates and outputs to certain PVs in order to protect the camera. It is not a feedback loop
- Transverse (Feedback Loop) - aka Trajectory, aka Launch; Includes the following Launch loops: Gun, Injector, Injector to Spect., X Cavity, L2, BSY, DL2, LTU, and UND
- Longitudinal (Feedback Loop)
- Start
- • Starts new instance of MATLAB
• starts with current actuator settings
• Saves current actuator settings for future restore - Disable (pause)• remembers last calculated actuator settings
• remembers running average used in integral term (longitudinal. only)
• Controller thread does not exit - Enable• Starts with new measurements, last calculated actuator settings,
• continues the running average used in integral term. (longitudinal. Only) - Stop• Complete stop, Controller loop thread exits and destroys its resources
2.3 References
2.4 Project Deliverables
2.5 User Documentation and Training
3 Functional Design
3.1 Functional Design and External Interfaces
Figure 1 Block Diagram