E N D
Pole Placement A majority of the design techniques in modern control theory is based on the state-feedback configuration. That is, instead of using controllers with fixed configurations in the forward or feedback path, control is achieved by feeding back the state variables through real constant gains.
Definition of Pole Placement • (Pole Assignment, Pole Allocation) Placing the poles or eigenvalues of the closed-loop system at specified locations. • Poles can be arbitrarily placed if and only if the system is controllable. • Pole placement is easier if the system is given in controllable form.
State Feedback State Feedback: involves the use of the state vector to compute the control action for specified system dynamics.
State Feedback X(k+1)=Ax(k)+Bu(k) Y(k)=C x(k) U(k)=-K x(k)+v(k) X(k+1)=[A-BK]x(k)+B v(k) Let Ad= A-BK The closed-loop system state space: X(k+1)= Ad x(k)+B v(k) Y(k)=C x(k)
Output Feedback Output Feedback
Output Feedback U(k)=-K y(k)+v(k)= -K C x(k)+ v(k) X(k+1)=[A-BKC]x(k)+B v(k)
Pole Placement Theorem 9.1:State Feedback. If the pair (A,B) is controllable, then there exists a feedback gain matrix Kthat arbitrarily assigns the system poles to any set [λii=1,….n]. Furthermore, if the pair (A,B) is stabilizable, then the controllable modes can all be arbitrarily assigned.
Example 9.1 Assign the eigenvalues [0.3±j0.21] to the pair (λ-0.3-j0.2)(λ-0.3+j0.2)=λ2-0.6λ+0.13 The closed loop matrix is The closed loop characteristic polynomial is Det{λI-(A-)}=λ2-(4-)λ-(3-) 4-=0.6 → =3.4 3-=0.13 → = 3.13
MATLAB >> A = [0, 1; 3, 4]; >>B = [0; 1]; >> poles= [0.3 + j*.2, 0.3 – j*0.2]; >> K = place(A, B, poles) K = 3.1300 3.4000
Pole Placement by Transformation to Controllable Form Any controllable single-input-single-output (SISO) system can be transformed into controllable form using the transformation
Procedure 9.2 1. Obtain the characteristic polynomial of the pair (A, B) using the Leverrier algorithm described in Section 7.4.1. 2. Obtain the transformation matrix using the coefficients of the polynomial from step 1. 3. Obtain the desired characteristic polynomial coefficients from the given eigenvalues using (9.10). 4. Compute the state feedback matrix using (9.15).
Servo Problem The schemes shown in Figures 9.1 and 9.2 are regulators that drive the system state to zero starting from any initial condition capable of rejecting impulse disturbances. In practice, it is often necessary to track a constant reference input r with zero steady-state error.
Servo Problem The reference input of (9.2) becomes v(k) = F r(k), and the control law is chosen as with r(k) the reference input to be tracked. The corresponding closed-loop system equations are
where the closed-loop state matrix is The z-transform of the corresponding output is given by The steady-state tracking error for a unit step input is given by
Servo Problem For zero steady-state error, we require the condition If the system is square (m = l) and Aclis stable (no unity eigenvalues), we solve for the reference gain
Example 9.5 Design a state–space controller for the discretized state–space model of the DC motor speed control system described in Example 6.8 (with T = 0.02) to obtain (1) zero steady-state error due to a unit step, (2) a damping ratio of 0.7, and (3) a settling time of about 1 s.
Solution The discretized transfer function of the system with digital-to-analog converter (DAC) and analog-to-digital converter (ADC) is The corresponding state–space model, computed with MATLAB, is
Solution The desired eigenvalues of the closed-loop system are selected as {0.9 ± j0.09} (see Example 6.8). This yields the feedback gain vector and the closed-loop state matrix
Solution The feedforward gain is The response of the system to a step reference input r is shown in Figure 9.8. The system has a settling time of about 0.84 s and percentage overshoot of about 4% with a peak time of about 1 s. All design specifications are met.
Integral Control The control law (9.21) is equivalent to a feedforward action determined by Fto yield zero steady-state error for a constant reference input r. Because the forward action does not include any form of feedback, this approach is not robust to modeling uncertainties. Thus, modeling errors (which always occur in practice) will result in nonzero steady-state error. To eliminate such errors, we introduce the integral control shown in Figure 9.9, with a new state added for each control error integrated.
Integral Control The eigenvalues of the closed-loop system state matrix can be arbitrarily assigned by computing the gain matrix K using any of the procedures for the regulator problem as described in Sections 9.1 and 9.2.
Example 9.6 Solve the design problem presented in Example 9.5 using integral control.
Solution The state–space matrices of the system are In Example 9.5, the eigenvalues were selected as {0.9 ± j0.09}. Using integral control increases the order of the system by one, and an additional eigenvalue must be selected. The desired eigenvalues are selected as {0.9 ± j0.09, 0.2}, and the additional eigenvalue at 0.2 is chosen for its negligible effect on the overall dynamics. This yields the feedback gain vector
Solution The response of the system to a unit step reference signal r is shown in Figure 9.10. The figure shows that the control specifications are satisfied. The settling time of 0.87 is well below the specified value of 1 s, and the percentage overshoot is about 4.2%, which is less than the value corresponding to ζ = 0.7 for the dominant pair.
State Estimation In most applications, measuring the entire state vector is impossible or prohibitively expensive. To implement state feedback control, an estimate xˆ (k) of the state vector can be used. The state vector can be estimated from the input and output measurements by using a state estimator or observer.
Estimators In the previous section, we have designed a state feedback controller, assuming that all states are measured. We also know, however, that not all states can be measured, for a detailed discussion on this topic. Does this mean that the state feedback controllers cannot be implemented? The answer is that we can obtain a reasonably equivalent state feedback controller through estimated state measurements. A state estimator, or simply an estimator, is a mathematical construct that helps estimate the states of a system.
Full-Order Observer To estimate all the states of the system, one could in theory use a system with the same state equation as the plant to be observed. In other words, one could use the open-loop system xˆ (k +1) = Axˆ (k) + Bu(k) However, this open-loop estimator assumes perfect knowledge of the system dynamics and lacks the feedback needed to correct the errors that are inevitable in any implementation. The limitations of this observer become obvious on examining its error dynamics. We obtain the error dynamics by subtracting the open-loop observer dynamics from the system dynamics (9.1). Where
Full-Order Observer The error dynamics are determined by the state matrix of the system and cannot be chosen arbitrarily. For an unstable system, the observer will be unstable and cannot track the state of the system. A practical alternative is to feed back the difference between the measured and the estimated output of the system, as shown in Figure 9.12. This yields to the following observer:
Full-Order Observer Subtracting the observer state equation from the system dynamics yields the estimation error dynamics The error dynamics are governed by the eigenvalues of the observer matrix . We transpose the matrix to obtain
Full-Order Observer Theorem 9.2: State Estimation. If the pair (A, C) is observable, then there exists a feedback gain matrix L that arbitrarily assigns the observer poles to any set {li, i = 1, . . . , n}. Furthermore, if the pair (A, C) is detectable, then the observable modes can all be arbitrarily assigned.
Example 9.8 Determine the observer gain matrix L for the discretized state–space model of the armature controlled DC motor described in Example 7.15 with the observer eigenvalues selected as {0.1, 0.2 ± j0.2}.
Solution Recall that the system matrices are
HW 7 9.7 9.11 9.15