是关于matlab的:
代码如下:
%PID Controler
clear all;
close all;
ts=1;
sys=tf([0.5],[720,1],'inputdelay',60);
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;u_6=0;u_7=0;u_8=0;u_9=0;u_10=0;
u_11=0;u_12=0;u_13=0;u_14=0;u_15=0;u_16=0;u_17=0;u_18=0;u_19=0;u_20=0;
u_21=0;u_22=0;u_23=0;u_24=0;u_25=0;u_26=0;u_27=0;u_28=0;u_29=0;u_30=0;
u_31=0;u_32=0;u_33=0;u_34=0;u_35=0;u_36=0;u_37=0;u_38=0;u_39=0;u_40=0;
u_41=0;u_42=0;u_43=0;u_44=0;u_45=0;u_46=0;u_47=0;u_48=0;u_49=0;u_50=0;
u_51=0;u_52=0;u_53=0;u_54=0;u_55=0;u_56=0;u_57=0;u_58=0;u_59=0;u_60=0;
u_61=0;
y_1=0;
error_1=0;
error_2=0;
ei=0;
%bang-bang+pid控制
for k=1:1:2400
time(k)=k*ts;
yout(1)=0;
rin(1)=12;
%Linear model
if k0
u(k)=100;
elseif k=100
u(k)=100;
end
if u(k) test at 30
if k<=400&yout(k)<12
按理应该不会出现这个问题啊
是不是哪个细节出错了呢
谢谢了
|