1. A discrete system is given as : A = [0 1 0; 0 0 1; -0.005 -0.11 -0.7] B = [0;
ID: 2083204 • Letter: 1
Question
1. A discrete system is given as :
A = [0 1 0; 0 0 1; -0.005 -0.11 -0.7]
B = [0;0;1], C= [0.5 1 0]; D = 0;
a) Can one design an observer for the system with the eigen values {-0.5, -0.1+0.1j, -0.1-0.1j} Why? Explain why the value -0.5 must be assigned?
b ) Designa an observer-based feedback controller for the system with the controller and observer eigen values selected as {-0.8, -0.3+0.3j, -0.3-0.3j}, and {-0.5, -0.1+0.1j, -0.1-0.1j} respectively.
c) Obtain a similar system with a second-order observable subsystem, for which an observer can be easily designed. Design an observer for the transformed system with two eigen values shifted as in (b), and check your design using the MATLAB command place or acker. Use the result to obtain the observer for the original system.
Explanation / Answer
%% MATLAB program for designing Observer feedback controller for the given system and with the eigen values {-0.5, -0.1+0.1j, -0.1-0.1j} %%
>> A=[0 1 0; 0 0 1; -0.005 -0.11 -0.7];
>> B=[0;0;1];
>> C=[0.5 1 0];
>> D=[0];
>> k=[-0.5 -0.1+0.1i -0.1-0.1i];
>> At=transpose(A);
>> Ct=transpose(C);
>> Ke=place(At,Ct,k)
Ke =
1.0040 -0.5020 0.2610
>> KeT=transpose(Ke)
KeT =
1.0040
-0.5020
0.2610
>> AA=A-KeT*C-B*k;
>> BB=KeT;
>> CC=k;
>> DD=0;
>> sys1=ss(AA,BB,CC,DD)
sys1 =
a =
x1 x2
x1 -0.502 -0.00404
x2 0.251 0.502
x3 0.364 -0.271-0.1i
x3
x1 0
x2 1
x3 -0.6+0.1i
b =
u1
x1 1.004
x2 -0.502
x3 0.261
c =
x1 x2 x3
y1 -0.5 -0.1+0.1i -0.1-0.1i
d =
u1
y1 0
%% MATLAB program for designing Observer feedback controller for the given system and with the eigen values {-0.8, -0.3+0.3j, -0.3-0.3j} %%
>> A = [0 1 0; 0 0 1; -0.005 -0.11 -0.7];
>> B = [0;0;1]; C= [0.5 1 0]; D = 0;
>> sys=ss(A,B,C,D);
>> K=[-0.8 -0.3+0.3i -0.3-0.3i];
>> Ke=acker(A',C',K)'
Ke =
1.0e+15 *
2.8102
-1.4051
0.7026
>> AA=A-Ke*C-B*K;
>> BB=Ke;
>> CC=K;
>> DD=0;
>> sys1=ss(AA,BB,CC,DD)
>> [num,den]=ss2tf(AA,BB,CC,DD)
num =
1.0e+15 *
Columns 1 through 2
0.0000 + 0.0000i -2.0374 - 0.6323i
Columns 3 through 4
0.4118 + 0.2080i -0.0785 + 0.3702i
den =
1.0e+14 *
Columns 1 through 2
0.0000 + 0.0000i 0.0000 - 0.0000i
>> s=tf('s')
s =
s
Continuous-time transfer function.
>> tf(num,den)
ans =
-(2.037e15+6.323e14i) s^2 + (4.118e14
+2.08e14i) s - (7.854e13
-3.702e14i)
----------------------------------------
s^3 + (0.4732-0.3i) s^2 - (4.968e14
+0.008074i) s + (4.968e13
+1.49e14i)
Related Questions
Navigate
Integrity-first tutoring: explanations and feedback only — we do not complete graded work. Learn more.