clear
clc
A = [0.020244 0.0061 -0.12169 -0.1502;-2.5373e-4 -0.001 0 0.90484;0 0 0 1;7.9472e-11 0.002 0 -0.0031];
B = [0 1.22;-0.14325 0;0 0;-4.13206 0];
C = [1 0 0 0;0 1 0 0;0 0 1 0;0.02049 5.0339 0 -0.55959;0 0 0 1;0 -1 0 1];
D = [0 0;0 0;0 0;-0.8416 0;0 0;0 0];
damp(A)
iu = 1;%输入量选择
sys = ss(A,B,C,D);
[num,den] = ss2tf(A,B,C,D,iu);
tf = tf(num(1,:),den);%显示传递函数
sys1 = tf2zp(num,den);
%rlocus(num(1,:),den);%空速
%rlocus(num(2,:),den);%迎角
%rlocus(num(3,:),den);%俯仰角
%rlocus(num(4,:),den);%法向过载
%rlocus(num(5,:),den);%俯仰速率
%rlocus(num(6,:),den);%航迹俯仰角
[tezhengen] = eig(A) %求系统特征根
%
w = abs(imag(tezhengen(2)))%角频率
T = 2*pi/w%周期
syms ksi wn %阻尼比 无阻尼自然频率
%[ksi,wn] = solve('ksi*wn=abs(real(tezhengen(1,1)))','wn*sqrt(1-ksi^2)=w');
[ksi,wn] = solve('ksi*wn=0.0413','wn*sqrt(1-ksi^2)=0');
ksi = vpa(ksi,4)%控制精度
wn = vpa(wn,4)
syms ksi wn; %阻尼比 无阻尼自然频率
%[ksi,wn] = solve('ksi*wn=0.01','wn*sqrt(1-ksi^2)=0.014');
%ksi = vpa(ksi,4)%控制精度
%wn = vpa(wn,4)
%期望闭环极点
lambda1 = -0.9+0.9i;
lambda2 = -0.9-0.9i;
lambda3 = -0.01+0.014i;
lambda4 = -0.01-0.014i;
P = [lambda1 lambda2 lambda3 lambda4];
K = place(A,B,P)
K1 = K(1,:);
K2 = K(2,:);
%极点检测
[x0,lambda] = eig(A-B*K);
iu = 1;%输入量选择
%[num,den] = ss2tf(A-B*K,B,C,D,iu)
%rlocus(num(1,:),den);%空速
%rlocus(num(2,:),den);%迎角
%rlocus(num(3,:),den);%俯仰角
%rlocus(num(4,:),den);%法向过载
%rlocus(num(5,:),den);%俯仰速率
%rlocus(num(6,:),den);%航迹俯仰角
%系统状态验证
%阶跃输入
% sys = ss(A-B*K,B,C,D);%增稳后状态空间方程
% sys1 = ss(A,B,C,D);%原系统
% figure(1)
% step(sys,100,'r');
% hold on
% step(sys1,100,'b');
% grid on
% %脉冲输入
% figure(2)
% impulse(sys,10,'r');
% hold on
% grid on
% impulse(sys1,10,'b');