Clear Filters
Clear Filters

regulating mid point voltage of a transmission line using shunt compensation

3 views (last 30 days)
%program for short lines
clear;
clc;
%continue with the program vl = input('enter line load voltage: '); f = input('enter local frequency: '); l = input('enter line constant in H/KM: '); length = input('enter length of line: '); r = input('enter the resistive constant: '); power = input('enter the load power: '); pf = input('enter load power factor: ');
%evaluate the parameters xl=l*length*pi*2*f; p=power/3;
res=r*length; z=complex(res,xl); A=1; B=z; C=0; D=1; vlo=vl/sqrt(3); %evaluate the load current ilmag=p/(vlo*pf); %assuming a lagging power factor il=complex(ilmag*cos(acos(pf)),-ilmag*sin(acos(pf))); vload=complex(vlo,0);
%evaluate the value of Vsending end and Isending end
vs=A*vload + B*il; is=C*vload + D*il; %calculte sending end power s=conj(is)*vs; %calculate voltage regulation vr=((abs(vs)-abs(vlo))/abs(vlo))*100;
%calculate efficiency pin=real(s); pout=p; n=(pout/pin)*100; %evaluating the power factor theta=atan(imag(s)/ real(s)); pfactor=cos(theta);
fprintf ('VS='); disp(vs);
fprintf('IS='); disp(is);
fprintf('power factor at sending end='); disp(pfactor);
fprintf('sending end complex power='); disp(s);
fprintf('voltage regulation='); disp(vr);
fprintf('effiency='); disp(n); %evaluate the per unit values of the line parameters %choosing the base values as follows vbase=vlo;
sbase=p/pf;
zbase=mpower(vbase,2)/sbase;
ibase=sbase/vbase;
zpu=z/zbase;
vreceivingpu=vload/vbase;
ireceivingpu=il/ibase;
vsendingpu=vs/vbase;
isendingpu=is/ibase;
ssendingpu=s/sbase;
precevingpu=p/sbase;
fprintf('the per unit value of the impedance='); disp(zpu); fprintf('the per unit value of the receiving end voltage='); disp(vreceivingpu); fprintf('the per unit value of the receiving end current='); disp(ireceivingpu); fprintf('the per unit value of the sending end voltage='); disp(vsendingpu); fprintf('the per unit value of the sending end current='); disp(isendingpu); fprintf('the per unit value of the sending end apparent power='); disp(ssendingpu); fprintf('the per unit value of the receiving end real power='); disp(precevingpu);
%for power factor correction
thetanew=acos(pfdesired);
qold=imag(s);
qnew=real(s)*tan(thetanew); %evaluating the value of the capacitor bank
qc=qold-qnew; pfdesired = input('enter the desired power factor: '); c=qc/(mpower(abs(vs),2)*2*pi*f);
fprintf('value of the capacitor bank in farads='); disp(c); fprintf('the reactive power to be supplied by the capacitane bank in var='); disp(qc);

Answers (0)

Categories

Find more on MATLAB in Help Center and File Exchange

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!