⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 tfparse.m

📁 基于MATLAB系统辨识工具箱的离线辨识程序
💻 M
字号:
function []=TFparse(sys)
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%时域特性分析(开、闭环系统)
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
figure, step(sys,1)
[y,t]=step(sys);
fprintf('稳态误差:\n');
es=1-y;
l=length(es);
ess=abs(es(l))
[mp,tf]=max(y);
cs=length(t);
yss=y(cs);
fprintf('超调量(1/100):\n');
sigma=100*(mp-yss)/yss
fprintf('峰值时间(s):\n');
tp=t(tf)
i=cs+1;
n=0;
while n==0,
    i=i-1;
    if i==1,
        n=1;
    elseif y(i)>1.05*yss,
        n=1;
    end
end
t1=t(i);
j=cs+1;
n=0;
while n==0,
    j=j-1;
    if j==1,
        n=1;
    elseif y(j)<0.95*yss,
        n=1;
    end
end
t2=t(j);
if t2<tp
    if t1>t2
        fprintf('调节时间(s):\n');
        ts=t1
    end
elseif t2>tp
    if t2<t1
        fprintf('调节时间(s):\n');
        ts=t2
    else
        fprintf('调节时间(s):\n');
        ts=t1
    end
end
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%频域特性分析(开、闭环系统)
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
disp('按任一键分析传函的频域特性!')
pause
[mag,phase,w]=bode(sys);
figure, margin(mag,phase,w)
l=length(mag(1,1,:));
for k=1:l
    if 20*log10(mag(1,1,1))-20*log10(mag(1,1,k))>3
       fprintf('频带上限(Hz):\n');
       wb=w(k)/(2*pi)
       break;
    end
end
[gm,pm,wg,wc]=margin(mag,phase,w);
fprintf('剪切频率(Hz):\n');
wc=wc/(2*pi)
fprintf('-pi穿越频率(Hz):\n');
wg=wg/(2*pi)
fprintf('相角稳定裕度(度):\n');
pm
fprintf('幅值稳定裕度(dB):\n');
Lh=20*log10(gm)
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%根轨迹,零极点分析(开环系统)
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
disp('按任一键分析传函的根轨迹!')
pause
figure,pzmap(sys)                       %绘制零极点图
[p,z]=pzmap(sys)
figure,rlocus(sys)                      %绘制根轨迹
%[k,p]=rlocfind(sys)                     %求根迹上的增益和极点

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -