Project 2 - Rankine cycle Simulator
Aim:
To calculate the performance of a Steam turbine Engine and plot the T-S and H-S diagram of a Rankine Cycle.
Objective:
To calculate the performance of a Steam turbine Engine.
To plot the T-S and H-S diagram of a Rankine Cycle.
Theory:
Rankine Cycle:
A rankine cycle is an idealised Thermodynamic cycle which governs the working of a Heat Engine.In Rankine cycle,the friction losses of a heat engine are neglected.Heat is supplied externally in a loop where the working fluid is water.There are four components in this cycle which work on four different processes.The four components are turbine,Condensor,Pump and Boiler.
1-2 : Iscentropic Expansion in the Turbine
2-3 : Constant Pressure Heat Rejection in the Condensor
3-4 : Iscentropic Expansion in the Pump
4-1 : Constant Pressure Heat Addition in the Boiler
In process 1-2 Iscentropic Expansion happens in the turbine where the steam from the boiler is converted into meachanical energy,In process 2-3 Constant pressure heat rejection takes place where the vapour is converted to liquid inside a condensor.In process 3-4 Iscentropic Compression happens in the Pump where the pressure increases and the liquid is fed to the boiler.In process 4-1 Constant pressure heat addition takes place inside the boiler from where the superheated steam is fed to the Turbine.
Description of Program:
1. The given inputs are entered.
2. Using the XSteam table and the thermodynamic equations the various state varibles such as Pressurs,Temperarture,Enthalpy and Entropy are calculated.
3. The Net work done(W_net),Back Work Ratio and Thermal Efficiency of thr system are calculated.
4. Graphs are plotted to get the T-S and H-S diagram of the rankine cycle.
Program:
clear al
close all
clc
disp(' RANKINE CYCLE ');
disp('1-2 is Iscentropic Expansion in the Turbine');
disp('2-3 is Constant Pressure Heat rejection by the Condensor');
disp('3-4 is Iscentropic Expansion in the Pump');
disp('4-1 is Constant Pressure Heat addition to the Boiler');
%Inputs:
disp(' INPUTS ');
P1 = input('Enter the Pressure at turbine inlet(bar):');
T1 = input('Enter the Temperature at the Turbine inlet(degree C):');
P2 = input('Enter the Pressure at the Condensor(bar):');
%Using the XSteam functions,the enthalpy and entropy at various
%points can be calculated:
%Caluclating enthalpy(h) and entropy(s) at point 1:
h1 = XSteam('h_pT',P1,T1);
s1 = XSteam('s_pT',P1,T1);
%Caluclating pressure(P),enthalpy(h) and entropy(s) at point 2:
%Since Iscentropic Expansion:
s2=s1;
%For Iscentropic Expansion:
% wkt (T2/T1)=(P2/P1)^(1-(1/g))
g = 1.4;
power = 1-(1/g);
%Hence (T2/T1) = (P2/P1)^power:
T2 = T1*((P2/P1)^power);
h2 = XSteam('h_pT',P2,T2);
%Caluclating pressure(P),enthalpy(h) and entropy(s) at point 3:
%Since Constant Pressure Heat Removal:
P3 = P2;
T3 = T2;
h3 = XSteam('hL_T',T3);
s3 = XSteam('sL_T',T3);
%Caluclating pressure(P),enthalpy(h) and entropy(s) at point 4:
%Since Iscentropic Compression:
s4 = s3;
%Since Constant Pressure Process:
P4 = P1;
T4 = XSteam('T_ps',P4,s4);
h4 = XSteam('h_pT',P4,T4);
h41 = XSteam('hL_p',P4);
s41 = XSteam('sL_p',P4);
h42 = XSteam('hV_p',P4);
s42 = XSteam('sV_p',P4);
T41 = XSteam('T_hs',h41,s41);
T42 = XSteam('T_hs',h42,s42);
%Calculating the Entropy and Enthapy at the saturation curve:
Temp = linspace(0,500,600);
for i = 1:length(Temp)
sv(i) = XSteam('sV_T',Temp(i));
sl(i) = XSteam('sL_T',Temp(i));
hv(i) = XSteam('hV_T', Temp(i));
hl(i) = XSteam('hL_T', Temp(i));
end
%Calculating Net Work Output(W_net):
W_t = h1-h2;
W_p = h4-h3;
W_net = W_t-W_p;
%Calculating Back Work Ratio:
Bw_ratio = W_p/W_t;
%Calculating the Thermal efficiency:
Q_in = h1-h4;
eff_thermal = (W_net/Q_in)*100;
%Calculating Specific Steam Consumption:
% wkt 1J = 3600kg/s
SSC = 3600/W_net;
% Displaying Results in the command window:
disp(' Results ');
P1 = P1;
T1 = T1;
P2 = P2;
disp('At stage point 1');
n1 = sprintf('P1 is %.3f bar',P1);
disp(n1);
n2 = sprintf('T1 is %.3f C',T1);
disp(n2);
n3 = sprintf('h1 is %.3f kJ/kg',h1);
disp(n3);
n4 = sprintf('s1 is %.3f kJ/kgK',s1);
disp(n4);
disp('At stage point 2');
n11 = sprintf('P2 is %.3f bar',P2);
disp(n11);
n21 = sprintf('T2 is %.3f C',T2);
disp(n21);
n31 = sprintf('h2 is %.3f kJ/kg',h2);
disp(n31);
n41 = sprintf('s2 is %.3f kJ/kgK',s2);
disp(n41);
disp('At stage point 3');
n12 = sprintf('P3 is %.3f bar',P3);
disp(n12);
n22 = sprintf('T3 is %.3f C',T3);
disp(n22);
n32 = sprintf('h3 is %.3f kJ/kg',h3);
disp(n32);
n42 = sprintf('s3 is %.3f kJ/kgK',s3);
disp(n42);
disp('At stage point 4');
n13 = sprintf('P4 is %.3f bar',P4);
disp(n13);
n23 = sprintf('T4 is %.3f C',T4);
disp(n23);
n33 = sprintf('h4 is %.3f kJ/kg',h4);
disp(n33);
n43 = sprintf('s4 is %.3f kJ/kgK',s4);
disp(n43);
n14 = sprintf('W_t is %.3f kJ/kg',W_t);
disp(n14);
n15 = sprintf('W_p is %.3f kJ/kg',W_p);
disp(n15);
n16 = sprintf('W_net is %.3f kJ/kg',W_net);
disp(n16);
n17 = sprintf('Eff_Thermal is %.2f Percent',eff_thermal);
disp(n17);
n18 = sprintf('SSC is %.2f kg/kWh',SSC);
disp(n18);
figure(1)
plot([s1 s2],[T1 T2],[s2 s3],[T2 T3],[s3 s4],[T3 T4],[s4 s41],[T4 T41],[s41 s42],[T41 T42],[s42 s1],[T42 T1],'marker','*','color','r')
hold on
plot(sv,Temp)
plot(sl,Temp)
xlabel('Entropy-s(kJ/kgK');
ylabel('Temperature-T(K)');
figure(2)
plot([s1 s2],[h1 h2],[s2 s3],[h2 h3],[s3 s4],[h3 h4],[s4 s1],[h4 h1],'marker','*','color','g')
hold on
plot(sv,hv)
plot(sl,hl)
xlabel('Entropy-s(kJ/kgK');
ylabel('Enthalpy-h(kJ/k)');
Output:
T-S diagram:

H-S diagram:

Command Window

Results and Conclusion:
The performance of the Heat Engine was calculated and the following Observations were made:
1. Net Work = 608.093 kJ/kg
2. Thermal Efficiency = 20.55%
3. Back Work Ratio = 0.4%
The T-S and H-S performance curves of the Rankine Cycle were plotted.