• 大小: 7KB
    文件类型: .rar
    金币: 1
    下载: 0 次
    发布日期: 2021-06-18
  • 语言: Matlab
  • 标签:

资源简介

一个基于RBF网络逼近的自适应控制范例,内含代码,simulink模型,结果可以私聊我

资源截图

代码片段和文件信息

function [sysx0strts] = spacemodel(txuflag)
switch flag
case 0
    [sysx0strts]=mdlInitializeSizes;
case 1
    sys=mdlDerivatives(txu);
case 3
    sys=mdlOutputs(txu);
case {249}
    sys=[];
otherwise
    error([‘Unhandled flag = ‘num2str(flag)]);
end
function [sysx0strts]=mdlInitializeSizes
global b c lama
sizes = simsizes;
sizes.NumContStates  = 5;
sizes.NumDiscStates  = 0;
sizes.NumOutputs     = 2;
sizes.NumInputs      = 4;
sizes.DirFeedthrough = 1;
sizes.NumSampleTimes = 1;
sys = simsizes(sizes);
x0  = 0.1*ones(15);
str = [];
ts  = [0 0];
c=0.5*[-2 -1 0 1 2;
       -2 -1 0 1 2];
b=3.0;
lama=10;
function sys=mdlDerivatives(txu)
global b c lama
xd=sin(t);
dxd=cos(t);

x1=u(2);
x2=u(3);
e=x1-xd;
de=x2-dxd;
s=lama*e+de;

W=[x(1) x(2) x(3) x(4) x(5)]‘;
xi=[x1;x2];

h=zeros(51);
for j=1:1:5
    h(j)=exp(-norm(xi-c(:j))^2/(2*b^2));
end

gama=1500;
for i=1:1:5
    sys(i)=gama*s*h(i);
end

function sys=mdlOutputs(txu)
global b c lama
xd=sin(t);
dxd=cos(t);
ddxd=-sin(t);

x1=u(2);
x2=u(3);
e=x1-xd;
de=x2-dxd;
s=lama*e+de;

W=[x(1) x(2) x(3) x(4) x(5)];
xi=[x1;x2];

h=zeros(51);c
for j=1:1:5
    h(j)=exp(-norm(xi-c(:j))^2/(2*b^2));
end
fn=W*h;
xite=1.50;

%fn=10*x1+x2;  %Precise f
ut=-lama*de+ddxd-fn-xite*sign(s);

sys(1)=ut;
sys(2)=fn;

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----

     文件       1361  2011-10-12 10:48  基于RBF网络逼近的自适应控制\rbf_ctrl.m

     文件        841  2011-10-12 10:48  基于RBF网络逼近的自适应控制\rbf_ctrl_plant.m

     文件        309  2011-10-12 10:48  基于RBF网络逼近的自适应控制\rbf_ctrl_plot.m

     文件      20599  2011-10-12 10:48  基于RBF网络逼近的自适应控制\rbf_ctrl_sim.mdl

     目录          0  2018-06-25 15:04  基于RBF网络逼近的自适应控制

----------- ---------  ---------- -----  ----

                23110                    5


评论

共有 条评论