老上海七大歌后:急急急不可耐!!!!有人知道怎么在MATLAB上使用差分方程

来源:百度文库 编辑:中科新闻网 时间:2024/05/04 14:55:54

sys1=tf([1],[0.4,1],\'inputdelay\',0.76);
dsys1=c2d(sys1,ts,\'zoh\');
[num1,den1]=tfdata(dsys1,\'v\');

sys1=tf([1],[0.4,1],\'inputdelay\',0.76);
%系统传递函数
dsys1=c2d(sys1,ts,\'zoh\');
转化成dz函数
[num1,den1]=tfdata(dsys1,\'v\');
获得z传函的分子和分母

%Ideal closed loop
期望鼻环传递函数
sys2=tf([1],[0.15,1],\'inputdelay\',0.76);
系统传递函数
dsys2=c2d(sys2,ts,\'zoh\');
转化成d(z)函数

%Design Dalin controller
设计大林控制器
dsys=1/dsys1*dsys2/(1-dsys2);
dz=就是d(z)的公式
[num,den]=tfdata(dsys,\'v\');
获得z传函的分子和分母

u_1=0.0;u_2=0.0;u_3=0.0;u_4=0.0;u_5=0.0;
y_1=0.0;

error_1=0.0;error_2=0.0;error_3=0.0;
ei=0;

应该是清零
for k=1:1:50
采样的比
time(k)=k*ts;
定义time k
rin(k)=1.0; %Tracing Step Signal
跟踪阶跃信号
yout(k)=-den1(2)*y_1+num1(2)*u_2+num1(3)*u_3;
error(k)=rin(k)-yout(k);
差分方程

M=1 大林算法
M=2 pid算法

结束
绘图