pid_tf2.m

来自「内模控制器(IMC)工具箱。包括参数整定、PID控制器参数转换等」· M 代码 · 共 26 行

M
26
字号
function [numC,denC]=pid_tf2(y,numPs,denPs,numT,denT,numPinvs,denPinvs,denFs,denFs2,Tcanc,E,mq,order)
%[numC,denC]=pid_tf2(y,numPs,denPs,numT,denT,numPinvs,denPinvs,denFs,denFs2,Tcanc,E,m,q,inf)
%This function compute PID equivalent transfer function, q/(1-p*q*qd).
%(The resulting numC, denC will be used to compute PID prarmeter later)

% Qd part
[qd,qdnum,qdden]=qd_mat(Tcanc(2,:),mq,E(2),order,y);
[numPQ,denPQ]=combind(numPs,denPs,denPinvs,numPinvs);

% Form final PQ including deadtime

numPQ=conv(numPQ,numT);
denPQ=conv(denPQ,denT);

% q/(1-p*q*qd)

numC=conv(conv(denPinvs,denPQ),qdnum);

temp=conv(denPQ,qdden);
denC=conv(numPinvs,polyadd(conv(temp,denFs2),-conv(numPQ,qdnum)));

denPQ=conv(denPQ,denFs2);

% Cancel the roots of numC and denC
[numC,denC]=z_p_cancel(numC,denC,1);

⌨️ 快捷键说明

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