Project

Rankine Cycle Simulator Using MATLAB

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.The rankine cycle is as shown in the figure.

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.

Thermodynamic Equations and formulae:

For Iscentropic Expansion:

`T_2/T_1=(P_2/P_1)^(1-(1/gamma)`

where,

T is the Temperature at that state(K),

P is Pressure at the state(bar),

`gamma` is Heat Capacity Ratio.

For Net Work(W_net) and Back Work Ratio(Bw_ratio):

W_net = `W_t-W_p`

`Bw_(ratio) = W_p/W_t`

`W_t = h1-h2`

`W_p = h4-h3`

where,

h is enthalpy at that state(kJ/kg),

W_t is Turbine Work(kJ/kg)

W_p is Pump Work(kJ/kg)

For Thermal Efficiency(`eta_t`):

`eta_t` = W_net/(Q_in)

Q_in = h1-h4;

where,

Q_in is Heat added by the boiler(J);

h is Entahlpy at that state(kJ/kg)

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:

%Rankine Cycle
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:

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.
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.