Challenge

Project 2 - Rankine cycle Simulator

Aim :- To Calculate the Net Work Output & Back Work Ratio for Rankine Cycle Simulator.

Theory:- The Rankine cycle is an idealized thermodynamic cycle describing the process by which certain heat engines, such as steam turbines or reciprocating steam engines, allow mechanical work to be extracted from a fluid as it moves between a heat source and heat sink.

There are four processes of Rankine Cycle :-

  • Process 1–2: The working fluid is pumped from low to high pressure. As the fluid is a liquid at this stage, the pump requires little input energy. Process 1-2 is isentropic compression.
  • Process 2–3: The high-pressure liquid enters a boiler, where it is heated at constant pressure by an external heat source to become a dry saturated vapour. The input energy required can be easily calculated graphically, using an enthalpy–entropy chart (h–s chart, or Mollier diagram), or numerically, using steam tables or software. Process 2-3 is constant pressure heat addition in boiler.
  • Process 3–4: The dry saturated vapour expands through a turbine, generating power. This decreases the temperature and pressure of the vapour, and some condensation may occur. The output in this process can be easily calculated using the chart or tables noted above. Process 3-4 is isentropic expansion.
  • Process 4–1: The wet vapour then enters a condenser, where it is condensed at a constant pressure to become a saturated liquid. Process 4-1 is constant pressure heat rejection in condenser.

Equation of Rankine Cycle:-

Matlab Program for Equation Solve:-

% Calculation Rankine Cycle Simulator
% The Program to find out the net work output and back work ratio

clear all
close all
clc

% Rankine cycle process
disp('1-2 isentropic expansion in turbine')
disp('2-3 constant pressure heat rejection by condenser')
disp('3-4 isentropic compression in the pump')
disp('4-1 constant pressure heat addition by boiler')

% Inputs
t_1 = input('enter the temperature at turbine inlet(degree celcius):');
p_1 = input('enter the pressure at the turbine inlet(bar):');
p_2 = input('enter the pressure at the turbine outlet(bar):');

% Data given
%turbine inlet temperature = 400 degree celcius
%turbine inlet pressure = 30 bar
%turbine outlet pressure = 0.05 bar = condenser inlet pressure 

% at state point 1:
p1 = p_1;
t1 = t_1;
s1 = XSteam('s_pT',p1,t1);
h1 = XSteam('h_pT',p1,t1);
ts1 = XSteam('Tsat_p',p1);
sf1 = XSteam('sL_p',p1);
sg1 = XSteam('sV_p',p1);
hf1 = XSteam('hL_p',p1);
hg1 = XSteam('hV_p',p1);

% at state point 2:
s2 = s1;
p2 = p_2;
t2 = XSteam('Tsat_p',p2);
ts2 = XSteam('Tsat_p',p2);
sf2 = XSteam('sL_p',p2);
sg2 = XSteam('sV_p',p2);
hf2 = XSteam('hL_p',p2);
hg2 = XSteam('hV_p',p2);
x2 = ((s2-sf2)/(sg2-sf2));
h2 = hf2 + (x2*(hg2-hf2));

% at state point 3:
p3 =p2;
t3 = t2;
s3 = XSteam('sL_p',p3);
v3 = XSteam('vL_p',p3);
hf3 = Xsteam('hV_p',p3);
hg3 = XSteam('hL_p',p3);
sf3 = XSteam('sV_p',p3);
sg3 = XSteam('sL_p'p3);
x3 = ((s3-sf3)/(sg3-sf3));
h3 = hf3 + (x3*(hg3-hf3));
cp4 = XSteam('cpL_p',p3);
cv4 = XSteam('cvL_p',p3);
gamma = (cp4/cv4);
g = (gamma-1)/gamma;

% at state point 4:
p4 = p1;
s4 = s3;
h4 = XSteam('h_ps',p4,s4);
t4 =t3*((p4/p3)^g);
wt = h1 - h2;
wp = h4 + h3
wnet = wt - wp;
Qin = h1 - h2;
Qout = h2 - h3;
Ntherm = (wnet/Qin)*100;
S.S.C = 3600/wt

temp = linspace(1,400,500);
for i = 1:length(temp)
    a(i) = XSteam('hL_T',temp(i));
    b(i) = XSteam('hV_T',temp(i));
    c(i) = XSteam('sL_T',temp(i));
    d(i) = XSteam('sV_T',temp(i));

end

%plot 1: 
figure(1)
hold on
plot([s1 s2],[t1 t2],'Color','r','linewidth',2)
text(s1,t1,'1')
text(s2,t2,'2')
plot([s2 s3],[t2 t3],'Color','c','LineWidth',2)
text(s3,t3,'3')
plot([s3 s4],[t3 t4],'Color','b','linewidth',2)
text(s4,t4,'4')
plot([s4 sf1],[t4 ts1],'Color','m','linewidth',2)
text(sf1,ts1,'4s')
plot([sf1 sg1],[ts1 ts1],'Color','k','linewidth',2)
plot(c,temp,'Color','b','linestyle','-','LineWidth',1.5)
plot(d,temp,'Color','b','linestyle','-','LineWidth',1.5)
title('T-S Diagram')
xlabel('Entropy(KJ*KgK)')
ylabel('Temperature(K)')
legend('1-2 isentropic expansion','2-3 constant pressure','3-4 isentropic compression','constant pressure')

%plot 2:
figure(2)
hold on
plot([s1 s2],[h1 h2],'Color','k','LineWidth',2)
text(s1,h1,'1')
plot([s2 s3],[h2 h3],'Color','g','LineWidth',2)
text(s2,h2,'2')
plot([s3 s4],[h3 h4],'Color','m','LineWidth',2)
text(s3,h3,'3')
plot([s4 s1],[h4 h1],'Color','r','LineWidth',2)
text(s4,h4,'4')
plot(c,a,'Color','b','linestyle','-','LineWidth',1.5)
plot(d,b,'Color','b','linestyle','-','LineWidth',1.5)

title('H-S Diagram')
xlabel('Entropy(KJ/KgK)')
ylabel('Enthalpy(KJ/KgK)')

legend('1-2 isentropic expansion','2-3 constant pressure','3-4 isentropic compression','constant pressure')

%Display
disp('At state point 1:')
fprintf('p1 is : %f Bar/n',p1)
fprintf('t1 is %f deg celcius/n',t1)
fprintf('h1 is: %f KJ/Kg/n',h1)
fprintf('s1 is: %f KJ/KgK]n',s1)

disp('At state point 2:')
fprintf('p1 is : %f Bar/n',p1)
fprintf('t1 is %f deg celcius/n',t2)
fprintf('h2 is: %f KJ/Kg/n',h2)
fprintf('s2 is: %f KJ/KgK]n',s2)
fprintf('x2 is: %f',x2)

disp('At state point 3:')
fprintf('p3 is : %f Bar/n',p3)
fprintf('t3 is %f deg celcius/n',t3)
fprintf('h3 is: %f KJ/Kg/n',h3)
fprintf('s3 is: %f KJ/KgK]n',s3)


disp('At state point 4:')
fprintf('p4 is : %f Bar/n',p4)
fprintf('t4 is %f deg celcius/n',t4)
fprintf('h4 is: %f KJ/Kg/n',h4)
fprintf('s4 is: %f KJ/KgK]n',s4)

fprintf('wt is: %f KJ/Kg/n',wt)
fprintf('wp is: %f KJ/Kg/n',wp)
fprintf('wnet is:%f KJ/kg/n',wnet)
fprintf('Ntherm is: %f Percent/n',Ntherm)
fprintf('s.s.c is: %f Kg/kwh/n',s.s.c)

T-S Diagram & H-S Diagram Graph:-

Results & Conclusion:-

1.Net Work = 608.093 KJ/KG

2.Thermal Efficiency = 20.55%

3.Back Work Ratio = 0.4%

Your portfolio, next

Ship work like this
in your own course.

Talk to a career counsellor

Free 20-minute call. We'll map the right course to where you want to work.

By submitting you agree to our Terms and Privacy Policy.

Talk to a career counsellor

Free 20-minute call. We'll map the right course to where you want to work.

By submitting you agree to our Terms and Privacy Policy.