Menu

Executive Programs

Workshops

Projects

Blogs

Careers

Placements

Student Reviews


For Business


More

Academic Training

Informative Articles

Find Jobs

We are Hiring!


All Courses

Choose a category

Loading...

All Courses

All Courses

logo

Loading...
Executive Programs
Workshops
For Business

Success Stories

Placements

Student Reviews

More

Projects

Blogs

Academic Training

Find Jobs

Informative Articles

We're Hiring!

phone+91 9342691281Log in
  1. Home/
  2. Harsh Sharma/
  3. Project 2 - Rankine cycle Simulator

Project 2 - Rankine cycle Simulator

https://thermopedia.com/content/1072 http://www.mhtlab.uwaterloo.ca/courses/me354/lectures/pdffiles/web4.pdf https://lambdageeks.com/back-work-ratio/#:~:text=Back%20work%20ratio%20of%20Rankine%20cycle&text=The%20turbine%20work%20is%20represented,is%20represented%20by%20h1%2Dh4. Rankine Cycle:  Rankine cycle is…

  • MATLAB
  • Harsh Sharma

    updated on 30 Nov 2022

https://thermopedia.com/content/1072

http://www.mhtlab.uwaterloo.ca/courses/me354/lectures/pdffiles/web4.pdf

https://lambdageeks.com/back-work-ratio/#:~:text=Back%20work%20ratio%20of%20Rankine%20cycle&text=The%20turbine%20work%20is%20represented,is%20represented%20by%20h1%2Dh4.

Rankine Cycle:  Rankine cycle is the fundamental operating cycle of all the power plants where a working fluid is water. Rankine cycle is nothing but a advance version of Carnot cycle. In Rankine cycle, there are four components. Turbine, Condenser, Pump, Boiler. Turbine is the core equipment, which convert the heat energy by burning fossil fuel in to a use full work at shaft end. (Generally Electricity Generation). There are four thermodynamics processes, in the four different equipment. In Rankine cycle, heat added and rejection being held while pressure is constant. (Isobaric Heat Addition or Rejection). And Isentropic expansion and Isentropic compression.

 Isobaric Heat Transfer. High pressure liquid enters the boiler from the feed pump  and is heated to the saturation temperature . Further addition of energy causes evaporation of the liquid until it is fully converted to saturated steam. (4-1)

 

Isentropic Expansion. The vapor is expanded in the turbine, thus producing work which may be converted to electricity. In practice, the expansion is limited by the temperature of the cooling medium and by the erosion of the turbine blades by liquid entrainment in the vapor stream as the process moves further into the two-phase region. Exit vapor qualities should be greater than 90%. (1-2)

 

Isobaric Heat Rejection. The vapor-liquid mixture leaving the turbine (4) is condensed at low pressure, usually in a surface condenser using cooling water. In well designed and maintained condensers, the pressure of the vapor is well below atmospheric pressure, approaching the saturation pressure of the operating fluid at the cooling water temperature. (2-3)

 

Isentropic Compression. The pressure of the condensate is raised in the feed pump. Because of the low specific volume of liquids, the pump work is relatively small and often neglected in thermodynamic calculations. (3-4)

 

 

 

 

 

 

Back Work Ratio - The back work indicates the amount of work required to run the compressor. It has the negative value because compressor runs at the expanse of work. And not producing any work.

 

 

Back work ratio or BWR= Work done by compressor/ Work done by turbine

 

MAIN CODE:

clear all

close all

clc

 

disp('Rankine Cycle');

disp('1-2 is the constant pressure heat addition in the boiler');

disp('2-3 is the isentropic expansion in the turbine');

disp('3-4 is the constant pressure heat rejection in condenser');

disp('4-1 is isentropic compression in the pump');

 

p1 = 30; %input('pressure in turbine inlet,(in bar = )');

T1 = 400 %input('Temperature at turbine inlet,(in degree celcius = )');

p2 = 0.05 %input('pressure at condenser inlet,(in degree celcius = )');

% At Stage 1

h1 = XSteam('h_pT', p1, T1);

s1 = XSteam('s_pT', p1, T1);

% At stage 2

s2 = s1;                            % Isentropic Expansion               

sf2= XSteam('sL_p', p2);            % Saturated Liquid Entropy

sg2 = XSteam('sV_p', p2);           % Saturated Vapour Entropy

x2 = (s2-sf2)/(sg2-sf2);           % vapour fraction at state point 2

hf2 = XSteam('hL_p', p2);           % Saturated liquid Enthalpy

hg2 = XSteam('hV_p', p2);           % Saturated vapour enthalpy

h2 = hf2 + (x2*(hg2-hf2));

 

% At Stage 3

p3 = p2;                           % Constant pressure heat rejection in condenser

s3 = XSteam('sL_p',p3);             % Saturated liquid entropy

h3 = XSteam('hL_p',p3);             % Saturated liquid enthalpy

 

% At stage 4

s4 = s3;

p4 = p1;

 

% Work Done by Turbine

 

Wt = h1 - h2;

% Work done to run pump

 

v3 = XSteam('vL_p', p3);

Wp = v3*(p4 - p3)*100;

h4 = h3 + Wp;

 

%Net work

Wnet = Wt - Wp;

 

%Heat into the system

Qin = h1 - h4;

 

%Heat out of the system

Qout = h2 - h3;

 

%Thermal efficiency

thermal_eff = (Wnet/Qin)*100;

 

%Specific Steam Consumption

%SSC = mass flow rate/power

SSC = (3600/Wnet);

 

% Back Work ratio

BW = (Wp/Wt)

 

 

% Calculation of Temperatures at the state points

T3 = XSteam('Tsat_p', p3);

T2 = T3;

Cp4 = XSteam('Cp_ps', p4, s4);

Cv4 = XSteam('Cv_ps', p4, s4);

k = Cp4/Cv4;

T4 = T3/((p3/p4)^((k-1)/k));

 

%Calculating Temperature, Entropy and Enthalpy at the vapour and liquid line for plotting

T6 = XSteam('Tsat_p', p1);

s5 = XSteam('sL_p', p1);

s6 = XSteam('sV_p', p1);

h5 = XSteam('hL_p', p1);

h6 = XSteam('hV_p', p1);

T5 = T6;

 

 

%Plotting the saturation curve

T = linspace(1,375,1000);

for i = 1:length(T)

 

sf(i) = XSteam('sL_T', T(i));

sg(i) = XSteam('sV_T', T(i));

hf(i) = XSteam('hL_T', T(i));

hg(i) = XSteam('hV_T', T(i));

end

 

%Plotting T-s diagram

figure(1)

hold on

plot(sf, T, 'r','linewidth',1)

plot(sg, T, 'r','linewidth',1)

plot([s1 s2], [T1 T2], 'b', 'linewidth', 2)

plot([s2 s3], [T2 T3] ,'b', 'linewidth', 2)

plot([s3 s4], [T3 T4], 'b', 'linewidth', 2)

plot([s4 s5], [T4 T5], 'b', 'linewidth', 2)

plot([s5 s6], [T5 T6], 'b', 'linewidth', 2)

sc1 = linspace(s6, s1, 1000);

for l = 1:length(sc1)

 Tc1(l) = XSteam('T_ps', p1, sc1(l));

end

plot(sc1, Tc1, 'b', 'linewidth', 2)

text(s1+0.1, T1, '1')

text(s2+0.1, T2, '2')

text(s3, T3-20, '3')

text(s4, T4+20, '4')

title('Temp vs Entropy plot')

xlabel('Entropy ,S (Kj/kgk')

ylabel('Temperature (degree C) ')

legend('Saturation curve')

 

 

%Plotting h-s diagram

figure(2)

hold on

plot(sf, hf, 'k', 'linewidth', 1)

plot(sg, hg, 'k',  'linewidth', 1)

plot([s1 s2], [h1 h2], 'r', 'linewidth', 2)

plot([s2 s3], [h2 h3], 'r', 'linewidth', 2)

plot([s3 s4], [h3 h4], 'r', 'linewidth', 2)

hc = linspace(h4, h5, 100);

for r = 1:length(hc)

sch(r) = XSteam('s_ph', p1, hc(r));

end

plot(sch,hc, 'r', 'linewidth', 2)

plot([s5 s6], [h5 h6], 'r', 'linewidth', 2)

for m = 1:length(sc1)

hc1(m) = XSteam('h_ps', p1, sc1(m));

end

plot(sc1, hc1, 'r', 'linewidth', 2)

text(s1+0.1, h1, '1')

text(s2+0.1, h2, '2')

text(s3, h3-100, '3')

text(s4, h4 +200, '4')

title('Enthalpy vs Entropy plot')

xlabel('Entropy , S (KJ/kgk) ')

ylabel('Enthalpy , H (KJ/kg)')

legend('Saturation curve','location','northwest')

 

% Displaying the 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('Wt is %.3f kJ/kg',Wt);

disp(n14);

n15 = sprintf('Wp is %.3f kJ/kg',Wp);

disp(n15);

n16 = sprintf('Wnet is %.3f kJ/kg',Wnet);

disp(n16);

n17 = sprintf('Thermal_efficiency is %.2f Percent',thermal_eff);

disp(n17);

n18 = sprintf('SSC is %.2f kg/kWh',SSC);

disp(n18);

n19 = sprintf('Back work ratio is %.3f ',BW);

disp(n19);

 

 

XSTEAM DATA OF MATLAB:

Steam and water properties for Matlab based on the "International Association for Properties of Water and Steam Industrial Formulation 1997 (IAPWS IF-97). A full implementation of the IF-97 standard that provides very accurate steam and water properties in ranges from 0-1000 bar and 0-2000°C.

 

CODE EXPLANATION.

  1. We have used XSteam Data file of MATLAB, to make a stimulation of Rankine cycle.
  2. XSteam data is used to determine the value of steam and water of enthalpy, entropy at specific pressure and temperature for saturated liquid and saturated vapor conditions.
  3. We have defined the input parameters for Rankine Cycle stimulation. Pressure and temperature at the turbine inlet, Pressure at the turbine outlet.
  4. Orientation of the XSteam Data: XSteam('h_pt',1,20) return the enthalpy of water at 1 bar and 20 degC. 84.0118 kJ/kg.
  5. Sf and Sg, Hf and Hg. Where f and g stands for saturated liquid and saturated vapour.
  6. Net work done by turbine and work done required to run pump, Heat in or heat out are calculated using thermodynamics relation.
  7. The capacity of the steam plant is often expressed in terms of steam rate or specific steam consumption. It is defined as the rate of steam flow required to produce unit shaft output.
  8. Steam rate: 1/Wnet.
  9. Saturation curve is plotted in red for saturated liquid and saturated gas in T-S and in H-S it is black.
  10. Plot of T vs s and h vs s is created from all the points obtained from the program using the plot command and mentioning all the lables, linewidth, color and title.
  11. The plot changes as the user input changes for the above mentioned inputs . 
  12. Results are displayed in the command window by using sprint command . 

 

 

 

No, major errors faced. 

Leave a comment

Thanks for choosing to leave a comment. Please keep in mind that all the comments are moderated as per our comment policy, and your email will not be published for privacy reasons. Please leave a personal & meaningful conversation.

Please  login to add a comment

Other comments...

No comments yet!
Be the first to add a comment

Read more Projects by Harsh Sharma (5)

Project 2 - Rankine cycle Simulator

Objective:

https://thermopedia.com/content/1072 http://www.mhtlab.uwaterloo.ca/courses/me354/lectures/pdffiles/web4.pdf https://lambdageeks.com/back-work-ratio/#:~:text=Back%20work%20ratio%20of%20Rankine%20cycle&text=The%20turbine%20work%20is%20represented,is%20represented%20by%20h1%2Dh4. Rankine Cycle:  Rankine cycle is…

calendar

30 Nov 2022 06:54 PM IST

  • MATLAB
Read more

Project 1 - Parsing NASA thermodynamic data

Objective:

FILE PARSING: File parsing is a process of analyzing a string of symbols, either in natural language, computer language or data structure conforming the rules of a formal grammar. The term parsing comes from the Latin pars (orations), meaning part of speech. With in computational linguistics the term is used to refer to…

calendar

22 Nov 2022 05:36 PM IST

    Read more

    Week 5 - Genetic Algorithm

    Objective:

    A genetic algorithm (GA) is a method for solving both constrained and unconstrained optimization problems based on a natural selection process that mimics biological evolution. The algorithm repeatedly modifies a population of individual solutions. At each step, the genetic algorithm randomly selects individuals from the…

    calendar

    07 Nov 2022 10:22 AM IST

      Read more

      Week 4.1 - Solving second order ODEs

      Objective:

        A pendulum is a body suspended with a string to move freely back and forth under the influence of the gravity. When a pendulum is displaced from it’s equilibrium position, it is subjected to a restoring force due to gravity, that will accelerate it back towards the equilibrium position. When, we have the second…

      calendar

      28 Oct 2022 06:30 AM IST

      • MATLAB
      Read more

      Schedule a counselling session

      Please enter your name
      Please enter a valid email
      Please enter a valid number

      Related Courses

      coursecardcoursetype

      Post Graduate Program in Computer Vision for Autonomous Vehicles

      4.7

      223 Hours of Content

      coursecardcoursetype

      Post Graduate Program in Autonomous Vehicles

      Recently launched

      88 Hours of Content

      coursecard

      Simulation and Design of Power Converters for EV using MATLAB and Simulink

      4.9

      22 Hours of Content

      coursecard

      Introduction to Hybrid Electric Vehicle using MATLAB and Simulink

      4.8

      23 Hours of Content

      coursecardcoursetype

      Mechanical Engineering Essentials Program

      4.7

      21 Hours of Content

      Schedule a counselling session

      Please enter your name
      Please enter a valid email
      Please enter a valid number

      phoneCall Us

                  Do You Want To Showcase Your Technical Skills?
                  Sign-Up for our projects.