EE480.3 Digital Control Systems. Part 7. Controller Design I. - Pole Assignment Method - State Estimation

Similar documents
EE480.3 Digital Control Systems. Part 7. Controller Design I. - Pole Assignment Method

Control System Design

EE C128 / ME C134 Fall 2014 HW 6.2 Solutions. HW 6.2 Solutions

Homework 7 - Solutions

Time Response Analysis (Part II)

Review: transient and steady-state response; DC gain and the FVT Today s topic: system-modeling diagrams; prototype 2nd-order system

Control Systems Lab - SC4070 Control techniques

Systems Analysis and Control

Due Wednesday, February 6th EE/MFS 599 HW #5

6.1 Sketch the z-domain root locus and find the critical gain for the following systems K., the closed-loop characteristic equation is K + z 0.

Department of Electrical and Computer Engineering. EE461: Digital Control - Lab Manual

Transient response via gain adjustment. Consider a unity feedback system, where G(s) = 2. The closed loop transfer function is. s 2 + 2ζωs + ω 2 n

1 x(k +1)=(Φ LH) x(k) = T 1 x 2 (k) x1 (0) 1 T x 2(0) T x 1 (0) x 2 (0) x(1) = x(2) = x(3) =


Introduction to Feedback Control

Course roadmap. Step response for 2nd-order system. Step response for 2nd-order system

Outline. Classical Control. Lecture 5

Chapter 12. Feedback Control Characteristics of Feedback Systems

Outline. Classical Control. Lecture 1

LABORATORY INSTRUCTION MANUAL CONTROL SYSTEM II LAB EE 693

Methods for analysis and control of. Lecture 6: Introduction to digital control

Modelling and Control of Dynamic Systems. Stability of Linear Systems. Sven Laur University of Tartu

Chapter 5 HW Solution

AN INTRODUCTION TO THE CONTROL THEORY

Quanser NI-ELVIS Trainer (QNET) Series: QNET Experiment #02: DC Motor Position Control. DC Motor Control Trainer (DCMCT) Student Manual

Module 9: State Feedback Control Design Lecture Note 1

EE C128 / ME C134 Fall 2014 HW 8 - Solutions. HW 8 - Solutions

R10. IV B.Tech II Semester Regular Examinations, April/May DIGITAL CONTROL SYSTEMS JNTUK

Discrete Systems. Step response and pole locations. Mark Cannon. Hilary Term Lecture

Course Summary. The course cannot be summarized in one lecture.

EE451/551: Digital Control. Chapter 3: Modeling of Digital Control Systems

Chapter 6 Steady-State Analysis of Continuous-Time Systems

SAMPLE SOLUTION TO EXAM in MAS501 Control Systems 2 Autumn 2015

1. Z-transform: Initial value theorem for causal signal. = u(0) + u(1)z 1 + u(2)z 2 +

EE480.3 Digital Control Systems. Part 2. z-transform

Discrete-time models and control

Module 3F2: Systems and Control EXAMPLES PAPER 2 ROOT-LOCUS. Solutions

Chapter 3. State Feedback - Pole Placement. Motivation

Systems Analysis and Control

Digital Control: Summary # 7

Lecture 11. Frequency Response in Discrete Time Control Systems

Chapter 13 Digital Control

MODERN CONTROL DESIGN

Dynamic Response. Assoc. Prof. Enver Tatlicioglu. Department of Electrical & Electronics Engineering Izmir Institute of Technology.

4F3 - Predictive Control

APPLICATIONS FOR ROBOTICS

Control Systems Design

Chapter 6 State-Space Design

Digital Control: Part 2. ENGI 7825: Control Systems II Andrew Vardy

ME 375 Final Examination Thursday, May 7, 2015 SOLUTION

Chapter 7. Digital Control Systems

EL 625 Lecture 11. Frequency-domain analysis of discrete-time systems

DIGITAL CONTROL OF POWER CONVERTERS. 2 Digital controller design

Root Locus Design Example #3

GATE EE Topic wise Questions SIGNALS & SYSTEMS

INTRODUCTION TO DIGITAL CONTROL

Chapter 7: Time Domain Analysis

MASSACHUSETTS INSTITUTE OF TECHNOLOGY Department of Mechanical Engineering Dynamics and Control II Fall 2007

Analysis and Design of Control Systems in the Time Domain

Digital Control Systems State Feedback Control

100 (s + 10) (s + 100) e 0.5s. s 100 (s + 10) (s + 100). G(s) =

Problem Set 3: Solution Due on Mon. 7 th Oct. in class. Fall 2013

Implementation Issues for the Virtual Spring

16.31 Homework 2 Solution

Laboratory handouts, ME 340

Raktim Bhattacharya. . AERO 422: Active Controls for Aerospace Vehicles. Basic Feedback Analysis & Design

State Feedback Controller for Position Control of a Flexible Link

Homework Assignment 3

LTI system response. Daniele Carnevale. Dipartimento di Ing. Civile ed Ing. Informatica (DICII), University of Rome Tor Vergata

Automatique. A. Hably 1. Commande d un robot mobile. Automatique. A.Hably. Digital implementation

Dynamic Compensation using root locus method

Control of Manufacturing Processes

SAMPLE EXAMINATION PAPER (with numerical answers)

7.4 STEP BY STEP PROCEDURE TO DRAW THE ROOT LOCUS DIAGRAM

ECE317 : Feedback and Control

1 Steady State Error (30 pts)

Dynamic Behavior. Chapter 5

ROOT LOCUS. Consider the system. Root locus presents the poles of the closed-loop system when the gain K changes from 0 to. H(s) H ( s) = ( s)

CDS Final Exam

School of Mechanical Engineering Purdue University. DC Motor Position Control The block diagram for position control of the servo table is given by:

Discrete-time Controllers

EE C128 / ME C134 Fall 2014 HW 9 Solutions. HW 9 Solutions. 10(s + 3) s(s + 2)(s + 5) G(s) =

Transient Response of a Second-Order System

Chapter 15 - Solved Problems

Control Systems Design

Advanced Control Theory

Digital Control & Digital Filters. Lectures 13 & 14

Laboratory 11 Control Systems Laboratory ECE3557. State Feedback Controller for Position Control of a Flexible Joint

EE451/551: Digital Control. Final Exam Review Fall 2013

Topic # Feedback Control

NPTEL Online Course: Control Engineering

University of Alberta ENGM 541: Modeling and Simulation of Engineering Systems Laboratory #7. M.G. Lipsett & M. Mashkournia 2011

It is common to think and write in time domain. creating the mathematical description of the. Continuous systems- using Laplace or s-

Answers to multiple choice questions

Compensator Design to Improve Transient Performance Using Root Locus

DIGITAL CONTROLLER DESIGN

16.30 Estimation and Control of Aerospace Systems

Controls Problems for Qualifying Exam - Spring 2014

EE3CL4: Introduction to Linear Control Systems

C(s) R(s) 1 C(s) C(s) C(s) = s - T. Ts + 1 = 1 s - 1. s + (1 T) Taking the inverse Laplace transform of Equation (5 2), we obtain

Transcription:

EE480.3 Digital Control Systems Part 7. Controller Design I. - Pole Assignment Method - State Estimation Kunio Takaya Electrical and Computer Engineering University of Saskatchewan February 10, 2010 ** Go to full-screen mode now by hitting CTRL-L 1

Contents 1 CONTROL SYSTEM DESIGN 1. 3 2 Ackermann s Formula 20 3 Example of Ackermann s Pole Assignment Method 26 4 Observer Model 41 5 Errors in Estimation 47 2

1 CONTROL SYSTEM DESIGN 1. Pole Assignment Method Pole assignment method is a method to adjust the poles of a given system by adjusting the feeback gains from state variables. This method can be applied to such a system that is described by the state equations. 3

+ z -1 x 1 R + + Q + + z -1 z -1 x 2 x 3 c Y P state feed back K Discrete time state equation is x(k + 1) = Px(k) + qu(k) Since a linear combination of the state variables is fed back to the 4

differential node, the input u(k) is replaced by u(k) = r(k) Kx(k). Where, K = [K 1, K 2, K n ], a row vector, assuming the system is of nth order. x(k) is a column vector of size n. Substituing u(k) in the state equation yields, x(k + 1) = Px(k) + q[r(k) Kx(k)] = [P qk]x(k) + qr(k) Writing the z-transform of this equation, we have zx(z) = [P qk]x(z) + qr(z) [zi P + qk]x(z) = qr(z) x(z) = [zi P + qk] 1 qr(z) Therefore, the poles of the closed loop system with the state 5

feedback is found from det [zi P + qk] = 0. The solutions of this equation, z = λ 1, z = λ 2,, z = λ n are obtained from the expanded form of the determinant, i.e. characteristic equation, (z λ 1 )(z λ 2 ) (z λ n ) = 0. Pole assignment method determines the state feedback gain vector K for a given set of poles at z = λ 1, z = λ 2,, z = λ n. 6

z-plane poles of 2nd order systems Referring to the standard 2nd order transfer function, G 2 (s) = the poles of this system are located at ω 2 n s 2 + 2ζω n s + ωn 2, s = ζω n ± jω n 1 ζ2. This equation defines damping ratio ζ and damped natural frequency ω d as ζ = cos θ and ω d = ω n 1 ζ2. In the z-plane, poles are (see textbook p.216): z = e st = e ζω nt ±ω n T 1 ζ 2 = r ±θ 7

ζω n T = ln r from e ζω nt = r ω n T 1 ζ 2 = θ Thus, damping ratio natural freq. time const. ζ = ln r 1 ζ 2 θ ζ = ω n = 1 T ln r ln 2 r + θ 2 ln 2 r + θ 2 τ = 1 ζω n = T ln r 8

Pole Assignment for 2nd Order Systems Consider the second order case of x(k + 1) = [P qk]x(k) + qr(k). Let P = p 11, p 12 p 21, p 22 q = q 1 q 2 qk = K = [K 1, K 2 ] q 1 q 2 [K 1, K 2 ] 9

P qk = = q 1K 1, q 1 K 2 q 2 K 1, q 2 K 2 p 11 q 1 K 1, p 12 q 1 K 2 p 21 q 2 K 1, p 22 q 2 K 2 Therefore, the characteristic equation is obtained as det [zi P + qk] = det z, 0 0, z p 11 q 1 K 1, p 12 q 1 K 2 p 21 q 2 K 1, p 22 q 2 K 2 = fz (p 11 q 1 K 1 )gfz (p 22 q 2 K 2 )g (p 12 q 1 K 2 )(p 21 q 2 K 1 ) = z 2 (p 11 q 1 K 1 + p 22 q 2 K 2 )z = 0 +(q 2 p 12 q 1 p 22 )K 1 + (q 1 p 21 q 2 p 11 )K 2 + (p 11 p 22 p 12 p 21 ) 10

The characteristic equation of the 2nd order system takes either of two real roots complex roots (z γ 1 )(z γ 2 ) = z 2 (γ 1 + γ 2 )z + γ 1 γ 2 = 0 (z α jβ)(z α + jβ) = z 2 + 2αz + α 2 + β 2 = 0 Equating the characteristic equation of unknown K and that defined by two desired poles, we have a set of simultaneous equations. For the case of real roots, p 11 q 1 K 1 + p 22 q 2 K 2 = γ 1 + γ 2 (q 2 p 12 q 1 p 22 )K 1 + (q 1 p 21 q 2 p 11 )K 2 + (p 11 p 22 p 12 p 21 ) = γ 1 γ 2 11

q 1 K 1 + q 2 K 2 = (γ 1 + γ 2 ) + p 11 + p 22 (q 2 p 12 q 1 p 22 )K 1 + (q 1 p 21 q 2 p 11 )K 2 = γ 1 γ 2 (p 11 p 22 p 12 p 21 ) q 1 q 2 q 2 p 12 q 1 p 22 (q 1 p 21 q 2 p 11 ) K 1 K 2 = 2(γ 1 + γ 2 ) + p 11 + p 22 γ 1 γ 2 (p 11 p 22 p 12 p 21 ) 12

For the case of complex poles, p 11 q 1 K 1 + p 22 q 2 K 2 = 2α (q 2 p 12 q 1 p 22 )K 1 + (q 1 p 21 q 2 p 11 )K 2 + (p 11 p 22 p 12 p 21 ) = α 2 + β 2 q 1 q 2 K 1 q 2 p 12 q 1 p 22 (q 1 p 21 q 2 p 11 ) K 2 = 2α + p 11 + p 22 α 2 + β 2 (p 11 p 22 p 12 p 21 ) 13

Example 9.1 textbook p.338 1 The continuous time transfer function, G(s) = s(s + 1) described by the continuous time state equation, ẋ(t) = 0 1 x(t) + 0 u(t) 0 1 1 y(t) = [1, 0]x(t) can be The discrete time model sampled at T = 0.1 is obtained as x(k + 1) = Px(k) + qu(k) 14

= 1 0.0952 0 0.905 x(k) + 0.00484 0.0952 u(k) y(k) = [1, 0]x(k). The state feedback equation is u(k) = K 1 x 1 (k) K 2 x 2 (k). x(k + 1) = Px(k) + qu(k) = 1 0.0952 x(k) 0.00484 0 0.905 0.0952 = 1 0.00484K 1 0.0952 0.00484K 2 0.0952K 1 0.905 0.0952K 2 [K 1 x 1 (k) + K 2 x 2 (k)] x(k). 15

The characteristic equation jzi A c j = 0 becomes, z 2 +(0.00480K 1 +0.0952K 2 1.905)z+0.00468K 1 0.0952K 2 +0.905 = 0 When the desired characteristic equation is, α c (z) = (z λ 1 )(z λ 2 ) = z 2 (λ 1 + λ 2 )z + λ 1 λ 2 = 0 K 1 = 105[λ 1 λ 2 (λ 1 + λ 2 ) + 1.0] K 2 = 14.67 5.34λ 1 λ 2 5.17(λ 1 + λ 2 ) 16

The unity gain feedback K = [K 1, K 2 ] = [1, 0] has its characteristic equation, z 2 1.9z + 0.91 = 0. The roots are z = 0.964 ±0.091 = r ±θ. ζ = ln r ln 2 r + θ 2 = 0.46 1 τ = = T ζω n ln r = 2.12sec. ω n = 1 ln 2 r + θ T 2 17

The unity gain feedback gives satisfactory ζ but the time constant 2.12 sec. is too large. Try to reduce the time constant to 1 sec. ln r = T τ = 0.1/1 = 0.1 = r = 0.905 θ 2 = ln2 r ζ 2 ln 2 r = (0.193) 2 From the characteristic equation, the desired poles are at z = r ±θ. Thus, (z 0.888 j0.173)(z 0.888 + j0.173) = z 2 1.776z + 0.819 = 0. This yields the pole assignment solution, [K 1, K 2 ] = [4.52, 1.12] The initial-condition response with x 1 (0) = 1.0 and x 2 (0) = 0.0 is shown below. 18

19

2 Ackermann s Formula Since it is difficult to extend the approach demonstrated in the second order case to a higher order system, the pole assignment must rely on a more practical procedure called Ackermann s formula. When we know the desired poles, z = λ 1, z = λ 2, z = λ n for a n-th order system, write the characteristic equation, α c (z) = (z λ 1 )(z λ 2 ) (z λ n ) = z n + α n 1 z n 1 + α n 2 z n 2 α 1 z + α 0 = 0 Since the charcteristic equation of state feedback systems is det [zi P + qk] = 0, det [zi P + qk] = α c (z). 20

In order to solve for the unknown gain vector K, form a matrix, α c (P) = P n + α n 1 P n 1 + α n 2 P n 2 α 1 P + α 0 I. Then, Ackermann s formula for the gain matrix K is given by K = [0, 0, 0,, 1][q, Pq P n 2 q, P n 1 q] 1 α }{{}}{{} c (P). }{{} n n n n n As defined earlier, K is a row vector of n elements. 21

Example 1 The continuous time transfer function, G(s) = s(s + 1) described by the continuous time state equation, ẋ(t) = 0 1 x(t) + 0 u(t) 0 1 1 y(t) = [1, 0]x(t) can be The discrete time model sampled at T = 0.1 is obtained as x(k + 1) = Px(k) + qu(k) = 1 0.0952 x(kt) + 0 0.905 y(k) = [1, 0]x(k). 0.00484 0.0952 u(k) 22

The desired poles are z = 0.8880 ± j0.1745. This determines α c (z) = (z 0.8880+j0.1745)(z 0.8880 j0.1745) = z 2 1.776z+0.819 Hence, α c (P) = 2 1 0.0952 1.776 0 0.905 0.043 0.01228 = 0 0.03075 1 0.0952 0 0.905 + 0.819 1 0 0 1 Also, Pq = 1 0.0952 0 0.905 0.00484 0.0952 = 0.0139 0.0862 23

Thus, [q, Pq] 1 = = 0.00484 0.0139 0.0952 0.0862 95.13 15.34 105.1 5.342 1 Then, the gain vector is given as 95.13 15.34 K = [0, 1] 105.1 5.342 0.043 0.01228 0 0.03075 = [4.52, 1.12] 24

MATLAB Solution This matrix calculations can be done with MATLAB by the following script. % % Ackermann s formula example % order=2; P=[1 0.0952 0 0.905]; q=[0.00484 0.0952]; alphac=[1-1.776 0.819]; disp( Desired roots in z-plane are: ) disp( ) roots(alphac) AMB=q; AMBT=q; for n=2:order AMBT=P*AMBT; 25

for nn=1:order AMB(nn,n)=AMBT(nn,1); end end AMBI=inv(AMB); CC=polyvalm(alphac,P); CCC=AMBI*CC; disp( The gain matrix K is: ) disp( ) K=CCC(order,:) ------------------------------ Desired roots in z-plane are: ans = 0.8880 + 0.1745i 0.8880-0.1745i The gain matrix K is: K = 4.5155 1.1255 26

3 Example of Ackermann s Pole Assignment Method There is a DC servo motor system G(s) = 1 s(s 2 + s + 1). This DC servo motor is subjected to digital control perhaps by some kind of digital compensator. --> sampler --> ZOH --> 1/(s(s^2+s+1)) --> sampler --> Problem here is to tune up the DC servo motor to become critical damping by state feedback. So, we attempt to move the two poles located at s = 0.5000 ± j0.8660 to a location on the real axis. Since 1 i.e. a pole at the origin of s-plance is integration to change s angular velocity to angular position (rotational angle), do not attempt to move this pole. The pole at s = 0 corresponds to z = 1 27

in z-plane. The following MATLAB program uses Ackermann s method to move the poles of this system to an assigned location. This program has four preassigned pole locations: 1. Case (1) [1, 0.97+j*0.05, 0.97-j*0.05] under damped 2. Case (2) [1, 0.98+j*0.05, 0.98-j*0.05] under damped 3. Case (3) [1, 0.97, 0.97] critical damping 4. Case (4) [1, 0.95, 0.95] critical damping Pay attention to the gain (final position) for a pulse input that drive the motor to turn for a limited time duration. If the real part of the two poles are moved away from z = 1, more damping slows the motor and the number of turns (rotational angle) gets less. 28

1.5 Open loop response to pulse 1 0.5 0 0 5 10 15 20 25 Response without state feedback 29

1.4 State Feedback by Pole Assignment 1.2 1 0.8 0.6 0.4 0.2 0 0 5 10 15 20 25 Response for Case 1 30

1.4 State Feedback by Pole Assignment 1.2 1 0.8 0.6 0.4 0.2 0 0 5 10 15 20 25 Response for Case 2 31

3.5 State Feedback by Pole Assignment 3 2.5 2 1.5 1 0.5 0 0 5 10 15 20 25 Response for Case 3 32

1.4 State Feedback by Pole Assignment 1.2 1 0.8 0.6 0.4 0.2 0 0 5 10 15 20 25 Response for Case 4 33

%----------------------------------------------------------- % Example of Ackerman s State Feedback, Pole Assignment Method % K. Takaya, 2004 %----------------------------------------------------------- % find the state space model of a transfer function in continuous time domain % --> sampler --> ZOH --> 1/(s(s^2+s+1)) --> sampler --> % This system is a DC motor that has two poles. % 1/s means that output is in rotational angle. % Do not attempt to move the pole at s=0 (or z=1 in z-plane) % just model analog part only: 1/(s(s^2+s+1)) numa=[1] dena=[1, 1, 1, 0] [A, b, c, d]=tf2ss(numa,dena) T=0.05; % calculate discrete time (digital) state equation [P, q]=c2d(a, b, T) % find poles of this system disp( Poles of the discrete time model ); poles=eig(p) % simulate system response with a pulse input N=500; pulse=zeros(1,n); pulse(n/20+1:n/20+n/20)=ones(1,n/20); 34

timebase=[0: T: (N-1)*T]; % use dlsim for simulation [y,x]=dlsim(p, q, c, d, pulse); % plot input and output figure(1); plot(timebase, pulse, timebase, y); title( Open loop response to pulse ); %verify the final DC level stf=tf(numa,dena) dft=c2d(stf,t, zoh ) [zz,pp,kk]=zpkdata(dft, v ) %Response to 25 impulses (to make a rectangular pulse) disp( ****DC level at the steady state is: ); Gdc=25*kk*sum(poly(zz))/sum(poly(pp(2:3))) %----------------------------------------------------------- % apply Ackermann s pole assignment method to do state feedback %----------------------------------------------------------- cs=input( Enter case number 1 or 2 or 3 or 4 =, s ); switch cs case 1 newpoles=[1, 0.97+j*0.05, 0.97-j*0.05] case 2 35

newpoles=[1, 0.98+j*0.05, 0.98-j*0.05] case 3 newpoles=[1, 0.97, 0.97] case 4 newpoles=[1, 0.95, 0.95] end alphac=poly(newpoles) K=ackermann(P, q, alphac) % state feedback compensated matix of Pc Pc=P-q*K disp( new poles by state feed back K ); newpoles=eig(pc) % use dlsim for simulation of compensated system [y1,x1]=dlsim(pc, q, c, d, pulse); % plot input and output figure(2); plot(timebase, pulse, timebase, y1); title( State feedback system by pole assignment ); %plot(timebase, y1); title( State Feedback by Pole Assignment ); % Convert discrete time system back to transfer function to find DC gain [num1, den1] = ss2tf(pc, q, c, d, 1) 36

% check DC gain %++++ Write your code to calculate the steady state DC level %++++ of the pole assigned feedback system with K % check if poles are the same disp( check if poles of the transfer ftn are the same ); check_poles=roots(den1) 37

Subroutine for Ackermann s method is given below. function K=ackermann(A, B, alphac) % Ackermann s formula discrete time version %order=2; %A=[1, 0.095; 0, 0.905]; %B=[0.00484; 0.0952]; %alphac=[1, -1.776, 0.819]; order=size(a,1); AMB=B; AMBT=B; for n=2:order AMBT=A*AMBT; for nn=1:order AMB(nn,n)=AMBT(nn,1); end end AMBI=inv(AMB); CC=polyvalm(alphac,A); CCC=AMBI*CC; %disp( The gain matrix K is: ) %disp( ) K=CCC(order,:); 38

Assignment No. 6 1. Design a state feedback control system that makes the following 3rd order underdamped system to be critically damped by the pole assignment method. (this system is similar to Figure 9-1 in page 338 in textbook, but 3rd order instead of 2nd order) --> sampler --> ZOH --> 1/(s(s^2+s+1)) --> sampler --> First convert this given transfer function to a state equation by tf2ss in analog domain, then use c2d to convert the obtained continuous time state equation into a discrete time state equation. Then, apply Ackermann s design formula. Use T=0.05 second. MATLAB program for this problem is provided by the name PoleAssignment2008.m The specific assignment is, therefore, to run this program and interpret the 39

results. In particular, calculate the steady state DC value for the rectangular pulse of 25 ones for each case of the 4 state feedback systems resulted from the pole assignment method. 2. Do Problem 9-11 in page 378. Try both manual calculations and MATLAB solution. 40

STATE ESTIMATION The state feedback by the pole assignment method designs an effective controller to satisfy the desired transient characteristics related to the pole locations. This method, however, requires that all the state variables are measurable and available for feedback. Since not all state variables are necessarily available, we need to use an observer that estimates (or predicts) the state variables. The technique to design the prediction observer also uses Ackermann s formula. The prediction observer leads to a controller that implements the pole assignment together with the state estimation. 41

4 Observer Model Our plant is described by x(k + 1) = Ax(k) + Bu(k) y(k) = Cx(k) Using the z-transform zx(z) = AX(z) + BU(z) X(z) = (zi A) 1 BU(z) 42

The observer is a system to observe (estimate) the state x(k + 1) from input u(k) and output y(k). Thus, the equation of the observer is q(k + 1) = Fq(k) + Gy(k) + Hu(k) Q(z) = (zi F) 1 [GY(z) + HU(z)] From Y(z) = CX(z), X(z) = (zi A) 1 BU(z) Q(z) = (zi F) 1 [GY(z) + HU(z)] 43

Q(z) = (zi F) 1 [GCX(z) + HU(z)] Q(z) = (zi F) 1 [GC(zI A) 1 B + H]U(z) The state estimation is to make Q(z) = X(z) for the same input U(z). Thus, Q(z) = X(z) = (zi A) 1 BU(z) (zi A) 1 B = (zi F) 1 [GC(zI A) 1 B + H] 44

(zi A) 1 B = (zi F) 1 [GC(zI A) 1 B + H] (zi A) 1 B = (zi F) 1 GC(zI A) 1 B + (zi F) 1 H [I (zi F) 1 GC](zI A) 1 B = (zi F) 1 H (zi F) 1 [zi (F + GC](zI A) 1 B = (zi F) 1 H [zi (F + GC](zI A) 1 B = H (zi A) 1 B = [zi (F + GC)] 1 H If we choose the input matrix of the plant B equal to that of the estimator, H, then A = F + GC The observer state equation is rewritten as q(k + 1) = Fq(k) + Gy(k) + Hu(k) 45

q(k + 1) = (A GC)q(k) + Gy(k) + Bu(k) This is the equation of a prediction observer. q(k + 1) is the predicted estimate of x(k). The prediction observer must satisfy the characteristic equation, jzi A + GCj = 0 46

5 Errors in Estimation The error in the state estimation process is e(k) = x(k) q(k) e(k + 1) = x(k + 1) q(k + 1) = Ax(k) + Bu(k) [(A GC)q(k) + Gy(k) + Hu(k)] = Ax(k) + Bu(k) [(A GC)q(k) + GCx(k) + Bu(k)] = (A GC)[x(k) q(k)] = (A GC)e(k) Thus, the error dynamics have the same chracteristic equation as that of the observer, jzi (A GC)j = 0 47

All the matrices in the observer state equation except G are from the plant state equation. G can be independently determined from the characteristic equation of the error dynamics, α e (z) = jzi (A GC)j = 0 The characteristic polynomial is written as α e (z) = z n + α n 1 z n 1 + α n 2 z N 2 + + α 1 z + α 0 = 0 48

Since the charcteristic equation of state feedback systems is det [zi P + qk] = 0, det [zi P + qk] = α c (z). In order to solve for the unknown gain vector K, form a matrix, α c (P) = P n + α n 1 P n 1 + α n 2 P n 2 α 1 P + α 0 I. Then, Ackermann s formula for the gain matrix K is given by K = [0, 0, 0,, 1][q, Pq P n 2 q, P n 1 q] 1 α }{{}}{{} c (P). }{{} n n n n n As defined earlier, K is a row vector of n elements. 49

Similarly, for the case of observer, det [zi A + GC] = 0, det [zi A + GC] = α e (z). The unknown vector (matrix) G can be obtained by Ackerman s formula, C 0 CA 0 G = α e (A) }{{} n n.. } CA n 1 {{ 1 }}{{} n n n 1 50

Poles of α e (z) An approach usually suggested for choosing α e (z) is to make the observer two to four times faster than the closed loop control system designed by the pole assignment due to α c (z) = 0. The fastest time constant of the closed-loop system, determined from the system characteristic equation, det [zi P + qk] = 0, is calculated first. The time constants of the observer are then set at a value equal to from one-forth to one-half this fastest time constant. 51

q(k + 1) = Fq(k) + Gy(k) + Hu(k) q(k + 1) = (A GC)q(k) + Gy(k) + Bu(k) q(k + 1) = Aq(k) + G[y(k) Cq(k)] + Bu(k) 52

53

54

55

56

Example 1 The continuous time transfer function, G(s) = s(s + 1) described by the continuous time state equation, ẋ(t) = 0 1 x(t) + 0 u(t) 0 1 1 y(t) = [1, 0]x(t) can be The discrete time model sampled at T = 0.1 is obtained as x(k + 1) = Px(k) + qu(k) = 1 0.0952 x(kt) + 0 0.905 y(k) = [1, 0]x(k). 0.00484 0.0952 u(k) 57

Observer Model 58