📄 imssdqk1.m
字号:
% Symmetrical induction machine
% Steady-state conditions
% Synchronously rotating frame
close all, clear,clc
disp(date)
disp(' <<< Symmetrical induction machine (dq model >>> ')
disp(' Steady-state conditions ')
disp(' Synchronously rotating frame ')
disp(' Enter machine parameters in per unit:')
% ----------------- Machine parameters in per unit: --------------------
Ras=input('Stator resistance [default = 0.01] =');
if isempty(Ras) Ras=0.01; end;
Xas=input('Stator reactance [default = 4.6] =');
if isempty(Xas) Xas=4.6; end;
Rr=input('Rotor resistance)[default = 0.02] =');
if isempty(Rr) Rr=0.02; end;
Xr=input('Rotor reactance [default = 4.6] =');
if isempty(Xr) Xr=4.6; end;
Xm=input('Magnetizing reactance [default = 4.5] =');
if isempty(Xm) Xm=4.5; end;
Vs=input('Voltage [default = 1.0] =');
if isempty(Vs) Vs=1.0; end;
ws=input('Frequency [default = 1.0] =');
if isempty(ws) ws=1.0; end;
beta=input('Phase angle (rad) [default = 0] =');
if isempty(beta) beta=0; end;
n1=input('Min speed [default = -1] =');
if isempty(n1) n1=-1; end;
n2=input('Max speed [default = 2] =');
if isempty(n2) n2=2; end;
Rbs=Ras; Xbs=Xas;
Vds=Vs*cos(beta) ; Vqs=Vs*sin(beta);
% -------------------------------------------------------------------------
wk=ws;
wmm=[n1:0.01:n2]; % speed range
for m=1:size(wmm,2) % # of steps
wm=wmm(m);
wr=wk-wm;
% Z matrix ------------------------------------------------------------------
Z=[Ras -wk*Xbs 0 -wk*Xm
wk*Xas Rbs wk*Xm 0
0 -wr*Xm Rr -wr*Xr
wr*Xm 0 wr*Xr Rr ];
% ---------------------------------------------------------------------------
V=[Vds; Vqs; 0; 0];
I=Z\V;
Ids(m)=I(1);Iqs(m)=I(2);Idr(m)=I(3);Iqr(m)=I(4);
Is(m)=sqrt(I(1)^2+I(2)^2) ; Ir(m)=sqrt(I(3)^2+I(4)^2);
speed(m)=wm;
Te(m)=Xm*(I(2)*I(3)-I(1)*I(4)); % T_average
end
% ----- Plots ---------
h=figure('Position',[510 400 490 290],'Name','Torque-Speed curves',...
'NumberTitle','off');
figure(h)
plot(speed,Te),xlabel('SPEED'),ylabel('TORQUE'),grid;
h=figure('Position',[510 34 490 290],'Name','Current-Speed curves',...
'NumberTitle','off');
figure(h)
plot(speed,Is,'-r',speed,Ir,'-b'),xlabel('SPEED'),ylabel('CURRENTS'),grid
h=figure('Position',[13 34 490 290],'Name','Current circle diagram',...
'NumberTitle','off');
figure(h)
x1=[0 Vds];x2=[0 Vqs];
plot(Ids,Iqs,'-r'),title('CIRCLE DIAGRAM'),grid,hold on
plot(x1,x2,'-c'),plot(Vds,Vqs,'oc'),hold off
axis equal
p=menu('Repeat:','Yes','No');
p=num2str(p);
switch p
case '1', imssdqK1;
case '2', clear,close all,clc,close;
end
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -