q.m
来自「一个控制系统的PID参数寻优的单纯形法的MATLAB的程序」· M 代码 · 共 26 行
M
26 行
function [q]=Q(a,b,c,d)
S1=a;Ti1=b;
S2=c;Ti2=d; %取值
G1=tf([1],[225 30 1]);
G2=tf([Ti2 1],[S2*Ti2 0]);
G3=G1*G2;
sys1=feedback(G3,1);
G4=tf([1],[900 60 1]);
G5=tf([Ti1 1],[S1*Ti1 0]);
G6=G5*sys1*G4;
sys=feedback(G6,1); %计算传递函数
[y,t]=step(sys); %系统的阶跃响应
[sigma,e,tr]=ste(y,t); %调用ste函数求系统的Mp,tr等
cs=length(t);
T=t(2)-t(1);
ISTE=0;
i=1;
for i=1:cs
ISTE=ISTE+i*T*T*e(i)*e(i);
end
Mp1=sigma;
[y,t]=step(sys1);
[sigma]=ste(y,t);
Mp2=sigma;
q=ISTE+5*tr+60*(abs(Mp1)+abs(Mp2)); %计算Q值
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?