PID的MATLAB程序

2020-11-27 11:06

一个完整的PID程序,希望对大家有帮助

%PID Controler 不完全微分

clear all;

close all;

ts=20;

sys=tf([1.1],[160,1],'inputdelay',100);

dsys=c2d(sys,ts,'zoh');

[num,den]=tfdata(dsys,'v');

u_1=0;u_2=0;u_3=0;u_4=0;u_5=0;

ud_1=0;

y_1=0;y_2=0;y_3=0;

error_1=0;

ei=0;

for k=1:1:100

time(k)=k*ts;

rin(k)=1.0;

%Linear model

yout(k)=-den(2)*y_1+num(2)*u_5;

D(k)=0.01*rands(1);

yout(k)=yout(k)+D(k);

error(k)=rin(k)-yout(k);

%PID Controller with partly differential

ei=ei+error(k)*ts;

kc=0.30;

ki=0.0055;

TD=140;

kd=kc*TD/ts;

Tf=180;

Q=tf([1],[Tf,1]); %Low Freq Signal Filter

M=1; %M=1不完全微分,

%M=2普通Pid控制!!

if M==1

%Using PID with Partial differential

alfa=Tf/(ts+Tf);

ud(k)=kd*(1-alfa)*(error(k)-error_1)+alfa*ud_1; u(k)=kc*error(k)+ud(k)+ki*ei;

ud_1=ud(k);


PID的MATLAB程序.doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:图纸更改使用审核管理制度

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: