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 associated Controller loop thread
- 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
- Controller thread terminates after releasing its thread resources
- Controller thread terminates after releasing its thread resources
• 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