資源簡介
ADRC自抗擾控制simulink仿真程序,包含simulink仿真框圖及代碼,可以運行。

代碼片段和文件信息
function?[sysx0strts]=s_function(txuflag)
switch?flag
case?0
????[sysx0strts]=mdlInitializeSizes;
case?3
????sys=mdlOutputs(txu);
case?{12?4?9?}
????sys?=?[];
otherwise
????error([‘Unhandled?flag?=?‘num2str(flag)]);
end
function?[sysx0strts]=mdlInitializeSizes
sizes?=?simsizes;
sizes.NumContStates??=?0;
sizes.NumDiscStates??=?0;
sizes.NumOutputs?????=?1;
sizes.NumInputs??????=?2;
sizes.DirFeedthrough?=?1;
sizes.NumSampleTimes?=?1;
sys=simsizes(sizes);
x0=[];
str=[];
ts=[0?0];
function?sys=mdlOutputs(txu)
e1=u(1);
e2=u(2);
%NPID?Parameters
delta0=0.02;
alfa01=3/4;alfa02=3/2;???%0 beta01=6.0;beta02=1.5;
kp=beta01;kd=beta02;
if?abs(e1)>delta0
????fal1=abs(e1)^alfa01*sign(e1);
else
????fal1=e1/(delta0^(1-alfa01));
end
if?abs(e2)>delta0
????fal2=abs(e2)^alfa02*sign(e2);
else
????fal2=e2/(delta0^(1-alfa02));
end
ut=kp*fal1+kd*fal2;??????%NPD
sys(1)=ut;
?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
?????文件??????17308??2016-11-04?16:43??ADRC\ADRCsim.slx
?????文件????????941??2016-11-04?11:45??ADRC\ADRC_ctrl.m
?????文件???????1062??2016-11-04?11:45??ADRC\ADRC_eso.m
?????文件????????528??2017-01-12?17:22??ADRC\ADRC_input.m
?????文件????????762??2016-11-04?11:46??ADRC\ADRC_levant.m
?????文件????????810??2016-11-04?11:46??ADRC\ADRC_plant.m
?????文件????????728??2016-11-04?16:45??ADRC\ADRC_plot.m
?????目錄??????????0??2017-11-02?09:34??ADRC
-----------?---------??----------?-----??----
????????????????22139????????????????????8
評論
共有 條評論