Digital Closed Orbit Feedback System for the
Advanced Photon Source Storage Ring*
Y. Chung, D. Barr, G. Decker, J. Galayda, F. Lenkszus, A. Lumpkin and A. J. Votaw
Argonne National Laboratory, Argonne, IL 60439, U.S.A.
ABSTRACTThe Advanced Photon Source (APS) is a dedicated third-generation synchrotron light source with a nominal energy of
7 GeV and a circumference of 1104 m. The closed-orbit feedback system for the APS storage ring employs unified global
and local feedback systems for stabilization of particle and photon beams based on digital signal processing (DSP).
Hardware and software aspects of the system will be described in this paper. In particular, we will discuss global and local
orbit feedback algorithms, PID (proportional, integral, and derivative) control algorithm, application of digital signal
processing to compensate for vacuum chamber eddy current effects, resolution of the interaction between global and local
systems through decoupling, self-correction of the local bump closure error, user interface through the APS control systemand system performance in the frequency and time domains. The system hardware including the DSPs is distributed in 20
VME crates around the ring and the entire feedback system runs synchronously at a 4-kHz sampling frequency in order toachieve a correction bandwidth exceeding 100 Hz. The required data sharing between the global and local feedback
systems is facilitated by the use of fiber-optically-networked reflective memories.

I. INTRODUCTION
The Advanced Photon Source (APS) is one of the third-generation synchrotron light sources which are characterized
by low emittance of the charged particle beams and high brightness of the photon beams radiated from insertion devices(IDs). In order to take full advantage of the intense synchrotron radiation, the incident intensity, position, and angle of the
x-ray beam need to be tightly controlled [1-3]. Even though every effort is made to stabilize the electrical and mechanicalcomponents of the ring, there will inevitably be residual beam motion primarily caused by the quadrupole vibration.
The sources of vibration include ground vibration, mechanical vibration of the accelerator subcomponents, thermal
effects, and so forth. These are manifested in the undesired particle and x-ray beam motion. This results in increased
beam size and diluted beam emittance in the short term. An example of the long-term effect is the diurnal changes in thering circumference and periodic shift of the x-ray beam at the user station [4]. At the APS, the stringent transverse x-ray
beam position stability required by the current user community will be achieved through extensive beam-position feedback
systems with the correction bandwidth exceeding 100 Hz [5].
The APS has 360 rf beam position monitors (BPMs) and 318 corrector magnets distributed around the storage ring,
miniature BPMs for ID beamlines, and x-ray BPMs in the front end of x-ray beamlines for global and local orbit feedback.
The real-time (AC) feedback systems, which are the main focus of this work, will use a subset of these.
The feedback systems can be largely divided into the global and local feedback systems according to the scope ofcorrection. The global feedback system uses up to 80 rf BPMs and 38 corrector magnets distributed in 40 sectors. The
primary function is to stabilize the selected perturbation modes of the global orbit. The local feedback systems, on theother hand, stabilize the source regions of the x-ray beams locally for angle and displacement.
An ideal local feedback system would not affect the rest of the closed orbit or other local feedback systems. In reality,
the global and local feedback systems constantly interact with one another. The effect of global orbit feedback
unavoidably interferes with the local feedback. On the other hand, the bump closure error in the local feedback due tobump coefficient error, magnet field error, eddy current effect, etc., causes global orbit perturbation and affects other local
feedback systems. If this interaction is too strong, the feedback systems can become ineffective, oscillatory, or evenunstable. In order to minimize such effects and maximize the feedback efficiency, it is necessary to decouple the global
and local feedback systems and to compensate for the local bump closure error. The required data sharing between the
global and local feedback systems is facilitated by the use of fiber-optically-networked reflective memories.
In this work, we will discuss the feedback control algorithms and hardware and software configuration for the APS
orbit feedback systems. The remainder of this paper will be an overview of the feedback algorithm and system description
in Section II, system performance results in Section III and the current status of system integration in Section IV.

II. FEEDBACK ALGORITHM AND SYSTEM DESCRIPTION____________________________________________________________________________________________________*Work supported by the U.S. Department of Energy, Office of Basic Energy Sciences, under Contract No. W-31-109-ENG38.

The APS orbit feedback system has the capability of handling multiple local feedback systems for control of theinsertion device (ID) and bending magnet (BM) x-ray beamlines and a global feedback system to minimize the global orbit
distortion and thus to maintain high beam quality. In this section, we will describe the algorithms governing the operationof these feedback systems [5].
A. Control Algorithm
The signal processing core of the feedback systems is based on digital signal processing (DSP) [6]. The design
sampling frequency Fs (= 1/T) or the number of feedback loops executed per second is 4 kHz. Figure 1 shows theschematic of a multichannel digital feedback system. The object to be controlled, or the plant, is represented by the matrix
R. Rinv is the inverse-model matrix that controls coupling of various control points in the plant. In the case of orbit
feedback, R is a composition of the global and local response matrices.
X-ray BPM

sn

+

-

Rinv

G

H

+
+

ys3

a
AAA
AAA
AAA
1

yn
y n+1

ys2

R

b
AAA
AAA
AAA
3

AAA
AAA
AAA
2

y b1
AAA
AAA
AAA
4

x b1

yb2
x b2

AA : Bump magnets
AA: Closed orbit with bump magnets off: New closed orbit with bump magnets on: X-ray radiation

w n+1

Fig. 1: The schematic diagram of a digital feedback system.

Fig. 2: Schematic of the local feedback system.

The gain matrix G is comprised of the low pass filter (LPF); the proportional, integral, and derivative (PID) controller;
and any compensation filter (CF) that cancels the undesirable frequency dependence in the plant, such as the effect of theeddy current in the vacuum chamber. H represents the BPMs.
The difference equation describing the response of the feedback system in Fig. 1 is given by
y n+1 = H ⋅ {R ⋅ R inv ⋅ G ⋅ (s n − y n )+ wn +1}.

(1)

Applying the Z-transform to Eq. (1), we obtain1 
 ⋅ S(z) + F(z) ⋅ W(z)Y(z) = 1 − F(z)H(z) 
(2)1⋅ H(z)
1 + H(z) ⋅ R ⋅R inv ⋅ G(z)z −1

(3)

where
F(z) =.

Y(z) is the Z-transform of {yn}, W(z) is the Z-transform of {wn}, and so forth. The expression 1/(..) denotes the inverse
matrix. The matrix F(z) is the noise-filter matrix and with the substitution z = exp(-iwT), we can obtain the frequency
response of the feedback system. The last term in Eq. (2) represents the residue of the perturbation in the orbit withfeedback.
The response matrix R and the inverse matrix Rinv are shown in Fig. 3. The matrix R is largely composed of four
component matrices: Rg, Rgl, Rlg, and Rl ; and the inverse matrix Rinv is largely composed of three component matrices:
Rginv, Rinv,lg and Rlinv. These matrices are explained in the following subsections.
B. Local Orbit Feedback
A local orbit feedback system is based on a four-magnet local bump and will be the primary feedback mechanism tostabilize the local x-ray beamline for angle and displacement. The beam positions are detected by two rf BPMs inside thelocal bump and two x-ray BPMs as shown in Fig. 2 [2].
Four-magnet local bumps can be decomposed into two independent three-magnet local bumps, a and b, andtransformation between the bump strengths and the beam positions is straightforward. The locality of the bump can beachieved by powering the bump magnets in certain ratios determined by local bump coefficients. Empirical derivation ofthese coefficients is discussed in [7]. The local response matrix Rl can then be reduced to a 2¥2 matrix relating two beam

positions and two bump strengths. The local inverse matrix Rlinv is the inverse of the matrix Rl. In case there are multiple
local feedback system, Rl and Rlinv are aggregates of matrices as shown in Fig. 3.
Imbalance in the bump coefficients can cause local bump closure error and introduce global orbit distortion. Thiserror is represented by the matrix Rgl, which is assumed to be zero in the model. Even though the coefficients are wellmatched at DC, eddy current effect in the relatively thick (1/2") aluminum vacuum chamber will cause significant bumpclosure error if orbit perturbation contains components with a high enough frequency. This is remedied by global feedback
and self-correction of local bump closure error.
C. Global Orbit Feedback
The global feedback system attenuates global orbit distortion induced by bump closure error in the local feedback
systems as well as other vibration sources in the ring. For beam motion detection, up to 80 BPMs distributed in the ring, or
two BPMs per sector, are used. For orbit correction, the local feedback correctors are also used in addition to the 38 global
correctors per plane, with the exception of sector 39 and 40 where the correctors were not installed due to space constraints
near the injection point. The vacuum chamber at the location of the global corrector is made of thin stainless steel unlike
the local feedback systems. Both kinds of correctors are treated equally in the algorithm and both contribute to the global
orbit correction. However, by including the local feedback correctors in the global feedback system, the local bumpclosure error will be corrected most effectively. This has the same effect of having two sets of correctors at the same
location, one set for local feedback and the other for global feedback.
Under this scheme, the dimension of the global response matrix Rg is Mg ¥ (Ng + 4L), where Mg is the number ofglobal BPMs, Ng is the number of global correctors and L is the number of local feedback systems. The global inverse
matrix Rginv is obtained by applying the technique of singular value decomposition (SVD) [3,5,8] to Rg. The local
feedback corrector vector Æql is then the sum of contribution to the global orbit correction Æqlg, and closed local bumpÆqlc , i.e.,Æql = Æqlg + Æqlc .

(4)Æqlg is obtained by multiplying a corresponding submatrix of the global inverse matrix Rginv and the global orbit error
vector. Æqlc is computed based on the inverse of the model local response matrix and contains the decoupling term forproper compensation for the effect of global feedback as explained in the following subsection.
The DSPs and interface boards are installed in twenty VME crates distributed around the ring. Each crate covers two
sectors for both the horizontal and vertical planes, an odd sector in the upstream and an even sector in the downstream. A
single DSP is assigned per four degrees of freedom. Since each DSP needs access to the global orbit data at 80 global
BPMs, data collected from all 40 sectors needs to be available across the local VME bus. This is done via a dedicatedfiber optic network of reflective memories with a data transfer rate of 26 Mbytes/sec. For each degree of freedom, the 80
BPM data are multiplied by a row of Rginv. Operation of the DSPs is synchronized by an event signal broadcasted from acentral 4-kHz clock. Global and local feedback systems run simultaneously with the same clock frequency.
Response Matrix R

Rg
Rlg

AAAAAAAAAAAA
AAAAAAAAAAAA
AAAA
AAAA
AAAA
AAAA
AAAA
RglAAAA
AAAA
AAAA
AAAA
AAAA
AAAA
AAAA
AAAA
AAAA
AAAA
AAAA
AAAA
AAAA
AAAA
AAAA
AAAA
AAAA
AAAA
AAAA
AAAA
AAAA
AAAA
AAAA
AAAA
AAAA
AAAA
AAAA
AAAA
AAAA
AAAA
AAAA
AAAA
AAAA
AAAA
R
l
AAAA
AAAA
AAAA
AAAA
AAAA
AAAAAAAAAAAA
AAAA

Inverse Matrix Rinv

Rginv

0

0

Rinv,lg0

Rlinv

Rg Global Response Matrix
Rginv Global Inverse Matrix
Rlg Global-to-Local Response Matrix
Rgl Local-to-Global Response Matrix
2 x 2 Local Response Matrix
2 x 2 Local Inverse Matrix

Fig. 3: Response matrix R and its inverse Rinv for the unified global-local orbit feedback system.
D. Decoupling of Global and Local Feedback Systems
In the ideal situation of zero local bump closure error, the local feedback systems are transparent to the rest of the ring.
However, the global feedback unavoidably interferes with the operation of the local feedback systems unless the source islocalized and does not cause global orbit distortion. This global-to-local coupling is represented by the matrix Rlg, whichrelates global corrector kick and the beam motion on the local beamline. In general, orbit perturbation is seen by both theglobal and local feedback systems, and they will attempt to correct it independently, which leads to undesirable interaction
between the global and local feedback systems. If this interaction is too strong, the feedback systems can become
ineffective, oscillatory, or even unstable. This can be resolved by decoupling the global and local feedback systems [5].
This unified approach in effect combines the global and local feedback systems, renders the entire system into multiple
non-interacting feedback systems and thus minimizes the interference and the corrector load.
In the case of independent operation of global and local systems, the submatrix Rinv,lg is set to 0, and the feedback
systems are coupled. In order to decouple the feedback systems, the effect of global correctors on the local orbit based on
the global orbit error is subtracted from local orbit error, i.e.,0
R inv,lg = 
−R linv ⋅R lg ⋅ R ginv

coupleddecoupled.

(5)This scheme requires that the local feedback systems have access to the global orbit data, which is readily met since theglobal orbit data is available in all VME crates through the reflective memories.
Using Eq. (5) for the decoupled case and assuming R·Rlinv = 1, it can be shown that the matrix product R·Rinv is givenbyR ⋅ R inv = R g ⋅ R ginv ⊕ 1l

(6)

in the ideal case of no local bump closure error. The operator Å combines two matrices as depicted in Fig. 4.

X

⊕

Y

=

X

0

0

Y

Fig. 4: The matrix combination operator Å.
Now, puttingG(z) = Gg (z)1 g ⊕ Gl (z)1l

and H(z) = Hg (z)1g ⊕ Hl (z)1 l ,(7)

we obtainTF(z) = U ⋅ Fg (z) ⋅ U ⊕ Fl (z),(8)

where U is the unitary global BPM transform matrix derived from SVD, and Fg(z) and Fl(z) are diagonal. Equation (8)indicates that there exists a coordinate transformation that decouples the feedback channels, and single-channel feedback
theory can be applied to each channel.
Using the relation U·UT = UT·U = 1, we obtain from Eq. (3) the diagonal elements of Fg(z) as
H g (z)=Fg,ii (z) 1 + Hg (z)Gg (z)z −1
0

coupled modes
decoupled modes(9)

and similarly for Fl(z). The noise filter matrix for the BPMs can be obtained from Eqs. (8) and (9). The expression for the
coupled modes is identical to that of a single-channel feedback system [3]. The PID controller function G(z) is given by
G(z) = KP +

(

)

KI
−1
+ KD 1− z
1 − z −1,

(10)

where KP, KI, and KD are the proportional, integral, and derivative controller gains, respectively. These gain coefficientsshould be positive for negative feedback. When KI is finite, the open loop DC gain is infinite, and therefore, the long-term
drift can be completely corrected.
E. Hardware/Software Configuration and User Interface

Figure 5 shows the operations interface to an orbit feedback system crate. There are a total of 20 such crates, each ofwhich has one VME CPU and multiple DSP boards. Considering the number of processors in the system, it would be
impractical and error-prone to write, compile, and link individual codes for each processor. Instead, the codes are
generated automatically from base source codes which contain instructions for code generation for different processors.
The command parser is based on the GUS kernel, a script-based interpretive shell developed for streamlined dataacquisition and analysis [9]. The compiled codes for the VME CPUs, DSPs, EPICS (Experimental Physics and Industrial
Control System) data base, and controls interface are downloaded to the target processors through the Ethernet connection.
Once the codes begin execution in the processors, the feedback operation, including data sampling and analysis, can becontrolled via EPICS and the user interface.
The rf BPMs, x-ray BPMs, and corrector power supplies are interfaced through the feedback system interface
controller (FSIC) and the sister board FSIC-B in the VME backplane. Reflective memories are used for global orbit data
sharing and are networked through fiber optic cables. During feedback operation, the DSPs perform direct data I/O withFSIC and reflective memory through the local VME bus.
rf BPMs
x-ray BPMs
Automatic
Code Generator

To VME Backplane
FSIC BVME Crate (20)DSP
FSIC A

Refl. Memory

CPU

AAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAA
AAAAAAAA
AAAA
AAAA
AAAA
AAAA
AAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAA
AAAA
AAAA
AAAA
AAAA
AAAA
AAAAAAAAAAAAAAAA
AAAA
AAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAA
AAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAA
AAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAA
AAAA
AAAAAAAAAAAAAAAAAAAA
System Monitor

Refl. Memory

Code Downloading
throught Ethernet

Correctors

Refl. Memory

Base codes for:VME CPUs
DSPs
EPICS Database
EPICS Interface

Ethernet
EPICS and User Interface

Fig. 5: Operations interface to the orbit feedback system.

III. SYSTEM PERFORMANCE
The performance of the global feedback system is shown in Fig. 6 in the time and frequency domains using thesampling frequency of 4 kHz, LPF bandwidth of 50Hz, and the PID gains KP = 10, KI = 0.5, and KD = 2. For both tests, theglobal orbit perturbation was simulated using a single steering error in the ring. In the time domain, the steering error
introduced a step impulse at t = 10 ms. Comparison of the orbit motion with feedback on and off is shown Fig. 6(a). The
response time is approximately 500 µs. The system performance in the frequency domain is shown in Fig. 6(b). The
system bandwidth at -6dB noise rejection is 250 Hz. Similar performance results have been obtained from the local
feedback system test on the ESRF storage ring [7].
A
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AA
A
A
AA
A
AA
A
A
AA
A
AA
A
A
AA
A
AA
A
A
AA
A
AA
A
A
AA
AAAA
AAAA
AAAA
AAAA
AAAA
AAAA
AAAA
AAAA
AAAA
AAAA
AAA
A
AA
A
A
AA
AAAA
A
AAAA
AAAA
AA
AAAA
AAAA
AAAA
A
AAAA
AAAA
A
AAAA
AAAA
AAA
AA
A
AA
A
A
AA
A
AA
A
A
AA
A
AA
A
A
AA
A
AA
A
A
AA
AAAA
A
AAAA
AAAA
AA
AAAA
AAAA
AAAA
A
AAAA
AAAA
A
AAAA
AAAA
AAA
AA
AAAA
A
AAAA
AAAA
AA
AAAA
AAAA
AAAA
A
AAAA
AAAA
A
AAAA
AAAA
AAA
AA
A
AA
A
A
AA
A
AA
A
A
AA
A
AA
A
A
AA
A
AA
A
A
AA
AAAA
A
AAAA
AAAA
AA
AAAA
AAAA
AAAA
A
AAAA
AAAA
A
AAAA
AAAA
AAA
AA
AAAA
A
AAAA
AAAA
AA
AAAA
AAAA
AAAA
A
AAAA
AAAA
A
AAAA
AAAA
AAA
AA
A
AA
A
A
AA
A
AA
A
A
AA
A
AA
A
A
AA
A
AA
A
A
AA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
A
AA
A
A
AA
A
AA
A
A
AA
A
AA
A
A
AA
A
AA
A
A
AA
A
AA
A
A
AA
A
AA
A
A
AA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
A
AA
A
A
AA

AA
AAAA
AAAA
AA
AAAA
AA AAAAAAAAAAAAAA
AA
AAAA
AA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAA
AAA
AA
AA
AA
AA AAAAAAAAAA
AA
AA
AA
AA
AA
AA
AA
AA
A
AA
AA
AA
AA
A
AA
AA
AAAA
AAAA
AAAA
AAAA
AAAA
AAAA
AAAA
AAAA
AAAA
AAAA
AAA
AA
AA
A
AA
AA
AAAA
AA
AAAA
AAAA
AA
AAAA
AAAA
AAAA
A
AAAA
AAAA
AA
AAAA
AAAA
AAA
AA
AA
AA
A
AA
AA
AA
AA
A
AA
AA
AA
AA
A
AA
AA
AA
Closed-loopAA
ResponseA
AA
AA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AA
AA
A
AA
AA
AA
AA
A
AA
AA
AA
AA
A
AA
AA
AA
AA
A
AA
AA
AA
AA
A
AA
AA
AA
AA
A
AA
AA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AA
AA
A
AA
AA
AA
AA
A
AA
AA
AA
AA
A
AA
AA
AA
AA
A
AA
AA
AA
AA
A
AA
AA
AA
AA
A
AA
AA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AA
AA
A
AA
AA
AA
AA
A
AA
AA
AA
AA
A
AA
AA
AA
AA
A
AA
AA
AA
AA
A
AA
AA
AA
AA
AA
AA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AA
AA
AA
AA
AA

Fig. 6: (a) Impulse response of the global feedback system. (b) Frequency response. The sampling frequency was 4 kHz,LPF bandwidth was 50Hz, and the PID gains were: KP = 10, KI = 0.5, and KD = 2.

IV. CURRENT STATUS
At this time, the backbone hardware, including the VME crates, VME CPUs, DSPs, reflective memories, andcommunication network, has been installed and tested. An automatic code generator has been developed to facilitate
compiling and downloading of the software for the VME CPUs and DSPs. The performance of the integrated system
indicates a response time of 500 µs and a correction bandwidth of 250 Hz at -6 dB noise rejection.
In the near future, one or two local feedback systems will be installed on selected x-ray beamlines. With completionof production of the BPM and corrector power supply interface boards expected at the end of this year (1995), the global
feedback system will be implemented early in 1996.

V. REFERENCES[1] R. Hettel, "Beam Steering at the Stanford Synchrotron Radiation Laboratory," IEEE Trans. Nucl. Sci., NS-30, No. 4,
p. 2228, 1983.
[2] R. J. Nawrocky et al., "Automatic Beam Steering in the NSLS Storage Rings Using Closed Orbit Feedback," Nucl.
Instr. and Meth., A266, p. 164, 1988.
[3] Y. Chung, et al., "Closed Orbit Feedback with Digital Signal Processing," Proceedings of the 1994 European Particle
Accelerator Conference, London, U.K., p. 1592, 1994.
[4] R. Hettel, et al., "Design and Characterization of the SSRL Orbit Feedback System," Proceedings of the 1994
European Particle Accelerator Conference, London, U.K., p. 1580, 1994.
[5] Y. Chung, "A Unified Approach to Global and Local Beam Position Feedback," Proceedings of the 1994 European
Particle Accelerator Conference, London, U.K., p. 1595, 1994.
[6] A. Peled and B. Liu, Digital Signal Processing, (John Wiley & Sons, 1976).
[7] Y. Chung, et al., "Local Beam Position Feedback Experiments on the ESRF Storage Ring," Proceedings of the 1995
IEEE Particle Accelerator Conference, Dallas, Texas, 1995 (to be published).
[8] Y. Chung, G. Decker and K. Evans, Jr., "Closed Orbit Correction Using Singular Value Decomposition of the
Response Matrix," Proceedings of the 1993 IEEE Particle Accelerator Conference, Washington, D.C., p. 2263, 1993.
[9] Y. Chung, et al., "Development of GUS for Control Applications at the Advanced Photon Source," Proceedings of the1994 European Particle Accelerator Conference, London, U.K., p. 1794, 1994.