AGC Design Using H infinity

Page 1

AGC Design Using Robust Optimization Measure Steve Rogers Abstract: A tuning optimization procedure is presented based on H-Infinity robustness criteria. The tuning procedure may be applied to a standard H-infinity linear structure (defined as ss[A,B,C]. The controller gains are determined by a random optimization algorithm that is based on ideas from genetic algorithm designs. A simple solution for the continuous algebraic riccati equation is used. The tuning procedure is applied to two oscillation control algorithms for resonant sensors. One control algorithm tracks the resonant frequency of the resonator and the other algorithm tunes it to the specified resonant frequency by altering the resonator dynamics. Both algorithms maintain the specified amplitude of oscillations. The original solution is compared to those obtained by the robustness metric. Keywords: H-Infinity tuning; genetic algorithm optimization; algebraic riccati equation solver, oscillation control; resonant sensor; vibratory gyroscope; automatic gain control

H-Infinity Stability H-Infinity controllers1,2,3 are designed based on a performance index applied to a linearized model. This performance index may be incorporated into an optimization procedure. A performance index based on robust H-Infinity principles may be applied to solve for the control law gains. This approach will ensure controller stability assuming that the linearized models are reasonably accurate. A state space approach is the most commonly used. Standard H∞ objectives are solved by the following equation1-3. ‖[ ] (

)

̃

Given a realization of the form [A,B,C,0] of a controllable and observable plant the Control Algebbraic Riccati Equation (CARE) and Filtered Algebraic Riccati Equation (FARE) are given below. A* X + X A – X B B* X + C* C = 0 A Z + Z A* - Z C* C Z + B B* = 0 ( )) . This direct solution is The solution to the above equation is3 ( attractive in that a γ is found without resorting to the more well-known γ-iteration. The γmin is a measure of the stability of the system. Therefore, if the maximum value may be found through optimization a more stable system will result. This may be accomplished in a straight forward fashion by adjusting the controller gains until the maximum value is achieved. It should be noted that the above addresses the system robustness, but does not specify performance. Simple pre- and post-compensators may be incorporated into the system to achieve performance improvement by loop shaping 4. Such additional compensation is beyond the scope of this study.


If the above Riccati equations are to be solved within an iteration loop for optimization, the solution may not always be reachable with standard software packages. One can find a simple algebraic solution by using the following approach. for i = 1:niter Zdot = an*Z + Z*an' - Z*Q2*Z + Q1; Z = Z + alph*Zdot; Xdot = an'*X + X*an - X*Q1*X + Q2; X = X + alph*Xdot; end

The meaning of each parameter is described in Appendix A – Algebraic Riccati Equation Matlab Solution. By doing a fixed number of iterations for each optimization cycle, timing may be controlled.

Resonant Sensor Model Control algorithms were applied to two important problems in a vibratory gyroscope5. The first is the leading-following resonator problem in the drive axis of MEMS dual-mass vibratory gyroscope where there is no mechanical linkage between the two proof-masses and the second is the on-line modal frequency matching problem in a general vibratory gyroscope. The following figure5 shows a block diagram of the frequency tracking and amplitude control composed of an AGC and a PLL.

The linear model5 was derived from the basic equations associated with AGC and PLL and is shown in Appendix B – Matlab code for Robustness Tuning Metric. The equations of the system are as follows. ( (̇ ̇ ̇ ̇ ̇

( |

) ) |

)


̇ ̇ ̇ ̇

((

)

)

X0 is the specified amplitude. Np is the displacement measurement noise and is assumed to be white Gaussian noise.

Genetic Algorithm Optimization An optimization procedure was developed according to ideas based on genetic algorithms. A genetic algorithm (GA) is a search heuristic that mimics the process of natural evolution. This heuristic is routinely used to generate useful solutions to optimization and search problems. Random values are selected about the previous best and/or 2nd best solution for testing. A performance index is computed at the end of each iteration. In our case the performance index is the inverse of the maximum value in order to get a minimum value and is given as: eopt = 1/sqrt(1 + lam_max); lam_max = max(abs(eig(X*Z)));

Results

Initial Value Trial 1 Trial 2 Trial 3

Ki 1.5e-5 1.0232e-5 6.8832e-6 2.743e-5

Kv 0.5 0.0133 0.0093 0.0062

Iter 396, best PI, current PI 0.7065 0.8

Kz 1.5e-4 1.203e-5 1.2381e-5 1.4253e-5

0.7065

Eopt 0.3539 0.7065 0.7076 0.70764

Iter 396, best PI, current PI 0.70757 0.70760 0.8 0.7

pindex

0.7

pindex

Kp 0.018 0.0261 0.0144 0.0342

0.6 0.5 0.4

0.6 0.5 0.4

0

100

200

300

400

0

100

200

300

400


Iter 396, best PI, current PI 0.70764 0.70764 0.8

pindex

0.7 0.6 0.5 0.4 0

200

Ki 1.5e-5 3.7914e-6 1.5188e-5 8.263e-6

300

Kv 0.5 0.0161 0.0077 0.0106

400

Kz 1.5e-4 8.677e-6 1.4143e-5 1.4825e-5

Kp 0.018 0.0148 0.0617 0.0153

Kw 1.5e-4 1.7833e-4 3.0434e-4 6.7056e-5

Eopt 0.3539 0.70636 0.70692 0.70667

Iter 396, best PI, current PI 0.70630 0.70636 0.8

Iter 396, best PI, current PI 0.70696 0.70692 0.8

0.7

0.7

pindex

pindex

Initial Value Trial 1 Trial 2 Trial 3

100

0.6 0.5 0.4

0.6 0.5 0.4

0

100

200

300

400

0

100

200

300

400

Iter 396, best PI, current PI 0.70659 0.70667 0.8

pindex

0.7 0.6 0.5 0.4 0

100

200

300

400

References 1. Zhou, K. & Doyle, J., Essentials of Robust Control, Prentice Hall, 1998. 2. Sanchez-Pena, R. & Sznaier, M., Robust Systems Theory and Applications, Wiley-Interscience, 1998.


3. Hyde, R., H∞ Aerospace Control Design, Springer, 1996. 4. Helton, J. & Merino, O., Classical Control Using H∞ Methods, SIAM, 1998. 5. Park, S., Tan, C., Kim, H., & Hong, S., ‘Oscillation Control Algorithms for Resonant Sensors with Applications to Vibratory Gyroscopes,’ Sensors, 2009, 9, 5952-5967, ISSN 1424-8220

Appendix A – Algebraic Riccati Equation Matlab Solution The matlab code for a simple solution of the continuous algebraic riccati equation is: function [Z,X,Zdot,Xdot] = get_are(a,b,c,d,niter,alph); Z = 1e-3*ones(size(a));X = 1e-3*ones(size(a));P = 1e-3*ones(size(a));Pz = P;Px = P; S = eye(4) + d'*d;R = 1 + d*d'; an = a - b/S*d'*c; Q1 = b/S*b';Q2 = c'/R*c; for i = 1:niter Zdot = an*Z + Z*an' - Z*Q2*Z + Q1; Z = Z + alph*Zdot; Xdot = an'*X + X*an - X*Q1*X + Q2; X = X + alph*Xdot; end

Appendix B – Matlab code for Robustness Tuning Metric The matlab code follows: niter = 1.3e5;alph = 1.5; ki = in(1);kv = in(2);kz = in(3);kp = in(4); X0 = 5;lama = 0.05;w0 = 0.9;lamp = 0.5;lamq = 0.5; % set up state space model a = [0 -ki 0 0 0;0 -lama 0 0 0;0 0 0 kv 0;0 0 0 0 kz;0 0 0 0 -lamp]; b = [ki 0 0 0;0 lama*pi/2 0 0;0 0 1 0;0 0 0 0;0 0 0 lamp]; c = [1 -kp 0 0 0]; d = [kp 0 0 0]; [Z,X,Zdot,Xdot] = get_are(a,b,c,d,niter,alph); % robustness measure if ~isempty(Z) && ~isempty(X) lam_max = max(abs(eig(X*Z))); else,lam_max = 1e20; end eopt = 1/sqrt(1 + lam_max);

Appendix C – Matlab code for Genetic Algorithm Optimization pindex(1) = optim_agc_adap(GA_best); ln = length(GA_best);


len = 6;niter = 395; factorf = 0.11; rndvec = zeros(1,length(GA_best)); for j = 1:niter in = GA_best; if mod(j,10)==0 tempkey = unique(randi(ln,1,randi(ln,1,1))); for k = tempkey,rndvec(k) = rand - 0.5;end if length(rndvec)<ln,rndvec(1,ln) = 0;end temp = GA_best'.*(1+factorf*rndvec'); elseif mod(j,4)==0 temp = (0.5*GA_best'+0.5*GA_2ndbest').*(1+factorf*(rand(ln,1)-0.5)); else temp = GA_best'.*(1+factorf*(rand(ln,1)-0.5)); end in = [in;temp']; %pindex(2) = optim_agc(abs(in(2,:))); pindex(2) = optim_agc_adap(abs(in(2,:))); [minPI numGAbest] = max(pindex); GA_best = in(numGAbest,:); pindex(1) = pindex(numGAbest); maxpindex = pindex(numGAbest); if numGAbest~=1,GA_2ndbest = in(1,:);end save GA_params GA_best GA_2ndbest end


Turn static files into dynamic content formats.

Create a flipbook
Issuu converts static files into: digital portfolios, online yearbooks, online catalogs, digital photo albums and more. Sign up and create your flipbook.