Madievski
Demonstration of frequency-weighted controller reduction.
The system considered in this example has been studied by Madievski and
Anderson [1] and comprises four spinning disks. The disks are connected by a
flexible rod, a motor applies torque to the third disk, and the angular
displacement of the first disk is the variable of interest. The state-space
model of eighth order is non-minimumphase and unstable.
The continuous-time LQG controller used in [1] is open-loop stable and of
eighth order like the plant. This eighth-order controller shall be reduced by
frequency-weighted singular perturbation approximation (SPA).
The major aim of this reduction is the preservation of the closed-loop
transfer function. This means that the error in approximation of the
controller K by the reduced-order controller Kr is minimized by
$$ \underset{K_r}{\\min} \ || W \ (K - K_r) \ V ||_{\infty} $$
where weights W and V are dictated by the requirement to preserve
(as far as possible) the closed-loop transfer function. In minimizing the
error, they cause the approximation process for K to be more accurate at
certain frequencies. Suggested by [1] is the use of the following stability
and performance enforcing weights:
$$ W = (I - G K)^{-1} G, \qquad V = (I - G K)^{-1} $$
This example script reduces the eighth-order controller to orders four and two
by the function call
Kr = spaconred (G, K, nr, 'feedback', '-')
where argument nr denotes the desired order (4 or 2). The key-value
pair 'feedback', '-'
allows the reduction of negative feedback
controllers while the default setting expects positive feedback controllers.
The frequency responses of the original and reduced-order controllers are
depicted in figure 1, the step responses of the closed loop in figure 2.
There is no visible difference between the step responses of the closed-loop
systems with original (blue) and fourth order (green) controllers.
The second order controller (red) causes ripples in the step response, but
otherwise the behavior of the system is unaltered. This leads to the
conclusion that function spaconred
is well suited to reduce the
order of controllers considerably, while stability and performance are
retained.
Source Code: Madievski
Reference
[1] Madievski, A.G. and Anderson, B.D.O.
Sampled-Data Controller Reduction Procedure,
IEEE Transactions of Automatic Control,
Vol. 40, No. 11, November 1995