資源簡介
自己寫了一些注釋,主要是剛開始還不是很熟悉Simulink里的一下模塊,然后其中的機理就不太清楚,所以加了一些注釋在里面

代碼片段和文件信息
function?[sysx0strts]?=?spacemodel(txuflag)
switch?flag
case?0
????[sysx0strts]=mdlInitializeSizes;%初始化寫入
case?1
????sys=mdlDerivatives(txu);
????%寫入微分方程,雖然寫入的是微分方程,其實本質上是對方程進行積分,然后輸出到sys里面,sys通過中間變量x傳輸到Output的x里面。?
case?3
????sys=mdlOutputs(txu);%寫入輸出方程
case?{249}
????sys=[];
otherwise
????error([‘Unhandled?flag?=?‘num2str(flag)]);
end
function?[sysx0strts]=mdlInitializeSizes
global?c?b%全局變量
sizes?=?simsizes;%生成參數結構體
sizes.NumContStates??=?5;%連續狀態變量個數
sizes.NumDiscStates??=?0;%離散狀態變量個數
sizes.NumOutputs?????=?2;%輸出變量個數
sizes.NumInputs??????=?2;%輸入變量個數
sizes.DirFeedthrough?=?1;%輸入能否直接控制輸出
sizes.NumSampleTimes?=?0;%采樣時間次數
sys?=?simsizes(sizes);%結構賦值
%%%%%%%%%%%參數賦值%%%%%%%%%%%%%%
x0??=?[0*ones(51)];
c=?[-2?-1?0?1?2;
????-2?-1?0?1?2];
b=0.20;
str?=?[];
ts??=?[];
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
function?sys=mdlDerivatives(txu)
global?c?b
gama=1200;
yd=0.1*sin(t);%理想跟蹤指令
dyd=0.1*cos(t);%理想跟蹤指令導數
ddyd=-0.1*sin(t);%理想跟蹤指令導數的導數
e=u(1);%模塊輸入第一組數據
de=u(2);%模塊輸入第二組數據
x1=yd-e;%系統輸出
x2=dyd-de;%系統輸出導數
kp=30;kd=50;
K=[kp?kd]‘;%誤差系統參數,使得誤差的微分方程根在S的左半平面
E=[ede]‘;%誤差矩陣
Fai=[0?1;-kp?-kd];%簡化閉環系統表達式
A=Fai‘;
Q=[500?0;0?500];%構造函數
P=lyap(AQ);%李雅普諾夫函數
xi=[e;de];%誤差矩陣
h=zeros(51);%高斯核函數初始化
for?j=1:1:5
????h(j)=exp(-norm(xi-c(:j))^2/(2*b^2));
end
W=[x(1)?x(2)?x(3)?x(4)?x(5)]‘;%權值初始化
B=[0;1];%B矩陣
S=-gama*E‘*P*B*h;%構造自適應律
for?i=1:1:5
????sys(i)=S(i);
end
?
function?sys=mdlOutputs(txu)
global?c?b
yd=0.1*sin(t);
dyd=0.1*cos(t);
ddyd=-0.1*sin(t);
e=u(1);
de=u(2);
x1=yd-e;
x2=dyd-de;
kp=30;kd=50;
K=[kp?kd]‘;
E=[e?de]‘;
W=[x(1)?x(2)?x(3)?x(4)?x(5)]‘;
xi=[e;de];
h=zeros(51);
for?j=1:1:5
????h(j)=exp(-norm(xi-c(:j))^2/(2*b^2));
end
fxp=W‘*h;%RBF模型輸出
gx=133;%已知參數
ut=1/gx*(-fxp+ddyd+K‘*E);%構造控制律
sys(1)=ut;
sys(2)=fxp;
?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
?????文件????????2121??2018-12-07?13:50??chap4_1ctrl.m
?????文件?????????822??2018-12-07?14:12??chap4_1plant.m
?????文件?????????548??2010-12-02?09:01??chap4_1plot.m
?????文件???????23646??2010-12-02?09:02??chap4_1sim.mdl
- 上一篇:可運行的matlab-SIFT.zip
- 下一篇:IHS 融合算法 matlab
評論
共有 條評論