You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 8 Next »

Table of Contents

Introduction

Fast Feedback Configuration Application is a Java based software application that allows the users to configure the feedback loops for the LCLS program. The main intent of the software is to allow the user to configure existing feedback loops.

The configuration application has the capability to:

  • Configure existing feedback loops
    • Configure individual actuator devices used by a transverse feedback loop
    • Configure the measurement devices used by a transverse feedback loop
    • Configure the states maintained by a transverse feedback loop
    • Initialize a system matrix and possibly a gain matrix for a feedback loop as required by the individual feedback loop
    • Allow the user to collect, edit, store, and load a reference orbit for each feedback loop.
    • Choose the transverse feedback algorithms, from a set of possible algorithms
    • Configure the timing patterns on which the feedback loop will collect data
    • Allow the user to initialize feedback operating limits for each of the devices and states used by a feedback loop.

Configure Measurements

On initialization, the measurements tab will be populated with the data(PVs) read from the feedback controller IOC. The user shall be able to select the desired measurement devices and edit the dispersion and alarm limits by clicking on the appropriate cells in the table shown in the figure below. In addition, the user can get the limits from the devices also, by pressing the “Get Limits from Device” button and get the dispersion from Model DB by pressing the “Get DISPR from Model DB”.

Configure Actuators

On initialization, the actuators tab will be populated with the data(PVs) read from the feedback controller IOC. The user shall be able to select the desired actuators and edit the alarm limits as shown in the figure below. In addition, the user can get the limits from the devices also, by pressing the “Get Limits from Device” button and get the energy values from Model DB by pressing “Get ENERGY from Model DB” button.

Configure States and Gains

On initialization, the States & Gains tab will be populated with the data(PVs) read from the feedback controller IOC. The user shall be able to edit the alarm limits and configure the gain factors as shown in the figure below. In the ‘Gain factors’ section, transverse and general type of feedback loops shall have only the ‘Proportional’ text field available for editing as shown in the figure below.  In case of longitudinal feedback type, this section will be having the following additional widgets – Show Integral and ‘number of errors in sum for integral’ text fields.

Transverse type always shows X Position, Y Position, X Angle, Y Angle states. Longitudinal type always shows DL1Energy, BC1 Energy, BC1 Bunch length, BC2 Energy, BC2 Bunch length, and DL2 Energy states.

Configure matrices

On initialization, the matrices tab will be populated with the measurements and actuators selected initially in the ‘Measurements’ and ‘Actuators’ tab and the matrix data for these devices are read from the feedback controller IOC. The user shall be able to edit the matrix values for all the X and Y measurements as shown in the figure below. These are shown for the transverse type of feedback loop. Other than the IOC, the user can get the matrix values from the Model DB or from a file system by pressing the appropriate buttons shown in the figure.

Note that the second section will show “Gain Matrix” table instead of the “Corrector Matrix” for longitudinal feedback loops.

Whenever the user makes any selection changes in the Measurements, Actuator and State tabs, the Matrix tab gets updated dynamically with the appropriate changes.

When a user presses ‘Import Feedback Matrix from file’ button (or Import Corrector Matrix from a file),  a file chooser dialog shall pop  up as shown below:

The file chooser dialog shall default to $MATLABDATAFILES  (/u1/lcls/matlab) directory. The user can navigate to any other desired folder from the default directory.  The  file chooser dialog shall allow the user to select only .mat files . When the user clicks the ‘Import ‘ button,  the matrix data gets populated in the appropriate table.

Configure Reference Orbit

On initialization, the reference orbit tab will be populated with the data(PVs) read from the feedback controller IOC..

In addition to the IOC, reference orbit data can be retrieved by pressing the button “Collect New Ref Orbit”. The Collect New Reference Orbit button will use EDEF to collect / average orbit data.  Apart from being populated on the individual text fields, the values of the measurements shall be displayed on X and Y plots also. The configuration screen is as shown in the figure below:

Note: When the user hits ‘Collect New Ref Orbit…” button, a new dialog shall pop up as follows:

The user shall be able to input the number of measurements to average as shown in the figure.  The application shall provide information about the current beam rate and calculate the approximate time taken to collect the reference orbit data.

Configure Timing Patterns

Feedback loops can have more than one timing pattern. The user can select the total number of patterns of interest. The timing patterns tab shall initially show inclusion/exclusion mask pair for each pattern of interest as follows:

The user can press the ‘EDIT’ button to bring up the timing pattern chooser dialog. This shall allow the user to configure time slots, loop rate and other parameters as shown in the figure below.

Configure Function

The Function tab shall allow the user to configure the desired functions as shown in the figure below:

There are four drop-down boxes as shown in the figure above - Initialize Function, Iterate Function, Feedback Matrix Function and Corrector Matrix Function. 'Choose a function...' is a choice in each list, for the Add Feedback case.

Save

The application ‘Activate Config’ button will save an entire ‘configuration’ to the IOC using the above process. It will save the configuration to the chosen Controller IOC feedback slot.

Before saving, the application indicates the different configurations (tabs) that were edited by the user and confirms that the configuration changes need to be saved. The user can always exit without saving the changes.

Exit (or abort if not saved)

If the configuration was edited, the application will display a dialog that indicates the various configurations that were changed and provides an opportunity to the user to save the configurations before exiting. If the user has not made any changes, the application just exits without any confirmation.

  • No labels