📄 immodsi.m
字号:
% Induction machine model
function [f,x0]=immodSI(t,x,u,flag,Rs,Rr,L_param,J,p,wo,ic)
Lsl=L_param(1);
Lrl=L_param(2);
Lm=L_param(3);
L=[Lsl+Lm 0 Lm 0
0 Lsl+Lm 0 Lm
Lm 0 Lrl+Lm 0
0 Lm 0 Lrl+Lm];
switch flag,
case 1,
flux=[x(1) x(2) x(3) x(4)]'; cur=L\flux ;
% Dynamic equations of induction machine :
f(1)=u(1)-Rs*cur(1)+wo*u(3)*x(2);
f(2)=u(2)-wo*u(3)*x(1)-Rs*cur(2);
f(3)=-Rr*cur(3)+x(4)*(wo*u(3)-x(5));
f(4)=-Rr*cur(4)-x(3)*(wo*u(3)-x(5));
f(5)=0.5*p*((cur(2)*x(1)-cur(1)*x(2))*0.75*p-u(4))/J;
case 3,
% Outputs
flux=[x(1) x(2) x(3) x(4)]'; cur=L\flux ;
f(1)=x(5)*2/p;
f(2)=0.75*p*(cur(2)*x(1)-cur(1)*x(2));
f(3)=cur(1);
f(4)=cur(2);
case 0,
f=[5,0,4,4,0,0];
x0=ic;
case {2,4,9},
f=[];
otherwise
error(['unhandled flag = ',num2str(flag)]);
end
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -