📄 imssdq1rot1.m
字号:
% Induction motor with single phase rotor
close all,clear,clc
disp(date)
disp(' Induction motor with single phase rotor: ')
disp(' Enter machine parameters in per unit:')
R=input('[Rs Rf Rkd Rkq] default([0.01 0.02 100 100]) =');
if isempty(R)==1 R=[0.01 .02 100 100]; end;
X=input('[Xmd Xmq Xal Xfl Xkdl Xkql] default([4.0 4.0 0.15 0.2 .3 .3]) =');
if isempty(X)==1 X=[4.0 4.0 0.15 0.2 0.3 0.3]; end;
Vs=input('Voltage (default = 1.0) =');
if isempty(Vs) Vs=1.0; end;
fs=input('Frequency (default = 1.0) =');
if isempty(fs) fs=1.0; end;
j=sqrt(-1);
Ras=R(1);xal=X(3);Xmd=X(1);Xmq=X(2);Rf=R(2);xfl=X(4);Rkd=R(3);xkdl=X(5);
Rkq=R(4); xkql=X(6);
Xds=xal+Xmd;Xqs=xal+Xmq;Xf=xfl+Xmd;Xkd=xkdl+Xmd;Xkq=xkql+Xmq;
j=sqrt(-1); Vas=Vs;Vbs=-j*Vs ;
disp(' Ras xal Xmd Xmq Rf xfl Rkd xkdl Rkq xkql')
fprintf('%8.3f%10.3f%10.3f%10.3f%10.3f%10.3f%10.3f%10.3f%10.3f%10.3f\n',...
Ras,xal,Xmd,Xmq,Rf,xfl,Rkd,xkdl,Rkq,xkql);
disp(' Vas Vbs fs ')
exc=[Vas Vbs fs];
disp(exc)
wmm=[0:0.01:1]'; % adjust speed range on this line
for m=1:length(wmm) % # of steps
n=wmm(m); % pu speed
f=fs-n;
Z(1,1)=Ras+j*f*Xds; Z(1,2)=-n*Xqs ; Z(1,3)=j*f*Xmd ; Z(1,4)=j*f*Xmd;Z(1,5)=-n*Xmq;
Z(2,1)=n*Xds ; Z(2,2)=Ras+j*f*Xqs; Z(2,3)=n*Xmd ; Z(2,4)=n*Xmd ;Z(2,5)=j*f*Xmq;
Z(3,1)=j*f*Xmd ; Z(3,2)=0 ; Z(3,3)=Rf+j*f*Xf; Z(3,4)=j*f*Xmd ;Z(3,5)=0;
Z(4,1)=j*f*Xmd ; Z(4,2)=0 ; Z(4,3)=j*f*Xmd ; Z(4,4)=Rkd+j*f*Xkd;Z(4,5)=0;
Z(5,1)=0 ; Z(5,2)=j*f*Xmq ;Z(5,3)=0 ;Z(5,4)=0 ;Z(5,5)=Rkq+j*f*Xkq;
Z(:,[4:5])=[]; Z([4:5],:)=[]; % delete rows and columns 4 5
V=[Vas; Vbs; 0];
I=Z\V;
spd(m)=n;
Ias(m)=abs(I(1));Ibs(m)=abs(I(2));
Te(m)=.5*real(Xmd*I(3)*conj(I(2))+(Xds-Xqs)*I(1)*conj(I(2)));
Tp(m)=.5*abs(Xmd*I(3)*I(2)+(Xds-Xqs)*I(2)*I(1));
end
% PLOTS
h=figure('Position',[13 34 490 420],'Name','Torque-Speed curve',...
'NumberTitle','off');
figure(h)
subplot(211),plot(spd,Te,'-r'),xlabel('SPEED'),ylabel('AVERAGE TORQUE'),grid;
subplot(212), plot(spd,Tp,'-b'),xlabel('SPEED'),ylabel('PULSATING TORQUE'),grid
h=figure('Position',[510 34 490 420],'Name','Current-speed curve',...
'NumberTitle','off');
figure(h)
subplot(211), plot(spd,Ias,'-r'),xlabel('SPEED'),ylabel('Ias'),grid
subplot(212), plot(spd,Ibs,'-r'),xlabel('SPEED'),ylabel('Ibs'),grid
%
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -