資源簡介
倒立擺系統的原理、分類和設計。神經網絡的各種代碼,實際應用效果非常非常好。
代碼片段和文件信息
%PID?Controller
clear?all;
close?all;
ts=0.001;
sys=tf(5.235e005[187.351.047e0040]);
dsys=c2d(systs‘z‘);
[numden]=tfdata(dsys‘v‘);
u_1=0.0;u_2=0.0;u_3=0.0;
r_1=rand;
y_1=0;y_2=0;y_3=0;
x=[000]‘;
error_1=0;
for?k=1:1:3000
time(k)=k*ts;
kp=1.0;ki=2.0;kd=0.01;
???
S=1;???
if?S==1???%Triangle?Signal
???if?mod(time(k)2)<1?????
???rin(k)=mod(time(k)1);
else
???rin(k)=1-mod(time(k)1);
end
???rin(k)=rin(k)-0.5;
end
if?S==2???%Sawtooth?Signal
???rin(k)=mod(time(k)1.0);
end
if?S==3???%Random?Signal
rin(k)=rand;??
vr(k)=(rin(k)-r_1)/ts;??%Max?speed?is?5.0
while?abs(vr(k))>=5.0
??? rin(k)=rand;??
vr(k)=abs((rin(k)-r_1)/ts);
end
end
u(k)=kp*x(1)+kd*x(2)+ki*x(3);???%PID?Controller
%Restricting?the?output?of?controller
if?u(k)>=10
???u(k)=10;
end
if?u(k)<=-10
???u(k)=-10;
end
%Linear?model
yout(k)=-den(2)*y_1-den(3)*y_2-den(4)*y_3+num(2)*u_1+num(3)*u_2+num(4)*u_3;
error(k)=rin(k)-yout(k);
r_1=rin(k);
u_3=u_2;u_2=u_1;u_1=u(k);
y_3=y_2;y_2=y_1;y_1=yout(k);
???
x(1)=error(k);????????????????%Calculating?P
x(2)=(error(k)-error_1)/ts;???%Calculating?D
x(3)=x(3)+error(k)*ts;????????%Calculating?I
xi(k)=x(3);
error_1=error(k);
D=0;
if?D==1??%Dynamic?Simulation?Display
plot(timerin‘b‘timeyout‘r‘);
pause(0.00000000000000000);
end
end
plot(timerin‘r‘timeyout‘b‘);
xlabel(‘time(s)‘);ylabel(‘rinyout‘);
?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
?????目錄???????????0??2014-04-11?18:01??MATLAB\
?????文件?????1360103??2014-04-11?00:06??MATLAB\FILE.zip
?????目錄???????????0??2014-04-10?22:34??MATLAB\file200902212223\
?????目錄???????????0??2014-04-10?22:34??MATLAB\file200902212228\
?????目錄???????????0??2014-04-10?22:34??MATLAB\file200902221608\
?????目錄???????????0??2014-04-10?22:34??MATLAB\file200902221608\PID程序\
?????目錄???????????0??2014-04-10?22:34??MATLAB\file200902221608\PID程序\chap1\
?????目錄???????????0??2014-04-10?22:34??MATLAB\file200902221608\PID程序\chap10\
?????文件????????9807??2004-06-10?12:15??MATLAB\file200902221608\PID程序\chap10\chap10_1.mdl
?????文件?????????851??2004-06-10?12:14??MATLAB\file200902221608\PID程序\chap10\chap10_1plant.m
?????文件?????????333??2004-06-10?12:21??MATLAB\file200902221608\PID程序\chap10\chap10_1plot.m
?????文件?????????853??2004-06-10?12:14??MATLAB\file200902221608\PID程序\chap10\chap10_1s.m
?????文件????????9809??2004-06-10?12:21??MATLAB\file200902221608\PID程序\chap10\chap10_2.mdl
?????文件?????????939??2004-06-10?12:40??MATLAB\file200902221608\PID程序\chap10\chap10_2plant.m
?????文件????????9786??2004-06-10?12:29??MATLAB\file200902221608\PID程序\chap10\chap10_3.mdl
?????文件?????????870??2004-06-10?12:29??MATLAB\file200902221608\PID程序\chap10\chap10_3plant.m
?????文件?????????333??2004-06-10?12:28??MATLAB\file200902221608\PID程序\chap10\chap10_3plot.m
?????文件????????1137??2004-06-10?12:29??MATLAB\file200902221608\PID程序\chap10\chap10_3s.m
?????文件?????????726??2004-06-10?12:36??MATLAB\file200902221608\PID程序\chap10\chap10_4.m
?????文件????????1303??2004-06-10?12:36??MATLAB\file200902221608\PID程序\chap10\chap10_4eq.m
?????文件???????11156??2004-06-10?13:11??MATLAB\file200902221608\PID程序\chap10\chap10_5.mdl
?????文件????????1459??2004-06-10?13:10??MATLAB\file200902221608\PID程序\chap10\chap10_5plant.m
?????文件????????1594??2004-06-10?13:08??MATLAB\file200902221608\PID程序\chap10\chap10_5s.m
?????文件???????12927??2004-06-10?13:22??MATLAB\file200902221608\PID程序\chap10\chap10_6.mdl
?????文件????????2103??2004-06-10?13:14??MATLAB\file200902221608\PID程序\chap10\chap10_6s.m
?????目錄???????????0??2014-04-10?22:34??MATLAB\file200902221608\PID程序\chap11\
?????文件?????????913??2004-06-29?23:18??MATLAB\file200902221608\PID程序\chap11\CHAP11_1.M
?????文件?????????908??2004-06-29?23:18??MATLAB\file200902221608\PID程序\chap11\CHAP11_2.CPP
?????文件????????9303??2004-06-29?23:18??MATLAB\file200902221608\PID程序\chap11\CHAP11_3.CPP
?????文件????????1192??2004-06-29?23:18??MATLAB\file200902221608\PID程序\chap11\CHAP11_3.H
?????文件???????10020??2004-06-07?07:32??MATLAB\file200902221608\PID程序\chap1\chap1_1.mdl
............此處省略188個文件信息
評論
共有 條評論