📄 sprec.m
字号:
%This programme solves various formulaes for single phase half wave rectifier
%This function runs independently as well as with "power_electronics"
%In order to execute this function type ''sprec'' on command prompt
function s=sprec(varargin)
fprintf('Welcome From Worldhitter')
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
fprintf('Provide The Following Data')
Vm=input('\nEnter The Value of Peak Voltage(Volts) :')
Vs=input('Enter The Value Of Secondary Voltage(Volts) :')
Is=input('Enter The Value Of Secondary Current(Amperes) :')
phi=input('Enter The Value Of Phase Angle(Degrees) :')
Is1=input('Enter The Value Of Component Of Secondary Current(Amperes) :')
Isp=input('Enter The Value Of Peak Current(Amperes) :')
R=input('Enter The Value Of Resistence(Ohms): ')
pause(1)
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
o=menu('Performance Parameters(Plz Select)' ,' Dc Voltage(Vdc)','Dc Current(Idc)','Root Mean Square Voltage(Vrms)','Root Mean Square Current(Irms)','Ac Voltage(Vac)','Dc Power(Pdc)','Ac power(Pac)','Form Factor(FF)','Ripple Factor(RF)','Transformer Utilization Factor(TUF)','Displacement Factor(DF)','Harmonic Factor','Power Factor','Crest Factor(CF)','Area calculation(Integeration)');
fprintf('Wait For 2 Seconds')
pause(2)
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
if(o == 1)
fprintf('\nThe Magnitude Of Dc Voltage Is As Under')
Vdc=Vm/pi
%^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
Data=1:64;Data=(Data'*Data)/64;
CreateStruct.WindowStyle='replace';
CreateStruct.Interpreter='tex';
h=msgbox('Vdc=Vm*sin(wt)/pi','Graph Equation','custom',Data,hsv(64),CreateStruct);
pause(1)
closereq
msgbox('Thanx For Using My Programme ','','custom',Data,cool(64))
pause(1)
closereq
thanks4(1,1) %Function call
%$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$
elseif(o == 2)
fprintf('\nThe Magnitude Of Dc Current Is As Under')
Idc=Vm/pi*R
fprintf('Proceeding Towards The Graph')
%^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
Data=1:64;Data=(Data'*Data)/64;
CreateStruct.WindowStyle='replace';
CreateStruct.Interpreter='tex';
h=msgbox('Idc=Vm/pi*R','Graph Equation','custom',Data,bone(64),CreateStruct);
pause(1)
closereq
msgbox('Thanx For Using My Programme ','','custom',Data,cool(64))
pause(1)
closereq
thanks4(1,1) %Function call
%$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$
elseif(o == 3)
fprintf('\nThe Magnitude Of Rms Voltage Is As Under')
Vrms=Vm/2
fprintf('Proceeding Towards The Graph')
%^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
Data=1:64;Data=(Data'*Data)/64;
CreateStruct.WindowStyle='replace';
CreateStruct.Interpreter='tex';
h=msgbox('Vrms=Vm/2','Graph Equation','custom',Data,winter(64),CreateStruct);
pause(1)
closereq
msgbox('Thanx For Using My Programme ','','custom',Data,cool(64))
pause(1)
closereq
thanks4(1,1) %Function call
%$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$
elseif(o == 4)
fprintf('\nThe Magnitude Of Rms Current Is As Under')
Irms=Vm/2*R;
fprintf('Proceeding Towards The Graph')
%^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
Data=1:64;Data=(Data'*Data)/64;
CreateStruct.WindowStyle='replace';
CreateStruct.Interpreter='tex';
h=msgbox('Irms=Vm/2*R','Graph Equation','custom',Data,copper(64),CreateStruct);
pause(1)
closereq
msgbox('Thanx For Using My Programme ','','custom',Data,cool(64))
pause(1)
closereq
thanks4(1,1) %Function call
%$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$
elseif(o == 5)
fprintf('\nThe Magnitude Of Ac Voltage Is As Under')
Vrms=Vm/2;
Vdc=Vm/pi;
Vac=sqrt(Vrms^2 - Vdc^2)
%^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
Data=1:64;Data=(Data'*Data)/64;
CreateStruct.WindowStyle='replace';
CreateStruct.Interpreter='tex';
h=msgbox('Vac=sqrt(Vrms^2 - Vdc^2)','Equation','custom',Data,hot(64),CreateStruct);
pause(1)
closereq
msgbox('Thanx For Using My Programme ','','custom',Data,cool(64))
pause(1)
closereq
thanks4(1,1) %Function call
%$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$
elseif(o == 6)
fprintf('\nThe Magnitude Of Dc Power Is As Under')
Vdc=Vm/pi;
Idc=Vm/pi*R;
Pdc=Vdc*Idc
%^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
Data=1:64;Data=(Data'*Data)/64;
CreateStruct.WindowStyle='replace';
CreateStruct.Interpreter='tex';
h=msgbox('Pdc=Vdc*Idc','Equation','custom',Data,hot(64),CreateStruct);
pause(1)
closereq
msgbox('Thanx For Using My Programme ','','custom',Data,cool(64))
pause(1)
closereq
thanks4(1,1) %Function call
%$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$
elseif(o == 7)
fprintf('\nThe Magnitude Of Ac Power Is As Under')
Vrms=Vm/2;
Irms=Vm/2*R;
Pac=Vrms*Irms
%^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
Data=1:64;Data=(Data'*Data)/64;
CreateStruct.WindowStyle='replace';
CreateStruct.Interpreter='tex';
h=msgbox('Pac=Vrms*Irms','Equation','custom',Data,hot(64),CreateStruct);
pause(1)
closereq
msgbox('Thanx For Using My Programme ','','custom',Data,cool(64))
pause(1)
closereq
thanks4(1,1) %Function call
%&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
elseif(o == 8)
fprintf('\nThe Form Factor Is As Under')
Vrms=Vm/2;
Vdc=Vm/pi;
FF=Vrms/Vdc
%^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
Data=1:64;Data=(Data'*Data)/64;
CreateStruct.WindowStyle='replace';
CreateStruct.Interpreter='tex';
h=msgbox('FF=Vrms/Vdc','Equation','custom',Data,summer(64),CreateStruct);
pause(1)
closereq
msgbox('Thanx For Using My Programme ','','custom',Data,gray(64))
pause(1)
closereq
thanks4(1,1) %Function call
%$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$
elseif(o == 9)
fprintf('\nThe Ripple Factor Is As Under')
Vrms=Vm/2;
Vdc=Vm/pi;
RF=sqrt(Vrms^2 - Vdc^2)/Vdc
%^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
Data=1:64;Data=(Data'*Data)/64;
CreateStruct.WindowStyle='replace';
CreateStruct.Interpreter='tex';
h=msgbox('RF=sqrt(Vrms^2 - Vdc^2)/Vdc','Equation','custom',Data,flag(64),CreateStruct);
pause(1)
closereq
msgbox('Thanx For Using My Programme ','','custom',Data,spring(64))
pause(1)
closereq
thanks4(1,1) %Function call
%$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$
elseif(o == 10)
fprintf('\nThe Transformer Utilization Factor Is As Under')
Idc=Vm/pi*R;
Vdc=Vm/pi;
Pdc=Vdc*Idc;
TUF=Pdc/(Vs*Is)
%^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
Data=1:64;Data=(Data'*Data)/64;
CreateStruct.WindowStyle='replace';
CreateStruct.Interpreter='tex';
h=msgbox('TUF=Pdc/(Vs*Is)','Equation','custom',Data,autumn(64),CreateStruct);
pause(1)
closereq
msgbox('Thanx For Using My Programme ','','custom',Data,cool(64))
pause(1)
closereq
thanks4(1,1) %Function call
%$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$
elseif(o == 11)
fprintf('\nThe Displacement Factor Is As Under')
DF=cos(phi)
%^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
Data=1:64;Data=(Data'*Data)/64;
CreateStruct.WindowStyle='replace';
CreateStruct.Interpreter='tex';
h=msgbox('DF=cos(phi)','Equation','custom',Data,lines(64),CreateStruct);
pause(1)
closereq
msgbox('Thanx For Using My Programme ','','custom',Data,cool(64))
pause(1)
closereq
thanks4(1,1) %Function call
%$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$
elseif(o == 12)
fprintf('\nThe Harmonic Factor Is As Under')
HF=sqrt((Is/Is1)^2 -1)
%^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
Data=1:64;Data=(Data'*Data)/64;
CreateStruct.WindowStyle='replace';
CreateStruct.Interpreter='tex';
h=msgbox('HF=sqrt((Is/Is1)^2 -1)','Equation','custom',Data,prism(64),CreateStruct);
pause(1)
closereq
msgbox('Thanx For Using My Programme ','','custom',Data,cool(64))
pause(1)
closereq
thanks4(1,1) %Function call
%$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$
elseif(o == 13)
fprintf('\nThe Power Factor Is As Under')
PF=Is1/Is*cos(phi)
%^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
Data=1:64;Data=(Data'*Data)/64;
CreateStruct.WindowStyle='replace';
CreateStruct.Interpreter='tex';
h=msgbox('PF=Is1/Is*cos(phi))','Equation','custom',Data,white(128),CreateStruct);
pause(1)
closereq
msgbox('Thanx For Using My Programme ','','custom',Data,cool(64))
pause(1)
closereq
thanks4(1,1) %Function call
%$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$
elseif(o == 14)
fprintf('\nThe Crest Factor Is As Under')
CF=Isp/Is
%^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
Data=1:64;Data=(Data'*Data)/64;
CreateStruct.WindowStyle='replace';
CreateStruct.Interpreter='tex';
h=msgbox('CF=Isp/Is)','Equation','custom',Data,hsv(128),CreateStruct);
pause(1)
closereq
msgbox('Thanx For Using My Programme ','','custom',Data,cool(64))
pause(1)
closereq
thanks4(1,1) %Function call
%&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
elseif(o == 15)
fprintf('\nIn Order To See The Input Wave Form Watch Out')
wt=0:pi/100:2*pi;
Vs=Vm*sin(wt);
l=menu('Choose The Line Style','-','--',':','.','-.')
type=['-','--',':','.','_.'];
plot(wt,Vs,type(l))
m=menu('Choose A Data Marker','+','o','*','x','.','s','d','^','v','>','<','p','h');
type=['+','o','*','x','.','s','d','^','v','>','<','p','h'];
plot(wt,Vs,type(m) )
hold on
c=menu('Choose The Line Color','r','g','b','c','m','y','k','w','Strange')
type=['r','g','b','c','m','Vc','k','w','Strange'];
plot(wt,Vs,type(c))
hold off
pause(1)
if (c == 9)
plot(wt,Vs,'-mo',...
'LineWidth',2,...
'MarkerEdgeColor','k',...
'MarkerFaceColor',[.49 1 .63],...
'MarkerSize',12)
xlabel('wt')
ylabel('Vs')
pause(1)
closereq
end
fprintf('\nWe Can Use Intergeration Instead Using The Preintegrated Relations Following Are The Examples')
pause(2)
fprintf('\n\nNow We Integerate The Above Graph By Varous Methods')
x=0:pi/100:2*pi;
y=Vm*sin(wt);
plot(x,y)
pause(2)
fprintf('\nUsing Trapezoidal Rule')
area=trapz(x,y)
pause(1)
closereq
pause(1)
fprintf('\nCumulative Integrals Are Calculated as')
z=cumtrapz(x,y);
plot(x,y,x,z)
xlabel('wt')
ylabel('Function Response With Time')
pause(2)
closereq
pause(1)
% fprintf('\n\n\n\nTo Get The Results Being Approximated Using Quadratue Rule Watch Out')
% fprintf('\nUsing Previous Data')
% Vm=24;
% wt=0:pi/100:2*pi;
% quadl(voltage,0,180)
Data=1:64;Data=(Data'*Data)/64;
msgbox('Thanx For Using My Programme ','','custom',Data,cool(64))
pause(1)
closereq
thanks4(1,1) %Function call
end
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -