📄 tranperf2.m
字号:
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%
% tranperf2.m - Calculates voltages, currents, regulation and
% efficiency for a constant input voltage with a
% specified load impedance.
%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
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;
% Load characterization at rated load voltage
disp(' DESCRIPTION OF LOAD @ RATED VOLTAGE '); 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
V1=input(' Input Voltage( V ) = ');
if PFS2 == 'lagging'; thet2=acos(PF);
elseif PFS2 == 'leading'; thet2=-acos(PF);
elseif PFS2 =='unityPF'; thet2=0;
else; end
ZL=V2^2/KVA/1000/Load*100*exp(j*thet2); Z2=R2p+j*X2p+n^2*ZL;
Zm=j*Rc*Xm/(Rc+j*Xm); Zin=R1+j*X1+Z2*Zm/(Z2+Zm);
thet1=angle(Zin); PFin=cos(thet1);
if thet1 > 0; PFS1='lagging';
elseif thet1 < 0; PFS1='leading';
else PFS1='unityPF';end
I1=V1/Zin; E1=V1-(R1+j*X1)*I1;
Im=E1/(j*Xm); Ic=E1/Rc;
I2=(I1-Im-Ic)*n; V2=I2*ZL; Pout=real(V2*conj(I2));
Pin=real(V1*conj(I1)); eff=Pout/Pin*100; deg=180/pi;
Znl=R1+j*X1+Zm; Vnl=abs(V1*Zm/Znl);
Reg=(Vnl/n-abs(V2))/abs(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 + -