📄 tranperf1.m
字号:
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%
% tranperf1.m - Calculates voltages, currents, regulation and
% efficiency for a given load with constant load
% voltage maintained.
%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
clear;
R1=0.06; R2=0.015; X1=0.18; X2=0.045; Xm=400; Rc=1200;
V1=240; V2=120; KVA=5; n=V1/V2; R2p=n^2*R2; X2p=n^2*X2;
disp(' RATED VOLTAGE LOAD CHARACTERISTIC'); disp(' ');
Load=input('Percent Load( 0->100 ) = ');
PF=input('Load Power Factor( 0->1 ) = ');
if PF ~= 1
PFS2=input('PF Sense( leading,lagging ) = ','s');
else
PFS2='unityPF'
end
Pout=1000*KVA*PF*Load/100;
if PFS2 == 'lagging'; thet2=-acos(PF);
elseif PFS2 == 'leading'; thet2=acos(PF);
else thet2=0;
end
I2=KVA*1000/V2*Load/100*exp(j*thet2); E1=(R2p+j*X2p)*I2/n+n*V2;
Im=E1/(j*Xm); Ic=E1/Rc; Io=Ic+Im; I1=I2/n+Io;
V1=(R1+j*X1)*I1+E1;
thet1=angle(V1)-angle(I1); PFin=cos(thet1);
if thet1 > 0; PFS1='lagging';
elseif thet1 < 0; PFS1='leading';
else PFS1='unityPF';end
Pin=real(V1*conj(I1)); eff=Pout/Pin*100; deg=180/pi;
Zm=j*Rc*Xm/(Rc+j*Xm); Znl=R1+j*X1+Zm;
Vnl=abs(V1*Zm/Znl); Reg=(Vnl/n-V2)/V2*100;
deg=180/pi; angV1=angle(V1)*deg; angV2=angle(V2)*deg;
angE1=angle(E1)*deg; angI1=angle(I1)*deg; angI2=angle(I2)*deg;
angIm=angle(Im)*deg; angIc=angle(Ic)*deg;
disp(' '); disp(' TRANSFORMER PERFORMANCE');
disp(' '); disp(' ')
disp([blanks(3) 'V1 mag' blanks(8) 'V1 ang' blanks(8) 'V2 mag' ...
blanks(8) 'V2 ang']);
disp([blanks(3) num2str(abs(V1)) blanks(11) num2str(angV1) ...
blanks(13) num2str(abs(V2)) blanks(9) num2str(angV2)]);
disp(' ');
disp([blanks(3) 'E1 mag' blanks(8) 'E1 ang']);
disp([blanks(4) num2str(abs(E1)) blanks(7) num2str(angE1)]);
disp(' ');
disp([blanks(3) 'I1 mag' blanks(8) 'I1 ang' blanks(8) 'I2 mag' ...
blanks(8) 'I2 ang']);
disp([blanks(3) num2str(abs(I1)) blanks(9) num2str(angI1) ...
blanks(8) num2str(abs(I2)) blanks(9) num2str(angI2)]);
disp(' ');
disp([blanks(3) 'Im mag' blanks(8) 'Im ang' blanks(8) 'Ic mag' ...
blanks(8) 'Ic ang']);
disp([blanks(3) num2str(abs(Im)) blanks(8) num2str(angIm) ...
blanks(8) num2str(abs(Ic)) blanks(7) num2str(angIc)]);
disp(' ');
disp([blanks(4) 'PFin' blanks(10) 'PFS1' blanks(10) 'PFout' ...
blanks(9) 'PFS2']);
disp([blanks(3) num2str(PFin) blanks(8) PFS1 ...
blanks(9) num2str(PF) blanks(9) PFS2 ]);
disp(' ');
disp([blanks(4) 'Pin' blanks(11) 'Pout' blanks(11) 'eff' ...
blanks(10) '%Reg']);
disp([blanks(4) num2str(Pin/1000) blanks(10) num2str(Pout/1000) ...
blanks(10) num2str(eff) blanks(9) num2str(Reg)]);
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -