You are on page 1of 27

Steam

Cycle Simulation HYSYS v8.6



The attached gives steps to set up a simulation in HYSYS v8.6 to model a simple Rankine steam
cycle for electricity production. The system consisting of:
Fuel gas side with air blower, combustion chamber, & fuel gas side of the steam boiler.
Steam side with steam turbine, steam condenser, condensate pump, & steam side of the
boiler.

The simulation will first be set up assuming isentropic steps for the rotating equipment. It will then
be modified to account for more realistic efficiencies (both thermodynamic and mechanical).

When the simulation is set up the overall PFD should look like the following figure.


Create new simulation file
Start the program from Start, All Programs, Aspen Tech, Process Modeling V8.6, Aspen HYSYS, Aspen
HYSYS V8.6. When the program opens choose the New button.

Rev 1.0

February 26, 2015


Define the Components & the Property Models
Specify components, fluid property packages, & crude oil assays



The first step is to add two sets of pure chemical species to represent:
Steam as modeled by pure water & using property correlations consistent with the ASME
Steam Tables.
The natural gas fuel, air, & combustion exhaust as pure light components modeled by the
PengRobinson equation of state (EOS).

Lets do the steam first. With Component Lists highlighted click on the Add button. From the list of
pure components pick water. Were now ready to pick the property model.

Rev 1.0

February 26, 2015


The next step is to pick a fluid property package. From the Fluid Packages screen click the Add
button. Choose the ASME Steam option and make sure it is associated with Component List 1.


Now lets add components to model the fuel side of the system. Go back to the Component Lists item
& click on the Add button to create Component List 2. We need components for the following:
Natural gas. For now lets model this as a possible mixture of methane, ethane, & propane.
Air. For now well model this as a mixture of oxygen & nitrogen.
Combustion gases. At the minimum well also need carbon dioxide and water. However,
well also want to take into account incomplete combustion (forming carbon monoxide) as
well as NOx formation (for now just as NO, NO2, & N2O).

From the list of pure components pick the following chemical species. The next step is to associate a
different fluid property package for these compounds (since the ASME Steam Tables are only
appropriate for pure water). Go back to the Fluid Packages screen & click the Add button. Choose
the PengRobinson option and make sure it is associated with Component List 2.

Rev 1.0

February 26, 2015


Now is a good time to save the file before we start setting up the process simulation. Click the File
tab & then the Save As item.

Rev 1.0

February 26, 2015


Set up & Solve the Flowsheet
Working Units
Activate the Simulation option. Note that youll see a blank flowsheet.

We would like to show the calculations with a modified set of SI units, in particular:
Temperature as C.
Pressure as bar (absolute).
Mass flow as kg/sec.
Molar flow as kg.mol/sec.
Heat duty as kJ/sec.
Power as kW.

Under the Home tab click the
Unit Sets button. Under the
Available Units Sets select SI.
You can examine the list
under Display Units to
determine what will be used
for the display of the results
as well as the default units
for the input. Most of the
units are what we desire, but
not all. For example, you can
see that Pressure will be
reported in kPa, not quite
what we want.

Lets create a new set of
units & call it SIbarsec.
With the SI units highlighted
in the Available Units Sets list
click the Copy button. Change
the Unit Set Name to SIbar
sec. Lets now examine the
Display Units for the ones of
interest (Temperature,
Pressure, etc.) and make
sure that are consistent with
what we want. To change we
need only click on the
dropdown list in the Units
column. For example, to
change Pressure from kPa to
bar we only need to choose
the appropriate option from
the list. When done click the
OK button.
Rev 1.0

February 26, 2015




Steam Cycle
We will want to create a simple Rankine cycle with the following process conditions:
Saturated steam production at 125 bar.
Final condensation to 20C.
Steam turbine operating at ideal reversible conditions.
Condensate pump operating at ideal reversible conditions.
No extra pressure drop through heat exchangers or piping.

Lets place the following units from the Model Palette to the flowsheet1: Heater, Cooler, Expander, &
Pump. Ultimately it will be depicted as follows.


Lets define the condensate pump first.
Double click on the pump icon (probably
called P100). Change the name to
Condensate Pump. Specify new streams
for the inlet, Condensate, the outlet, HP
Water, & the energy stream, WPump.
Make sure that the Basis1 fluid package
is chosen.


1 If the Model Palette is not visible choose the View tab & click on the Model Palette button.

Rev 1.0

February 26, 2015


We want to make this an ideal reversible
pump. Click on the Parameters option &
change the Adiabatic Efficiency to 100%.


We can initialize the water circulating in the loop from
here, too. Click on the Worksheet tab & choose the
Composition option. Enter 1 for the H2O value under the
Condensate column. An input form will pop up & allow
you to verify that this represents the Moles Fractions
basis. Click the OK button.


Click on Conditions so we can enter values
for the Condensate entering the pump.
Specify the Temperature as 20C and the
Vapour fraction as 0 (i.e., a saturated
liquid). Lets use a flow basis of 1 kg/s.

Notice that Condensate stream is fully
defined & other associated values are
calculated (such as the pressure, molar
flow, heat flow, etc.)


Now lets define the steam side of the
boiler. Double click on the heater icon
(probably called E100). Change the name
to Steam Boiler. Pull down the list for the
input stream & choose HPWater. Specify
new streams for the outlet, HPSteam, &
the energy stream, QBoiler. Make sure
that the Basis1 fluid package is chosen.


Rev 1.0

February 26, 2015


We want to assume a negligible pressure
drop through this exchanger. Click on the
Parameters option & change the Delta P to
0.


Now lets specify the conditions for the
high pressure steam. Click on the
Worksheet tab & the Conditions option.
Specify the Pressure as 125 bar and the
Vapour fraction as 1 (i.e., a saturated
vapor).

Notice that after entering the pressure the
rest of the conditions for the HPWater
stream are calculated (since we now know
the outlet pressure of the pump, too). After
entering the vapor fraction the rest of the
conditions can be calculated for the outlet
HPSteam & the required duty QBoiler.

Now lets define the steam turbine.
Double click on the expander icon
(probably called K100). Change the
name to Steam Turbine. Pull down the
list for the input stream & choose HP
Steam. Specify new streams for the
outlet, Turbine Exhaust, & the energy
stream, WSteam Turbine. Make sure
that the Basis1 fluid package is
chosen.

Rev 1.0

February 26, 2015


We want to make this an ideal
reversible expander. Click on the
Parameters option & change the
Adiabatic Efficiency to 100%.


Do not apply any other conditions at this time.

Now lets define the condenser.
Double click on the cooler icon
(probably called E101). Change
the name to Steam Condenser. Pull
down the list for the input stream
& choose Turbine Exhaust. Pull
down the list for the outlet stream
& choose Condensate. Specify a
new energy stream, QCondenser.
Make sure that the Basis1 fluid
package is chosen.


We want to assume a negligible
pressure drop through this
exchanger. Click on the Parameters
option & change the Delta P to 0.


Now all units & streams should be fully calculated. There are various ways to view the results. One
way is to click on the Workbook item. Under the Material Streams tab we can see temperatures,
pressures, & phase conditions (i.e., vapor fractions). Under the Energy Streams tab we can see the
calculated exchanger duties & rotating equipment powers.

Rev 1.0

February 26, 2015


We can also view this basic information directly on the flowsheet. Right click the various streams &
choose the Show Table option. This can be done for all of the streams of interest. (The tables will
probably have to be moved around to make the results readable.)

By default the material stream tables show the temperature, pressure, & overall molar flow. To add
vapor fraction doubleclick on the table, click Add Variable, choose Vapour Fraction, click OK, &
close the PFD Table form.
Rev 1.0

10

February 26, 2015


There is a third option that would allow you to calculate the thermal efficiency of the steam cycle as
well as summarize the results add a Spreadsheet to the simulation.

From the Model Palette add
a Spreadsheet; double click
to open. Change the name to
Steam Cycle Summary. Click
on the Parameters tab and
change the Number of
Columns to at least 5 and
the Number of Rows to at
least 11. Click on the
Spreadsheet tab & set up
text fields that look like the
figure on the right.

Rev 1.0

11

February 26, 2015


We now want to associate many of
the cell locations to results
calculated by HYSYS. For example,
rightclick on cell B2 & choose
Import Variable; choose
Condensate, Temperature, & then
click OK. Note that the temperature
of 20.00 C appears in the table; also
note that it is formatted as bold
blue, meaning that this is a user
input value. (It also denotes that it
can be changed from here, but
more of that later.).

When all variables are
associated with the
appropriate cells the
spreadsheet should look as
follows.


Now lets add a couple calculations.
The net power produced will be that from the Steam Turbine minus that needed by the
Condensate Pump. In cell D10 enter the formula =D8D9.
We also would to directly calculate the thermal efficiency of the steam cycle, i.e., the ratio of
the net power produced by the heat in from the boiler. In cell D11 enter the formula
=100*D10/B8.

Rev 1.0

12

February 26, 2015


Now we have a summary
table that will show in a
single place material stream
results, energy stream
results, unit operation
parameters, & calculated
results. For example, we can
see that this combination of
conditions will result in a
steam cycle with a 41.25%
thermal efficiency.


Note that this is also a live
table. We can change
parameters here & the
other values will
automatically recalculate.
For example, if we were to
change the Steam Turbine &
Condensate Pump adiabatic
efficiencies to 85%, then all
values would be
recalculated and we could
see that the thermal
efficiency drops to 34.94%.



Fuel & Combustion System
We will want to create a simple natural gas burner/boiler with the following process conditions:
Natural gas is available at industrial delivery pressure, 20 barg & 15C. We will
characterize the natural gas as 100% methane.
Air is available at 25C. We will characterize the air as a 21/79 O2/N2 molar mixture and
bone dry (i.e., no water). We want to add enough air so that there is 20% excess oxygen
based on complete combustion of the natural gas.
The combustion process occurs nears atmospheric conditions so the natural gas must be let
down in pressure. However, a blower is needed to push the air into the combustion
chamber.
The pressure drop through the burner/boiler/flue combination is 0.3 bar.

Rev 1.0

13

February 26, 2015

The flue gas is exhausted to the atmosphere at 120C, a temperature high enough to prevent
any liquid dropout & subsequent corrosion problems.


Lets place the following units from the Model Palette to the flowsheet: Valve, Compressor, Gibbs
Reactor2, & Cooler. Ultimately it will be depicted as follows. (Well discuss the Spreadsheet, Set, &
Adjust operations as we go.)


Lets define the natural gas &
letdown valve first. Double
click on the valve icon
(probably called VLV100).
Change the name to Gas Let
Down Valve. Specify new
streams for the inlet, Fuel Gas,
& the outlet, LPFuel. Make
sure that the Basis2 fluid
package is chosen.


2 Note that reactor models are under the Columns tab of the Model Palette.

Rev 1.0

14

February 26, 2015


We will initialize the natural gas from here.
Click on the Worksheet tab & choose the
Composition option. Enter 1 for the Methane
value under the Fuel Gas column. An input
form will pop up & allow you to verify that
this represents the Moles Fractions basis.
Click the Normalize button to set the other
compositions as zero. Click the OK button.


Click on Conditions so we can
enter values for the Fuel Gas
entering the pump. Specify the
Temperature as 15C and the
Pressure as 20 barg (note that
the pressure gets automatically
adjusted to an absolute basis).
Lets use a flow basis of 1
kg.mol/s.

Lets specify the outlet pressure
of 0.3 barg in the LPFuel
column (note that the pressure
gets automatically adjusted to an
absolute basis).

Notice that both the Fuel Gas & LPFuel streams are fully defined & other associated values are
calculated (such as the mass flow, heat flow, etc.)

Rev 1.0

15

February 26, 2015


Now lets define the
air & the air blower.
Double click on the
compressor icon
(probably called
K100). Change the
name to Air Blower.
Specify new
streams for the
input stream, Air,
the outlet, Air2, &
the energy stream,
WAir Blower. Make
sure that the Basis
2 fluid package is
chosen.


We want to make
this an ideal
reversible
compressor. Click
on the Parameters
option & change the
Adiabatic Efficiency
to 100%.

Rev 1.0

16

February 26, 2015


We will initialize the air stream from here.
Click on the Worksheet tab & choose the
Composition option. Enter 0.21 for the
Oxygen value under the Air column. An
input form will pop up & allow you to verify
that this represents the Moles Fractions
basis & finish entering the rest of the values.
Enter 0.79 for the Nitrogen value. Click the
Normalize button to set the other
compositions as zero. Click the OK button.


Click on Conditions so
we can enter values
for the Air entering
the pump. Specify the
Temperature as 25C
and the Pressure as 0
barg (note that the
pressure gets
automatically
adjusted to an
absolute basis). As a
starting point lets
define the flowrate as
12 kg.mol/hr.

Finally, lets specify
the outlet pressure for
Air2 as 0.3 barg to
match that of the fuel
gas after the letdown
valve.

Notice that both the Air & Air2 streams are fully defined & other associated values are calculated
(such as the mass flow, heat flow, etc.)

Now its time to model the combustion portion of the fuel gas burner. There are various options for
doing this. One of the simplest (and would normally be done for hand calculations) would be to
define all combustion reactions & specify the extent of conversion for each. Instead, were going to
take advantage of the full thermodynamic capabilities of HYSYS & use a reactor that will minimize
the Gibbs free energy. All we have to do is list the expected products & HYSYS will calculate the
resulting product distribution that honors the material & energy balances as well as any chemical
equilibrium limitations.

Rev 1.0

17

February 26, 2015


Double click on the Gibbs
Reactor icon (probably
called GBR100). Change
the name to Combustion.
Select the existing LPFuel
& Air2 streams as inlets.
Specify new streams,
Combustion Gas, as the
vapour outlet &
Combustion Liquids as the
liquid outlet. Make sure
that the Basis2 fluid
package is chosen.


Thats pretty much it. The
defaults are zero pressure
drop & include all species
in the component list as
potential product.

We can examine the
results by clicking on the
Worksheet tab. Selecting
Conditions shows that
there is only a gas
produced at a temperature
of 1731C. We can then
look at the resulting
composition by selecting
Composition. The results
are, by default, shown as
mole fractions. Note that
all of the methane has
been consumed. There is a
small amount of CO
formed (as incomplete
combustion) but some
NOx has also been created
from the N2 in the air.


Now lets see how much heat can be transferred out of the combustion gases.
Rev 1.0

18

February 26, 2015



Now lets specify the
combustion gas side of the
boiler. Double click on the
heater icon (probably called
E100). Change the name to
HRSG. Pull down the list for
the input stream & choose
Combustion Gas. Specify new
streams for the outlet, Flue
Ga, & the energy stream, Q
HRSG.. Make sure that the
Basis2 fluid package is
chosen.

We will not specify a pressure
drop across the exchanger.
Rather, well specify the
pressure out the stack. Click
on the Worksheet tab & the
Conditions option. Specify the
Pressure as 0 barg and the
Temperature as 120C.

Now the conditions for the
inlet & outlet streams can be
determined as well as the
duty available (as QHRSG).

There are still a couple items to be done to clean up the simulation. The first is for a matter of
convenience how should we specify the pressure of the Air2 stream out of the blower? Right now
the pressure into the Combustion operation is set separately for the two inlet streams (LPFuel &
Air2). If a study was to be performed & the pressure were to change then having the specifications
in two separate locations could lead to them being changed differently. It sure would be nice to set
it only in one location & then have the other location update automatically. We can do this with a
Set operation.

From the Model Palette place a Set operation on the
flowsheet. Doubleclick on it (probably called SET1).
Rename as Set Blower Outlet. Define the Target Variable
as the pressure of the Air2 stream. Well use the Source
as the value from LPFuel.

Once this is implemented any changes made to the
pressure of LPFuel will be automatically transmitted to
the outlet pressure of the air blower.

Rev 1.0

19

February 26, 2015



The second change involves a convenient way to make sure that the correct amount of air is added
to match the excess oxygen spec. The amount of stoichiometric oxygen is determined from the
combustion reactions. For methane, ethane, & propane the reactions are, respectively:


CH4 + 2 O2 CO2 + 2 H2O

C2H6 + 3.5 O2 2 CO2 + 3 H2O

C3H8 + 5 O2 3 CO2 + 4 H2O

This shows that we need to know the composition of the fuel gas (in molar amounts) to determine
the stoichiometric amount of oxygen needed. The excess part is additional oxygen (as a
multiplier) that is added. The final consideration is that the specification in HYSYS is not just for the
rate of oxygen but rather of the air; so we have to take into account the composition of the air
account for the large amount of nitrogen also be introduced into the Combustion operation.

Since we have set the composition of the fuel gas to be pure methane & the basis flow rate to 1
kg.mol/sec then the stoichiometric oxygen flowrate is twice this, 2 kg.mol/sec. We also need to
increase this by 20% to include the desired excess. And we need to take into account the oxygen
content in the air to determine the air rate. So overall:

nO2
1 fexcess 2 1 0.2
stoich

11.43 kg.mol/sec .
nair
0.21
yO2


We could do these calculations prior to running HYSYS and enter the air rate. Or we could do the
calculations within HYSYS.

From the Model Palette add
a Spreadsheet; double click
to open (probably called
SPRDSHT1). Change the
name to Air Rate Calc. Use
the default number of rows
& columns. Click on the
Spreadsheet tab & set up
text fields that look like the
figure on the right.

Rev 1.0

20

February 26, 2015


We now want to
associate many of
the cell locations
to results
calculated by
HYSYS. For
example, right
click on cell D3 &
choose Import
Variable; choose
Air, Mast
Component Mole
Frac, Oxygen, &
then click OK.

Lets associate all of the
desired molar flow rates.
For example, for the fuel,
rightclick on cell B4 &
choose Import Variable;
choose Fuel Gas, Molar
Flow, & then click OK.
Associate the molar flow for
the air to the cell D7.


Now lets add the following calculations:
cell D4, =(B2 * 2 + B3 * 3.5 + B4 * 5) * B5
cell D4, =D4 * (1 + D2)
cell D4, =D5 / D3
cell D4, =D7 D6

Rev 1.0

21

February 26, 2015


Now we have a table that
will calculate the desired air
flow rate for the specified
fuel gas flowrate. Though
the spreadsheet cannot
directly set the air flowrate
we can do it manually by
directly changing the value
in cell D7.


Even though the spreadsheet itself cannot directly set the flowrate of the Air stream it can be used
as part of an Adjust operation.

From the Model Palette place an
Adjust operation on the
flowsheet. Doubleclick on it
(probably called ADJ1).
Rename as Adjust Air Rate.
Define the Adjusted Variable as
the molar flow of the Air stream.
Well use the calculation for the
difference between the desired
air rate & the actual as the
Target Variable; this is cell D8 in
the Air Rate Calc spreadsheet.
Set the Specified Target Value as
0.

Rev 1.0

22

February 26, 2015


To finish we have to set values
to control the calculations. Click
on the Parameters tab. Increase
the number of iterations (here
set from 10 to 100). Set the
minimum allowed value to 0 &
the maximum allowed value to
something above the actual
value (here set to 100). The
status area will switch to OK
when iterations ae completed.


We can open up the Air Rate
Calc spreadsheet & see that
the Air flowrate has been
adjusted to match the excess
oxygen specification.



Tying the Two Systems Together
Even though the steam cycle & fuel gas systems are in the same HYSYS flowsheet they are really
modeled separately. The steam cycle has converged with a basis of 1 kg/sec water circulation rate
& the fuel system has converged with a basis of 1 kg.mol/sec fuel gas. We will tie the systems
together by pushing the duty available from the fuel side of the boiler to the steam side &
adjusting the water circulation rate in the steam cycle.

Rev 1.0

23

February 26, 2015


Before we make any direct
connections lets create a
spreadsheet to summarize
the results from the two
systems. From the Model
Palette add a Spreadsheet;
double click to open.
Change the name to Overall
Performance. Click on the
Spreadsheet tab & set up
text fields that look like the
figure on the right.


Associate the material
flows, temperature, &
energy flows as shown in
the figure on the right.


Now lets connect the two systems.

Rev 1.0

24

February 26, 2015


Double click on the Condensate
stream in the steam cycle and delete
the value for the mass flowrate.
Notice that the intrinsic properties
for the stream are still calculated
(such as the molar enthalpy) but the
extrinsic properties that depend on
the flowrate are now missing.


Doubleclick on the icon for the HRSG
exchanger. Go to the Design tab &
change the Energy stream from QHRSG
to QBoiler. The simulation will still
show that it is complete.

You will want to delete the
unnecessary stream QHRSG from the
Flowsheet.


So whats changed? Go back & look
at the Condensate stream. Notice that
HYSYS has calculated a water
circulation rate to match up the
amount of boiler heat needed in the
steam cycle (on a kJ/kg basis) with
the proper water flowrate (on a
kg/sec basis).



Additional Stream & Unit Analyses
There are additional analyses that we may want to perform for this simulation. Since the goal of the
process is to create power we should be very interested to determine the various thermal
Rev 1.0

25

February 26, 2015


efficiencies of the systems. We have already started this analysis by putting calculations into the
Steam Cycle Summary spreadsheet to calculate the steam cycles thermal efficiency based on the
HYSYS results.

To calculate the efficiency of the boiler we need to determine the heating value of the fuel gas used.
We have already set up the format of the Overall Performance spreadsheet to do these calculations.

Open the Overall
Performance spreadsheet
Associate cell B3 will the
HHV rightclick on the
cell & choose Import
Variable; choose Fuel Gas,
Higher Heating Value, then
click OK. Associate cell B4
will the LHV rightclick
on the cell & choose
Import Variable; choose
Fuel Gas, Lower Heating
Value, then click OK. Add
formulas into D2 & D3 to
put the heating on a
flowing basis (i.e., multiply
the heating value by the
molar flow rate).

Note that even though the
numbers appear unitless
they really have units of
kJ/sec.

Lets add 2 columns for the
efficiency values. Go to the
Parameters tab & change
the number of columns
from 4 to 6. Set up labels
as shown on the right.


Now we want to add formulas to calculate the various values:
Rev 1.0

26

February 26, 2015

cell F2, =D4 / D2 (also change Variable Type to Unitless)


cell F3, =D4 / D3 (also change Variable Type to Unitless)
cell F5, =(D8 D7) / D4
cell F7, =(D8 D7 D6) / D2 (also change Variable Type to Unitless)
cell F8, =(D8 D7 D6) / D3 (also change Variable Type to Unitless)



There are many other capabilities that can be added since the Spreadsheet operation can make
changes & calculations in a live fashion. For example, an entire control sheet could be set up to
modify values & directly calculate results. Cells could be set up for the following inputs:
Fuel gas flowrate and its pressure & temperature.
The airs atmospheric pressure & temperature.
Airs humidity (would also require additional operations to properly add water while
keeping the rest of the components relative amounts the same).
Desired excess air.
Pressure drop through the boiler system.
Allowable stack outlet temperature.
Condensation temperature in the steam cycle.
Pressure drop through the steam side of the boiler.
Degrees of superheat in the boiler system.
Adiabatic & mechanical efficiencies of all rotating equipment.

Rev 1.0

27

February 26, 2015