Top Banner
Part 1 Modelling and simulation
45
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: FPP-model_sim

Part 1

Modelling and simulation

Page 2: FPP-model_sim

Chapter 2

Modelling of power plants

A. Leva and C. Maffezzoni

2.1 Introduction

Modelling power plant processes may be approached from different points of view, depending on the purpose for which the model is intended. Here, we shall restrict the presentation to the case (most interesting for engineering) where the model is built to allow system simulation over a rather wide range of operation (non-linear model) and is based on first principles and design data. This specification naturally leads to a model structuring approach based on the representation of plant components and of their interconnections, with evidence given to variables and parameters corresponding to well-defined measurements or physical entities. Possible experimental data are, generally, not used for system identification but for model validation, which may also include some model tuning. The models here are referred to as dynamic, that is, they are able to predict transient responses, even for large process variations. Since power plant dynamics operate on a range of time scales, it is advisable to focus on the use of a dynamic model over a defined horizon. For simulation models representing an entire power plant or a large subsystem, it is quite common to seek model accuracy over an intermediate time-scale, i.e. in the range of a few tenths up to a few thousands of a second. This will be the implicit assumption in the description of the basic models. Finally, we shall limit the scope of this chapter to power plants based on the firing of a fossil fuel, i.e. conventional thermal and gas turbine plant, possibly equipped with heat recovery boilers.

There is a long track record of research and engineering effort in this area, dat- ing back to the pioneering work of Chien et al. (1958), passes through the earlier engineering-oriented works of Caseau et al. (1970), Weber et al. (1976), Modular Modelling System (1983), Lausterer et al. (1984), Maffezzoni et al. (1984), and leads to presently available simulation codes (APROS; ProTRAX; Cori et al. , 1989; SIMCON-X, 1994a,b). With reference to the survey papers of Carpanzano et al.

Page 3: FPP-model_sim

18 Thermal power plant simulation and control

(1999) and Maffezzoni (1992), the objective here is to review the important knowl- edge (concerning both methods and applications) accumulated along that track and to transfer it to the unifying framework of object-oriented modelling, which appears to be most effective in dealing with real-size engineering problems and in sharing modelling knowledge among diverse users.

So, the chapter is organised as follows: first the basic concepts of object-oriented modelling are introduced with reference to the typical structures met in thermal power plant, then a review is presented of basic models for typical power plant components. Subsequently, the task of defining a realistic model of the plant distributed control sys- tem (DCS) is investigated; some remarks about the application of dynamic decoupling and methods of model validation are then reported.

2.2 Model structuring by the object-oriented approach

2.2.1 Foreword

Object-oriented modelling (OOM) is a widely accepted technique which has already produced both modelling languages (Mattsson and Andersson, 1992; Maffezzoni and Girelli, 1998; Elmqvist et al., 1999) and software packages (Piela et al., 1991; Elmqvist et al., 1993; gPROMS, 1998). The approach is based on a number of paradigms, among which a fundamental role is certainly played by the following:

• The definition of physical ports (also referred to as terminals) as the standard interface to connect a certain component model, in order to reproduce the structure of the physical system.

• The definition of models in a non-causal form permitting reuse, abstraction and unconditional connection.

• The mutual independence of the model interface (the physical ports) and its internal description.

State of the art OOM is well represented by the development of the Modelica project (1999), a recent international effort to define a standard modelling language. At present there are well-assessed methods to treat lumped parameter components (LPC) while, on the contrary, there are no unified solutions to describe distributed param- eter components (DPC), which are quite important in power plant modelling. As such, in the remainder of the chapter we shall adopt the Modelica language as the formalism for writing the described models (whose specification manual is available at www.modelica.org) with the minimum extension required to cope with DPC's, for example heat exchangers, according to the approach proposed by Aime and Maffezzoni (2000).

2.2.2 Classification of plant components and of physical ports

From the point of view of model structuring, it is convenient to look at the typical layout of a fossil-fired power plant (Maffezzoni and Kwatny, 1999). In the case of a classical Rankine-cycle unit, the principal subsystems are the steam generator

Page 4: FPP-model_sim

Modelling of power plants 19

(or boiler), the steam turbine, the condensed water cycle and the electrical subsystem. The structure of the power station's electrical subsystem is not relevant to the principal characteristics of a power unit, so in the following the electrical subsystem will be drastically simplified by considering only the electromechanical balance of the alternator.

Modelling power units by aggregating component models is very convenient because it reflects the physical plant layout and enhances reuse of modelling soft- ware. Plant components may be classified first by looking at the subsystem they belong to, then considering the nature of the process transformations that they imple- ment. Structuring by modules is, to a certain extent, a matter of choice: defining large modules implies a simpler aggregation structure, while defining small modules implies a larger reuse when the plant structure changes. Here, the 'size' of basic modules is chosen according to the best practice employed in engineering dynamic simulators: this choice is compatible with packages like APROS (www.vtt.fl) and LEGO (Coil et al., 1989), widely used for power plant simulators, and DYMOLA (www.dynasim.se), appropriate for implementing an object-oriented approach to physical system modelling.

2.2.2.1 Boiler components The boiler is the most complex subsystem, and it can be split into a pair of interacting circuits: the water-steam circuit and the air-gas circuit. There are components which take part in one circuit only (one-side components, OSC) like pumps, valves, headers, etc., while there are components, namely heat exchangers, which take part in both cir- cuits (two-side components, TSC), being devoted to heat transfer from the combustion gas to water and steam. To define the structure of an OSC it is convenient to introduce a physical port through which a component may interact with another, i.e. the thermo- hydraulic terminal (THT), which is specified through the following Modelica script:

type Pressure = Real(quantity = "Pressure", displayUnit = "Pa", unit = "Pa");

type MassFlowRate = Real(q~antity = "MassFlowRate", displayUnit = "kg/s", unit = "kg/s");

type Enthalpy = Real (quantity = "Enthalpy", displayUnit = "J/kg", unit = "J/kg" ) ;

connector THT

Pressure p;

flow MassFlowRate w;

Enthalpy h;

end THT ;

The Modelica language (like many others) allows type definitions to enhance the clarity of the simulation code. This is illustrated in the previous script by defin- ing Pressure, MassFlowRate and Enthalpy. Throughout this work we shall assume that all the required types are defined in this way, hence we shall refer to types like Quality, AngularVelocity, and so forth. We do not report their defini- tions because of space limitations and because they can be immediately deduced from those given. Note also that Modelica has an extensive library of predefined types. For instance, the process scheme of Figure 2.1 a suggests the model structure of Figure 2. lb.

The connection between the pump THT Out (outlet) and the valve THT In (inlet) means that the pressure and enthalpy at the pump outlet coincide with the pressure

Page 5: FPP-model_sim

20 Thermal power plant simulation and control

a < °ut

Figure 2.1 Simple process scheme and its model structure

Gas

Figure 2.2 Typical heat exchanger configuration

and enthalpy at the valve inlet, respectively, while the mass flow rates at the pump outlet and valve inlet sum to zero. Pressure and enthalpy are effort variables while mass flow rate is a flow variable.

The interaction between a couple of neighbouring OSCs can always be modelled by the direct connection of two THTs. The Modelica script stating the aggregation of Figure 2.1 is as follows:

connect (PUMP. Out, VALVE. In) ;

where, of course, PUMP and VALVE are instances of suitable elementary models stored in some library. The THT can be used both for OSCs belonging to the steam- water circuit and to the air-gas circuit. Considerably more complex however, is TSC structuring, because in this case we need to model, in a modular way, the variation in heat transfer configurations of boiler tubular heat exchangers. A typical situation is depicted in Figure 2.2, where gas flowing through the boiler back-pass exchanges heat with the principal bank (A) disposed in cross-flow and with an enclosure panel (B) disposed in long-flow.

The model of a complex heat exchanging system like that of Figure 2.2 could be structured according to the very general approach proposed by Aime and Maffezzoni (2000), where spatially distributed heat transfer configurations are introduced. More pragmatically, one can exploit two common properties of boiler heat exchangers:

• Gas flows have negligible storage with respect to metal wall and steam-water flows.

Page 6: FPP-model_sim

Modelling of power plants 21

Figure 2.3 Modular structure for heat exchanging system

• The gas ducts may be split into a cascade of gas zones, where the gas temperature can be assumed to be almost uniform or linearly varying.

Zone splitting is guided by the structure of the tube bank: typically a gas zone extends to include one row or a few rows of tubes. The model structure corresponding to the situation of Figure 2.2 is sketched in Figure 2.3.

The connection between a bank and a gas zone takes place through a distributed heat transfer terminal (dHT), which consists of the bank walls' temperature profile Tw(x, t) and the heat flux profile ~0(x, t) released to the wall. Tw(x, t) and qg(x, t) are functions of time t and of the banks' tube abscissa x. A typical finite-element discretisation of Tw(x, t) and ~0(x, t) replaces such functions with their interpolating approximations obtained from two vectors of nodal temperatures and fluxes. Thus, in simulation code, Tw(x, t) and ~0(x, t) are represented by two vectors of suitable dimensions, denoted in the following by Tw (t) and • (t), respectively.

In Figure 2.3, it has been assumed that the transfer of energy from one gas zone to the adjacent one is solely due to mass transfer, as implicitly established by the connection of two THTs. There are, however, high-temperature gas volumes (either in the furnace or in other parts of the back-pass) where radiation heat transfer from one gas zone to those adjacent is not negligible. This requires the introduction of a specific port that extends the THT to permit transfer of heat independent of mass flow. In principle, at a boundary surface between two fluid volumes, we may have transfer of energy by convection (expressed by the group wh), radiation and/or diffusion; mechanical work is already included in the product wh. We may call this physical

Page 7: FPP-model_sim

22 Thermal power plant simulation and control

Furnace ~ Zones ~ Zones ~ Furnace zone inter- inter- zone i- 1 action action i + 1

Furnace z o n e

i

I I .T r Gas wall interaction

I [aHT] Furnace wall

tubes

Figure 2.4 Interactions between furnace zones and walls

port the thermo-hydraulic and heat transfer terminal (THHT), which will consist of the following variables:

• the mass flow-rate w, enthalpy h, pressure p and heat rate Q at the interface between the gas volumes;

• the radiation temperature Tr (e.g. the flame temperature) of the lumped gas volume.

For instance, a model of the furnace zone, where there are neither burners nor sec- ondary air inputs, can be structured as shown in Figure 2.4, where the heat transfer terminal (HT) consists of the following two variables:

• Qw, the heat rate to the furnace wall • Tr, the radiation temperature of the gas zone.

Terminals dHT, THHT and HT are defined in the Modelica language as follows:

connector

parameter

flow

end dHT; connector

extends

flow

end THHT; connector

flow end HT;

dHT

Integer vectorSize=l; Temperature tempProfile[vectorSize] ; HeatFlux

heatFluxProfile[vectorSize] ;

THHT

THT; Temperature Tr; HeatFlow Q;

HT Temperature Tr; HeatFlow Qw;

Page 8: FPP-model_sim

Modelling of power plants 23

Note the distinction between He a t F l u x ( W / m 2) and He a t F 1 ow (W). These scripts employ the Modelica e x t e n d s clause, which allows us to define a model or a connector by adding elements to a previously defined one. Such clauses are available in any object-oriented modelling language.

It should be noted that the situation of Figure 2.3 is a particular case of that depicted in Figure 2.4: in Figure 2.3 the interaction between two adjacent zones is very simple (there is no heat transfer besides convection) so that zone interaction becomes trivial and is omitted; the gas-wall interaction is summarised by a heat transfer coefficient, directly incorporated in the gas zone.

To fully understand the role of the model ZONES INTERACTION, we provide here a possible implementation:

WL + WR = 0 (2.1)

PL -- PR = 0 (2.2)

hL -- hR = 0 (2.3)

QL + QR = 0 (2.4)

QL = K(T 4 - T 4) (2.5)

where the subscripts 'L' and 'R ' denote variables belonging to the left and fight terminals, respectively, and K is the radiative heat transfer coefficient.

2.2.2.2 Steam turbine components

For the purpose of power plant simulation, turbines are generally modelled as lumped parameters. When accurate modelling is required, it is usual to split a turbine into a number of cascaded sections, a section being in turn composed of a number of cascaded stages. The extension of a section is typically dictated by some physical discontinuity along the steam expansion, such as the presence of steam extraction or a change in the stage design (e.g. when passing from impulse to reaction stages).

Interaction between a turbine section and other components at its boundary may simply be modelled by THTs as shown in Figure 2.5, while a mechanical terminal (MT) is needed to represent the power transfer to the shaft.

The MT consists of the two variables w (angular speed) and r (torque). The same approach can be used for gas turbines, where the situation is even simpler because there are no present physical discontinuities. The MT is represented in Modelica as follows:

connector MT AngularSpeed omega ;

flow Torque tau;

end MT ;

2.2.2.3 Condensate cycle components

The condensate cycle is composed simple compact components like valves, pumps, headers, etc. and of more complex heat exchangers and/or storage tanks. Model

Page 9: FPP-model_sim

24 Thermal power plant simulation and control

Steam I ex t rac t ion

I

Turbine Turbine Turbine section IH[~HI section [ H [ ~ I Header section

I ]

Shaft

I

Alternator

Turbine section

~ - - - - - ~ - - ] _

I IMTI-

Figure 2.5 Interactions between turbine sections and boundary components

Figure 2.6

I Low pressure I

turbine

I _

C°°ling ~ I THT ' ~ C°°ling water Condenser water

discharge pump piping ~ ~ _

I

I T.TI I Extraction

pump i

Model structuring example for the condensate cycle

structuring is quite obvious for the former components, whereas non-trivial questions arise for complex heat exchangers such as the condenser, deaerator, and low-pressure and high-pressure heaters. There are two possible approaches: to build the heat exchanger model as the aggregate of simpler objects or to directly define the heat exchanger as an elementary (indivisible) component. Since the internal structure of the condensate heat exchangers is quite complex while the design of such large com- ponents is highly repetitive, it is advisable to follow the latter approach. In this case, physical ports between cycle components are still THTs. An example of structuring is given in Figure 2.6.

Page 10: FPP-model_sim

Modelling of power plants 25

I Fuel I storage

I ] THT ] ~ Valve position Fuel valve

I

~ ~ 1 THT 1 ~ T~Exhaust Atmosphere Compressor Combustion Gas turbine header chamber

I I I MT I Shat~ I MT I

Figure 2.7 Model with an input control terminal

2.2.2.4 Gas turbine components

Gas turbines have become increasingly important in power generation, because of the outstanding efficiency achievable by combined cycle plants. The essential components are:

• the gas turbine • the compressor • the combustion chamber.

Model structuring is generally simple, as sketched in Figure 2.7, where ICT denotes an input control terminal, that is a control port where a command signal is issued.

Internal modelling of basic components is, however, a non-trivial task, especially because it is often very important not only to predict power release of the turbo- alternator but also concentration of pollutants to the atmosphere. This is discussed in the next section.

2.2.3 Aggregation of submodels

Reuse of models for different case studies is enhanced by modularity, structuring of elementary models as non-causal systems and standardisation of physical ports (or terminals). However, it is common practice to repeat plant or subsystem designs from one power unit to another. For instance, we may store in a library the model of an economiser, which may result from aggregation of a block scheme like that of Figure 2.3. Of course, by aggregating model objects internal physical terminals disappear (they saturate with one another) so that the global model of the economiser (including its enclosure) may look as in Figure 2.8.

Reusing an aggregate model implies that the model structure and model equations are not accessible to the user (they cannot be changed when using the aggre- gate); what are specific to a given instance of the aggregate model are the model

Page 11: FPP-model_sim

26 Thermal power plant simulation and control

Connection to enclosure tubes

Connection to gas circuit

Connection to high-pressure

condensate circuit

Economiser

Connection to enclosure tubes

~T ~ Connection to gas circuit

~T HT Connection to steam drum

Figure 2.8 Aggregation of model objects (economiser)

parameters which must be transferred from the internal submodels to the resulting aggregate.

2.2.4 Internal model description

The typical internal structure of a simple (non-aggregate) model using the Modelica language may be as follows:

model SIMPLEMODEL parameter ConnectorType VariableType

equation

end SIMPLEMODEL;

ParamType paramName; connectorName; variableName;

When an aggregate model AGGREGATEMODEL is obtained by composing two or more simple models (S IMPLEMODEL1, S I MPLEMODEL2 in the example), it can be defined by a Modelica script of the form:

model AGGREGATEMODEL

SIMPLEMODEL SIMPLEMODELI (paramName=paramValuel);

SIMPLEMODEL SIMPLEMODEL2 (paramName=paramValue2);

connect(SIMPLEMODELl.connectorName,SIMPLEMODEL2.connectorName); end AGGREGATEMODEL;

It is worth noting that the section equation in the format of the simple model is generally constituted by switching differential-algebraic equations (DAEs), i.e. alternative sets of DAEs that describe the system dynamics under different conditions. (Maffezzoni and Girelli, 1998; Maffezzoni etal., 1999). Moreover, both for the DAEs and the logical conditions, some quantities may be evaluated by referring to functions

Page 12: FPP-model_sim

Modelling of power plants 27

of one or more variables, including look-up tables. Partial differential equations may be treated by finite element or finite difference approximations written as implicit matrix equations (Quarteroni and Valli, 1997). All these constructs are compatible with the Modelica language (and with several other modelling formats.)

2.3 Basic component models

2.3.1 The evaluation of steam and other fluid physical properties

2.3.1.1 Steam properties

The large majority of models considered in this chapter require that various ther- modynamic properties are evaluated starting from a couple of state variables. It is quite common that the computation of a global power plant model requires many thousands of steam property evaluations at each time step. So, an efficient and accurate treatment of water-steam properties is crucial for power plant simula- tion. Moreover, it is generally required that one or more properties be evaluated from at least three different couples of entry variables, typically (p, h), (p, S) and (p, T), where p is the pressure, h enthalpy, S entropy and T tempera- ture. Finally, for dynamic modelling, not only standard thermodynamic quantities, like enthalpy, entropy, pressure and density are needed, but also viscosity, con- ductivity and thermodynamic partial derivatives (in particular specific heats at constant pressure Cp and constant volume Cv) or line derivatives along the saturation c u r v e .

Water-steam properties can be computed using steam tables, based on (very complex) empirical formulas (Properties of Water and Steam, 1989), from which the required derivatives can be obtained by symbolic manipulation. These formulas, however, cannot be used for modelling in their current form, because entry variables are not those needed, formulas are very complex and, being non-linear, they should be used in a Newton-like algorithm to determine even a single property.

Therefore, the sole practical approach is to build a suitable grid in the thermo- dynamic plane, with a convenient number and disposition of nodes with respect to the saturation curve, so as to allow smooth and accurate approximation over the whole plane. Then, the 'model of the steam-water fluid' is constituted by large look-up tables with the required entry variables, yielding either a single property or a vector of properties, depending on the application. Within the object-oriented modelling environment, the s t e a m - t a b l e s may be treated either as a set of func- tions or as a simple model to be incorporated by any component model, when required.

In this work the first option has been chosen. The steam tables are implemented as a set of functions receiving two parameters. In the case of the full tables these are the (p, h), (p, S) or (p, T) couple; in the saturation tables these are the pressure and a two-valued parameter stating whether the liquid or vapour properties are required. This can be a boolean parameter, although in the examples presented herein its value

Page 13: FPP-model_sim

28 Thermal power plant simulation and control

is represented by the strings l i q u i d and v a p o u r for better clarity. There is one function for each property and for each input couple. For example, the functions

SteamPHtablesEnt ropy (p, h) SteamPStablesDdensityDpressure (p, S ) SteamSATtablesDensity (p, "vapour" ) SteamSATtablesDenthalpyDpressure (p, "liquid" )

return the steam entropy at pressure p and enthalpy h, the partial derivative of the steam density with respect to pressure at pressure p and entropy S, the saturated vapour density at pressure p and the derivative of the saturated liquid enthalpy with respect to pressure computed along the saturation curve at pressure p, respectively. Several functions like these are used in the equations of the models that will be introduced from now on, and the syntax should be self-explanatory. For simplicity it will be assumed that all these functions are overloaded for vector treatment, so that for example if in the first of the previously mentioned functions the 13 argument is a scalar while h is a vector, the corresponding vector of entropies is returned. This is not difficult to implement in modern programming languages.

2.3.1.2 Air and flue gas properties

Similar to the steam case, it is also necessary to evaluate various properties of air or flue gas including enthalpy, density, specific heat, etc. from the state variables. As is known, the 'state' required to determine any property of a gaseous mixture comprises the gas composition, as well as some thermodynamic variables like the mixture pressure and temperature. Accurate modelling of gas dynamics would require balance equations for the different species involved, accounting also for the chemical kinetics, at least in the equilibrium state.

However, when the combustion gas composition undergoes such limited variation so as not to affect the relationships among the relevant thermodynamic properties significantly, and/or the accuracy required for the model is not very high, then one can evaluate the gas properties as if the composition was equal to a constant (nominal) value. In this case, the gas functions depend on two state variables only. The same simplification can be used for the air, provided a suitable 'nominal' composition is employed.

As a result, for air and flue gases this work adopts the same solution as for steam: two sets of functions similar to those presented are used, where the function names' prefix is Gas or A i r in lieu of S t e a m and the rest of the syntax is the same. The Gas and A i r functions employ two different nominal compositions, which can be coded in the functions themselves or as a global variable, leaving only a couple of thermodynamic variables as arguments.

2.3.2 The boiler's water-steam circuit

2.3.2.1 Heat exchanger segment

This describes the dynamics of the fluid flowing into a tube bundle and of the metal wall, interacting with the external fluid (gas). For one-phase flow, the classical way to build such a model is by the equations of mass, energy and momentum for the fluid

Page 14: FPP-model_sim

Modelling of power plants 29

stream and the energy equation for the metal wall:

Ow a i ~ + ~ x = 0 (2.6)

A Oh Oh P i - ~ - Ai~---Pt + W~x = witPi (2.7)

dz Cf wlwl ai ~x -'l- p Aig-~x + -~ooi--~i = O (2.8)

0Zw AwpwCw ~ ---- OgetPe -- O)i~0i (2.9)

where p, p, h, w are the density, pressure, enthalpy and mass-flow rate of the fluid (depending on the tube abscissa x, 0 < x < L, and on the time t), Tw is the wall (mean) metal temperature, ~oi the heat flux from the metal wall to the fluid, ~Pe the heat flux from the external gas to the wall, Ai the tube (bundle) internal cross-section, o) i the corresponding total perimeter, We the total external perimeter, z the tube height, g the acceleration due to gravity, Cf a frictional coefficient, and Aw, Pw and Cw the metal cross-sectional area, the density and specific heat capacity. Note that, in the momentum equation, the effects of inertia and of kinetic energy variation along x have been neglected, as normal.

To complete the model, a suitable correlation for evaluating ~0i is needed. Assuming turbulent flow in the tubes, ~oi is usually expressed as:

qgi = yi(T - Tw) (2.10)

where T is the fluid temperature at (x, t) and Vi is the heat transfer coefficient for turbulent internal flow (Incropera and Witt, 1985).

Since the pressure drop and mass storage in a heat exchanger tube have definitely faster dynamics with respect to thermal energy storage, it is convenient to build the model with the following approximations:

• The pressure p(x, t) can be considered 'nearly constant' along x, 0 < x _< L, i.e. p(x, t) ~- p(L, t) :--- po(t), for the sake of the evaluation of p and Op/Ot in equations (2.6)-(2.8).

• The mass flow-rate w(x, t) can be considered 'nearly constant' along x, 0 _< x <_ L, i.e. w(x, t) ~- to(O, t) := wi(t), in equations (2.7) and (2.8).

Then, integrating equations (2.6) and (2.8) with respect to x, we obtain:

Ai -~ p "~dx-'l-ai ~P h dx - - : / / ) i - t o O d t (2.11)

fO L dz Cf (oi fo L 1 Ai(Po - Pi) + Aig P-~x dx + -~-- .--Twwilwil - dx = 0 (2.12) Z A . ~ i P

where (8p/Oh)p and (Op/Op)h denote the partial derivatives of p with respect to the thermodynamic state variables h and p.

Page 15: FPP-model_sim

30 Thermal power plant simulation and control

Equation (2.1 1) can be written as:

O(po(t ) , h(., t)) dp°( t ) - wi(t) - Wo(t) + F(po( t ) , h(., t), h(., t)) (2.13) dt

where the functions 69 and F correspond to the second and first integral of (2.11), respectively, while h(., t) and/;t (., t) are the enthalpy profile and its derivative on the whole domain 0 < x < L.

Equation (2.12), in turn, can be written as:

Po - Pi + g L ~ ( p o , h(., t)) + kwilwilO(po, h(., t)) = 0 (2.14)

where ~p and ~ are suitable functions and k = (LCfogi)/(2A~), Cf obtained from suitable correlations. If any spatial approximation of the enthalpy profile is assumed, for example the finite element approximation

N

h(x, t) ~ ha(x, t) := Z hj ( t )o t j (x) j = l

then 69, F, ~ and fi become functions of the nodal enthalpy vector H( t ) = [hl (t), hz(t) . . . . . hu( t )] ' and of its derivative i-/(t). Applying the finite element approximation with a Petrov-Galerkin type method (Morton and Parrot, 1980; Quarteroni and Valli, 1997), to equations (2.7) and (2.9), one obtains a couple of N-vector equations to be used for the computation of the fluid and metal temper- ature profiles. In the most general case, if weak boundary conditions are imposed (Quarteroni and Valli, 1997), such equations take the form

AI-I + w i B H + E H : A dp° V - D T + D T w + MhIN dt

K T w : G ( T - Tw) + C~e

where T and Tw are the fluid and metal nodal temperature vectors, ~e is the nodal external heat flux vector, and the matrices A, B, C, D, E, G, K and vectors V, M depend on dimensional data, on the fluid properties and on the specific finite element method chosen (applied to the interpolating functions otj and on the weighting functions used for computing the residual over the whole domain 0 < x < L). Details are omitted for brevity and can be found in Lunardi (1999), but it is important to note that weak boundary conditions do not constrain the first and last element of H to equal the terminal enthalpies. Moreover, the matrix E and vector M enforce the boundary condition on the side where the fluid enters the heat-exchanger segment (with enthalpy hiN). As such, they have only one non-zero element. The position of this element depends on the sign of the flow rate, but even despite this, the vector equations are affected only by the input and output structure, while the state variables (vector H) remain the same and cannot undergo change. Assuming a positive direction flow that from the ' i ' terminal to the 'o ' terminal, and indicating by m and e the non-zero

Page 16: FPP-model_sim

Modelling of power plants 31

elements of M and E, this means that

i f w > 0

h l N = h i , M = [ m 0 . . . 0]', E = d i a g ( e , 0 . . . . . 0), h o = H ( N )

while if w < 0

h l N = h o , M = [ 0 . . . m]', E = d i a g ( 0 . . . . . 0, e), ho = H ( 1 ) .

Hence, this model can be implemented seamlessly in any language assuming a conditional equation construct like the i f clause in Modelica.

It is also worth noting that, with the adopted approach, a heat-exchanger seg- ment uses a coarse approximation for the pressure and flow-rate profiles along the tube (one node for each segment) and a more accurate approximation for the enthalpy/temperature profiles. This really corresponds to the nature of the process dynamics, where hydraulic phenomena in heat exchangers are characterised by a much simpler spatial distribution with respect to thermal phenomena.

The external flux vector ~ e is one of the variables included in the dHT (Figure 2.3); a convenient correlation as a function of the external gas properties and, possibly, of the wall temperature is naturally incorporated in the model of the gas zone corre- sponding to the heat-exchanger segment. A possible Modelica formulation of the model is given by the following script:

model HeatExchangerSegment

parameter Length L,omegai,omegae;

parameter Area Ai,Aw;

parameter Density row;

parameter SpecificHeat cw;

parameter HeatXferCoeff gammai;

parameter FrictionCoeff Cf;

parameter Integer N=I;

parameter Length heightProfile[N];

parameter Acceleration g;

dHT Wall (vectorSize=N);

THT Inlet,Outlet;

Pressure pi,po;

MassFlowRate wi,wo;

Enthalpy hi,ho,H[N],hIN;

Temperature T [N] , Tw [N] ;

HeatFlux Phie[N];

SpecificVolume V[N];

Real k,m,e;

Real A[N,N] ,B [N,N] ,C[N,N] ,D [N,N], E IN,N] ,G [N,N] ,K[N,N] ,M[N] ;

equation

Expression ofvec~rsand matricesdependingontheFE me~odchosen(Lunardi, 1999).

TW = Wall.tempProfile;

Phie = Wall.heatFluxProfile;

pi = Inlet.p; po = Outlet.p;

wi = Inlet.w; wo = -Outlet.w;

hi = Inlet.h; ho = Outlet.h;

k = L*Cf*omegai/(2*Ai^3);

Page 17: FPP-model_sim

32 Thermal power plant simulation and control

FunTheta (po, H) *der (po) = wi-wo+FunGamma (po, H, der (H)) ;

po-pi+g*L*FunPsi(po,H,heightProfile) + k*wi*abs(wi)*FunVtilde(po,H) = 0;

A*der (H) +wi*B*H+E*H = A*der (po) *V-D*T+D*Tw+M*hIN;

if wi>0 then hIN= hi; M[I] = m; M[N! = 0 ; E[I,I] = e; E[N,N] = 0 ; ho = H[N];

else hIN= ho; M[I] = O; M[N] = m ; E[I,I] = 0; E[N,N] = e ; h = H[I];

end if;

K*der(Tw) = G*(T-Tw)+C*Phie;

end HeatExchangerSegment ;

Note that the parameters used for the vector expansion (like N in this case) must be assigned a (default) value in the prototype models; this value can then be changed when instantiating the model. For completeness it must be said that some modelling languages (e.g. gPROMS, 1998a,b) provide native support for partial differential equations. In such cases it is possible to define a variable over one or more contin- uous spatial coordinates (in gPROMS this is termed a d i s t r i b u t i o n doma in ) and write equations in their partial differential form (using constructs like the p a r t i a l clause in gPROMS). In these languages, the choice of spatial discreti- sation is made by the user separately from the model. The models presented herein could be implemented in such languages by convenient redefinition of the distributed terminals.

In the presented script the heat transfer coefficient )4 has been considered a param- eter. Accurate modelling may require that it be considered as a variable, computed from empirical correlations. These can be implemented as functions if required, since the data needed for calling these functions are the fluid properties and some geometrical data, which are available in the model.

In the heat-exchanger segment script, the parameter N determines the length of the vectors used for spatial discretisation, while h e i g h t P r o f i 1 e is passed to the FunPs i function implementing 7t as defined in (2.14) and represents the tube height profile. Moreover, F u n T h e t a , FunGamma and F u n V t i l d e implement 0 , F and

as defined in (2.13) and (2.14). In steam generation, it is very important to work with two-phase flow heat trans-

fer, because the evaporator is often the core of the power generation. In the forced convection regime (which is generally applicable to boiler evaporators), two possible models are applicable to power plant simulation:

(a) a flow model where the vapour and liquid phase velocities vv and VL are assumed identical (vv = vL); called a fully homogeneous model;

(b) a flow model where the vapour and liquid phase velocities may be different but related by a static factor depending on the fluid conditions; this model is also called a slip model (vL = svv) or drift model (rE = vv - VD), where the slip s or the drift velocity VD are given by suitable correlations (Collier, 1981).

For high-pressure evaporations model (a) is often acceptable: in this case the two- phase flow representation takes the same form as system (2.6)-(2.9), with suitable definition of the density and enthalpy of the two-phase mixture.

A non-trivial aspect of two-phase flow is the evaluation of heat transfer through the boundary layer (Collier, 1981), because heat transfer is heavily affected by the flow regime. Empirical correlations are available for typical conditions, but the variety of

Page 18: FPP-model_sim

Modelling of power plants 33

situations is very large. For boiler dynamic modelling, it is often acceptable that the heat transfer coefficient - to be used in equation (2.10) - is so large as to assume, in equation (2.9) that,

0Tw dTsat dp

Ot dp dt

where Tsat (p) is the saturation temperature of the fluid depending on the pressure p. This allows the elimination of Tw and of the corresponding equation. Of course, in this case the evaluation of Yi is not necessary.

2.3.2.2 Steam drum

A model of the steam drum is useful for circulation boilers but is also applicable to other components where the vapour and the liquid phase interact within a large volume (for instance, the deaerator). A typical steam drum is equipped with the following fluid inlets and outlets (Figure 2.9):

• feedwater inlet wf (usually subcooled liquid) • two-phase mixture inlet Wr (coming from the risers) • (nearly) saturated steam outlet Wv • slightly subcooled water outlet wd (to downcomer tubes).

The mixture flow Wr coming from the risers, with a steam quality of Xr, separates t (with steam quality x~) and a saturated water into a nearly saturated steam flow w v

flow (Wr - w~). As the flow rates coming from the risers and from the feedwater are considerable, interaction between the two phases at the separation surface turns out to have a negligible effect (Leva et al., 1999). With this assumption of perfect phase segregation and the further approximations that the pressure is uniform, that the heat flux to the wall is negligible and that each phase is well stirred, the model equations

wf

Figure 2.9 Steam drum component

Page 19: FPP-model_sim

34 Thermal power plant simulation and control

can be written as follows:

, Xr (2.15) tOv =tOr-57 Xv

dMv , (2.16) dt -- wv - Wv

dEv ! l = w v h v - w v h v (2.17)

dt dM~

= (Wr - Wtv) + w¢ - Wd (2.18) dt

dEl (Wr W'v)hls + wfhf Wdhl (2.19) dt

where Mv = Pv Vv is the steam mass (Pv and Vv are the steam density and volume), E v = V v ( p v h v - p ) is the total steam energy (hv is the steam enthalpy and p the pressure in the cavity), h~v = hvs - (1 -XPv) (hvs - his) is the enthalpy of W'v (hvs and his are the saturation vapour and liquid enthalpies), Ml = p l ( V - Vv) is the liquid mass (V is the total volume of the drum and Pi the liquid density), E1 = ( V - V v ) ( p l h l - p )

is the total liquid energy (hi is the liquid enthalpy) and ht is the feedwater enthalpy. Equations (2.15)-(2.19) represent the steam separation (x~ is a parameter), mass conservation in the steam volume, energy conservation in the steam volume, mass conservation in the liquid volume and energy conservation in the liquid volume.

The model has four state variables: p, hv, hi, Vv. The parameter X~v characterises the separation efficiency and should be given a value in the interval 0 .97-1.0 according to the design specification. Experiments (Leva e t a l . , 1999) show that steam wetness may have a non-negligible effect on the superheated steam temperature; unfortunately, it is quite difficult to correlate its value to the drum conditions (e.g. the unit load),

' at its nominal value is generally an appropriate choice. Of course, Pv, so setting x v Pl, hvs, his are computed using steam tables with entries p and hv or hi. A possible Modelica script for the drum model is as follows:

model SteamDrum

parameter Volume v;

parameter Quality xvprime;

THT FeedWaterInlet,SteamOutlet;

THT RisersInlet,DowncomersOutlet;

Mass MI,Mv;

Volume Vl,Vv;

MassFlowRate wf,wr,wd,wv,wvprime;

Density rol,rov, rols,rovs;

Pressure p;

Enthalpy hf,hr,hd,hl,hv,hvprime,hls,hvs;

Quality xr;

Energy EI,Ev;

equation

wf = FeedWaterInlet.w ; wr = RisersInlet.w;

wd = -DowncomersOutlet.w ; wv = -SteamOutlet.w;

hf = FeedWaterInlet.h ; hr = RisersInlet.h;

hd = DewncomersOutlet.h ; hv = SteamOutlet.h;

p = FeedWaterInlet.p ; p = RisersInlet.p;

p = DowncomersOutlet.p ; p = SteamOutlet.p;

xr = (hr-hls)/(hvs-hls); wvprime = wr*xr/xvprime;

Page 20: FPP-model_sim

Modelling of power plants 35

der(Mv) = wvprime-wv; der(Ev) = wvprime*hvprime-wv*hv;

der(Ml) = (wr-wvprime)+wf-wd; der(El) = (wr-wvprlme)*hls+wf*hf-wd*hl;

Mv = Vv*rov; Ev = Vv*(rov*hv-p); M1 = Vl*rol; E1 = Vl*(rol*hl-p);

V = Vv+Vl;

hvprime = hvs-(l-xvprime)*(hvs-hls);

rov = SteamPHtablesDensity(p,hv); rol = SteamPHtablesDensity(p,hl);

rovs= SteamSATtablesDensity(p,"vapour"); rols = SteamSATtablesDensity(p,"liquid");

hvs = SteamSATtablesEnthalpy(p,.vapour.); hls = SteamSATtablesEnthalpy(p,"liquid");

end SteamDrum;

2.3.2.3 Control valve

A control valve (see Figure 2.10) is a 'small-volume' component, for which storage of any quantity can be neglected. Its model will therefore be expressed by algebraic equations, which in fact are:

ho = hi (2.20)

w = f(Pi , Po, hi, y) (2.21)

where hi and ho are the inlet and outlet enthalpies, Pi and Po the upstream and down- stream pressures, w the mass-flow rate and y the valve stroke. The flow equation (2.21) can be written according to a recommended intemational standard, for instance the Instrumentation, Systems and Automation Society (ISA Handbook of Control Valves, 1971), which generally covers all the possible fluid states, flow conditions and valve types. These international standards are conceived to supply formulas applicable for valve sizing, so that their application to the flow equations is affected by the following limits:

• prediction may be a little conservative in general and even crude in those conditions where the valve should not operate (e.g. cavitation)

• flow prediction at partial valve opening may not be very accurate.

However, there is no practical alternative to the use of sizing equations, except for those cases where specific experimental data are available.

For simulation, the robustness of the valve model at low flow rate is very important because it is often necessary to simulate conditions where the valve enters no-flow conditions. Since the flow equation (2.21), derived from sizing formulas, does not consider this case, it is necessary to modify the equation to extend its applicability down to w --+ 0, though for very small values of w the accuracy is not important. This measure can also be combined with the representation of a typical device which prevents the valve from undergoing reverse flow. The modification of the flow equation

Pi ~ Po hi h o

w

Figure 2.10 Control valve component

Page 21: FPP-model_sim

36 Thermal power plant simulation and control

at low w is required to avoid discontinuity of the equation Jacobian when w ~ 0. The Modelica script of the control valve may be as follows, where the parameters are the valve Cvmax and the integer identifier CharTD used for selecting the valve characteristics:

model CentrolValve parameter Real Cvmax;

parameter Integer CharID; THT Inlet,0utlet;

Real y;

equation

Inlet.h = Outlet.h; Inlet.w = -Outlet.w;

Inlet.w = ValveCharacteristic(Inlet.p,Outlet.p,Inlet.h,y,Cvmax,CharID);

end ControlValve;

2.3.2.4 Header

The typical situation is depicted in Figure 2.11. There are n inlet flow rates, which are supposed to mix perfectly, and m outlet flow rates. Simplifying assumptions are that the pressure p is uniform, as is the fluid enthalpy. Energy storage in the metal body may be relevant.

The model is built by mass and energy conservation for the finite volume V of the header:

dh d o n p V - - - V ---5-~ = Z wu(hij -- h) + vS(Tw - T) (2.22)

dt dt j=l dTw

p w V w c w - - -- yS(Tw - T) (2.23) dt

(3t0)_~ P -~dh (~pp ) -~dP ~ m g q- V = WiJ -- Z Woj (2.24) h j=l j=l

where the notation is analogous to that of the previous models. Head losses due to inlet and outlet effects may be incorporated in the model of the upstream and/or

wi, wi2 W

[] [] [] [] ~//////////////~///////////////A

I wol l worn

Figure 2.11 Header component

Page 22: FPP-model_sim

Modelling of power plants 37

downstream tubes. Equations (2.22)-(2.24) describe the fluid energy, metal body energy and fluid mass conservation, respectively.

The Modelica script of the model may be as follows:

model Header

parameter Area S;

parameter Volume V,Vw;

parameter SpecificHeat cw;

parameter Density row;

parameter HeatXferCoeff gamma;

parameter Integer n=l;

parameter Integer m=l;

THT Inlets[n],Outlets[m];

MassFlowRate wi In] ,wo [m] ;

Pressure p;

Density ro;

Enthalpy h, hi [n] , himinush [n] ;

Temperature T,Tw;

Real drodh,drodp;

equation

for i in l:n

end for;

for i in l:m

end for;

loop wi [i] = Inlets [i] .w; p = Inlets [i] .p;

hi[i] = Inlets [i] .h; himinush[i] = Inlets [i] .h-h;

loop wo[i] = -Outlets[i] .w; p = Outlets[i] .p; h = Outlets[i] .h;

ro*V*der(h)-V*der(p) = sum(ElementwiseProd(wi,himinush)) + gamma*S*(Tw-T);

row*Vw*cw*der(Tw) = -gamma*S*(Tw-T);

V*drodh*der(h) + V*drodp*der(p) = sum(wi)-sum(wo);

T = SteamPHtablesTemperature(p,h);

ro = SteamPHtablesDensity(p,h);

drodh = SteamPHtablesDdensityDenthalpy(p,h);

drodp = SteamPHtablesDdensityDpressure(p,h);

end Header;

In this script, ElementwiseProd is a function requiring two vectors as input and returning a vector formed by their element by element product, S is the header inner surface and Vw the metal wall volume.

2.3.2.5 Pump

Storage of mass and energy are negligible and the model is expressed by algebraic equations. With reference to the notation of Figure 2.12 the model is formed by the

Pij, ~ Po hi ho

Figure 2.12 Pump component

Page 23: FPP-model_sim

38 Thermal power plant simulation and control

following equations (Dixon, 1975; Perry and Green, 1985):

Po ---- Pi + Pp (2.25)

Pp = f I ( ~ , q) (2.26)

rH = fii(S-2, q) (2.27)

where pp is the pump head (Pi and po are the inlet and outlet pressures), £2 is the pump shaft speed, q the volumetric flow rate (q = w / p ) and rH is the resistant hydraulic torque applied by the fluid to the shaft, while f l ( ~ , q) and fix(12, q) are suitable functions derived from the manufacturer's design data. Equations (2.26) and (2.27) are termed the first and second characteristic equations. It is also possible to include the total rotor inertia J in the pump model:

dl2 rH = rM -- J - - (2.28)

dt

where rM is the active motor torque. Modelling of the pump drive in detail may be complex, because the speed of feedwater pumps is often regulated by an oleodynamic coupling, which is not easy to model. A possible simplification can be made when the pump is subject to feedback speed control, by assuming that the angular speed £2 is nearly equal to its set-point.

To complete the model it may be necessary to include an energy balance for the fluid volume; assuming that heat losses through the pump body are negligible, one obtains:

w(ho - hi) ---- %'H -(-2 (2.29)

which allows the computation of the outlet enthalpy. The model can be given a more efficient formulation by using dimensionless quantities and/or introducing the pump characteristic angular speed. A useful approximation can be obtained for centrifu- gal pumps by assuming a parabolic characteristic equation and introducing suitable dimensionless numbers (Dixon, 1975). A Modelica script for the model pump may be as follows (a boolean parameter decides whether the rotor inertia must be included or not and an integer parameter is used for selecting the characteristic functions):

model Pump

parameter parameter parameter THT

MT

Torque

Inertia J;

Boolean IncludeRotInertia;

Integer CharFunID;

Inlet,Outlet;

Shaft;

tauH;

VolumetricFlowRate q;

Density ro;

equation

Outlet.p = Inlet.p+ PumpCharFunI(Shaft.omega,q,CharFunID);

q = Inlet.w/ro;

ro = SteamPHtablesDensity(Inlet.p,Inlet.h);

Inlet.w = -Outlet.w;

tauH = PumpCharFunII(Shaft'°mega'q'CharFunID) ;

Page 24: FPP-model_sim

Modelling of power plants 39

if IncludeRotInertia then tauH = Shaft.tau-J*der(Shaft.omega);

else tauH = Shaft.tau;

end if;

Inlet.w*(Outlet.h-Inlet.h) = tauH*Shaft.omega;

end Pump;

2.3.3 The boiler's air-gas circuit

2.3.3.1 Gas zone

The gas zone was introduced in Figure 2.3. Mass and energy storage within the gas volume are generally negligible because of the very low density, so that the model is given by the following set of algebraic equations, where the generic case of n heat transfer surfaces is considered:

w g ( h g i - h g o ) = O)ejd~e j dx (2.30) j = l

q~ej = Yej(Tg - Twj), j = 1 . . . . . n (2.31)

~g = ~rg~ + (1 - z) rgo (2.32)

where tOg is the gas mass flow rate, hg i and hgo are the inlet and outlet gas enthalpies, q~ej (t, x) is the heat flux from the gas to the j- th tube bundle at its abscissa x, O~ej

the total perimeter of the j-th tube bundle, I"g is the 'average' gas temperature in the zone, ~. is a weighting parameter, while Tgi and Tgo are the gas inlet and outlet temper- atures, Twj (x, t) is the j-th wall temperature and Yej is the heat transfer coefficient between the gas and the j-th tube bundle. Notice that equation (2.30) represents gas energy conservation. Evaluation of Yej is a complex function of the gas properties and the bank geometry; it can be obtained from empirical correlations set up by boiler manufacturers (Incropera and De Witt, 1985; Stultz and Kitro, 1992) and accounts both for convection heat transfer and intertube radiation.

The gas pressure is not included in the model as it is generally fair to assume that it is atmospheric pressure; only for certain problems (e.g. furnace pressure control studies) is it necessary to consider pressure dynamics. In that case, since the mass storage is essentially due to the furnace, the gas zone model may simply be completed by a head-loss equation:

Pgi - - Pgo = k w~ (2.33) Pg

where Pgi and Pgo are the inlet and outlet pressures,/Sg is the average gas density and k is a suitable constant (k ~ 0 is often acceptable because head losses are essentially concentrated in gas dampers and fans). The Modelica script for the gas zone model may be as follows: model GasZone

parameter Integer nTubeBundles= 1 ;

parameter Integer tbSizes [nTubeBundles] =ones (nTubeBundles) ;

parameter Length omegae [nTubeBundles] , L [nTubeBundles] ;

parameter GeomData geometryData [nTubeBundles] ;

Page 25: FPP-model_sim

40 Thermal p o w e r plant simulation and control

parameter Real lambda;

dHT tubeBundles[nTubeBundles] (vectorSize=tbSizes); THT Inlet,Outlet;

Temperature Tgtilde; HeatXferCoeff gammae [nTubeBundles];

HeatFlow IntOfPhieOmegaDx[nTubeBundles]; equation for j in i: nTubeBundles loop

tubeBundles[j].heatFluxProfile = gammae[j]*(Tgtilde*ones(tbSizes[j])-tubeBundles[j].tempProfile);

gammae[j] = GammaFun(Inlet.w,Tgtilde,geometryData[j]); IntOfPhieOmegaDx [j] = omegae[j]*L[j]*Average(tubeBundles[j].heatFluxProfile);

end for;

Inlet.p = Outlet.p; Inlet.w = -Outlet.w; Inlet.w*(Inlet.h-Outlet.h) = sum(IntOfPhieOmegaDx);

Tgtilde = lambda*GasPHTablesTemperature(Inlet.p,Inlet.h) + (i lambda)*GasPHTablesTemperature(Outlet.p,Outlet.h);

end GasZone;

In this script GeomData is a record type (a feature provided by any language) used for storing geometry data and provided as a parameter to the function GammaFun computing Yej in equation (2.31). Also, A v e r a g e is a function requiring a vector argument and returning its average.

2.3.3.2 Furnace zone

A generic furnace zone, introduced in Figure 2.4, may be depicted as in Figure 2.13. Assuming a uniform gas temperature in the zone, a grey gas approximation, infinitely fast combustion kinetics and a diffusion heat radiation mode (Fryling, 1966; Hottel and Sarofim, 1967; Glassman, 1977), the following equations model the furnace zone:

dMg -- toi -- tOo + tOf q- Wa q- Wr (2.34)

dt dEg

-- toihi - woho + tofhf + Qc + toaha + wrhr - Oi - Qo - Qw (2.35) dt

where Qc is the heat rate due to the combustion reaction, Qi is the radiation heat rate to the upstream zone, Qo is the radiation heat rate to the downstream zone and Qw is the total heat rate released to the wall, while hi, ho, ha and hr are the enthalpies of

w o (gas flow out, upwards)

~- . . . . . . . . . . . . . . . . . . . . . . .

wf (fuel flow), ',, .w. ~k,,N~ ! a / ~

Wa (air fl°w): ~ l , ~ r a d i a t i o ,,

Wr (recirculating gas fl°w) :l,, / / + ~ Gas ]

: S . . . . . . . . . . . . . c_onv_ectlon_ I_

Losses ., . . .~/2 w i (gas flow in, from bottom)

Figure 2.13 Furnace zone component

Wall or

~ walls

Page 26: FPP-model_sim

Modelling of power plants 41

the corresponding flows. Equations (2.34) and (2.35) represent the mass and energy balances, respectively. If an ideal reaction is assumed, Qc can be simply computed by the following equation:

( Wa) Qc = min tOf/-/f, -~-s nf

where Hf is the fuel calorific value and )~s the stoichiometric ratio. To interface the model with the i n t e r a c t i o n s modules (see Figure 2.4), it is

necessary to estimate the flame radiation temperature Tg. There are various empirical correlations to use for relating Tg to the inlet and outlet enthalpies, hi and ho, and possibly to the heat release Qc. The matter is quite complex and strongly based on manufacturers' data. However, if the zone is rather narrow, one may simply assume Tg = (/] + To)/2, / ] and To being the inlet and outlet temperatures. Neglect- ing gas composition variations as discussed in section 2.3.1.2, the Modelica script implementation may be as follows:

model FurnaceZone

parameter Real lambdas;

parameter ChalorificValue Hf;

parameter Volume V;

THT FuelInlet,AirInlet,RecGasInlet;

THHT GasFromBottom,GasUpwards;

HT Wall;

Mass Mg;

MassFlowRate wi,wo,wf,wa,wr;

Enthalpy hi,ho,hf,ha,hr;

Energy Eg;

Pressure p;

Temperature Tg;

HeatFlow Qc,Qi,Qo,Qw;

equation

wi = GasFromBottom.w ; wo = -GasUpwards.w; wf = FuelInlet.w ;

wa = AirInlet.w; wr = RecGasInlet.w;

hi = GasFromBottom.h ; ho = GasUpwards.h; hf = FuelInlet.h ;

ha = AirInlet.h; hr = RecGasInlet.h;

p = FuelInlet.p; p = AirInlet.p; p = RecGasInlet.p;

p = GasFromBottom.p; p = GasUpwards.p;

Tg = GasFromBottom. Tr; Tg = GasUpwards.Tr; Tg = Wall.Tr;

der(Mg) = wi-wo+wf+wa+wr;

der(Eg) = wi*hi-wo*ho+wf*hf+Qc+wa*ha+wr*hr-Qi-Qo-Qw; Mg = V*GasPTtablesDensity(p,Tg);

Eg = Mg*GasPTtablesEnthalpy(p,Tg)-p*V;

Tg = (GasPHtablesTemperature(p,hi)+GasPHtablesTemperature(p,ho))/2; Qc = min(wf*Hf,wa/lambdas*Hf); Qi = GasUpwards.Q; Qo = GasFromBottom. Q;

Qw = Wall.Qw;

end FurnaceZone;

If one cannot neglect the composition variations, it is necessary to extend the affected terminals (in the case of the F u r n a c e Z o n e model, the THHTs and the THTs) to

Page 27: FPP-model_sim

42 Thermal power plant simulation and control

recognize fluid composition, typically expressed as a vector of mass or molar fractions. Of course, models will then have to include the appropriate balance equations for the relevant species.

The Modelica script is complemented by the following two additional models.

2.3.3.3 Zones interaction

Model equations are given by the system (2.1)-(2.5); the coefficient K in equa- tion (2.5) can be computed according to empirical correlations (Hottel and Sarofim, 1967). The Modelica script (treating K as a parameter for simplicity) may be as follows:

model ZonesInteraction

parameter Real K; THHT Left, Right ;

equation

Left.w+Right.w = 0; Left.p-Right.p = 0;

Left.h-Right.h = 0; Left.Q+Right.Q = 0;

Left.Q = K*(Left.Tr^4-Right.Tr^4) ;

end ZonesInteraction;

2.3.3.4 Gas-wall interaction

The following model equation accounts for radiation and convection heat transfer from gas to wall:

Qw = Kw(T 2 - 7"4w) + ycSw(Tg - Tw) (2.36)

where Sw is the contact wall surface, while the radiation coefficient Kw and the con- vection coefficient Yc are given by empirical correlations (Stultz and Kitro, 1992) relating them to the zone geometry and gas properties. In equation (2.36) Tw denotes the average wall temperature: this approximation is not critical because the wall tem- perature is generally quite uniform and, however, much lower than Tg. The Modelica script may be as follows:

model GasWallInteraction

parameter Real Kw;

parameter Surface Sw;

parameter Integer N=I;

parameter HeatXferCoeff gammac;

HT Gas;

dHT Wall (vectorSize=N);

Temperature Tg,Twtilde;

equation

Twtilde = Average(Wall.tempProfile); Tg = Gas.Tr;

Gas.Qw = Kw*(Tg^4-Twtilde^4)+gammac*Sw*(Tg-Twtilde);

for i in I:N loop Wall.heatFluxProfile[i] = Gas.Qw/Sw/(N-l);

end for;

end GasWallInteraction;

Page 28: FPP-model_sim

Modelling of power plants 43

2.3.3.5 Fan

The model is conceptually similar to that of a pump: we use an algebraic model consisting of the first and second characteristic equations. In general, however, fans are operated at rated speed, while the flow is regulated by inlet vanes. So, using the same symbols of Figure 2.12, the model equations are:

Po = Pi n t- Pp (2.37)

pp = fl(~QN, q, O) (2.38)

rH = f[[(~2N, q, 0) (2.39)

where S2N is the nominal angular speed and 0 the orientation angle of the inlet vanes. To extend the model (2.37)-(2.39) to variable speed conditions (e.g. startup), one has to keep in mind that q, pp and rH are proportional to I2, ~2 and Y22, respectively. Rotor inertia and enthalpy increases can be taken into account by equations (2.28) and (2.29), or suitable approximations. The theory of similarity is generally not applicable: the characteristic equations are then derived from manufacturers' data.

2.3.3.6 Miscellanea

To complete the component library for the air-gas circuit we need to model at least the following elements:

• adiabatic gas duct (by mass, energy and momentum balances) • adiabatic gas plenum (by mass and energy balance only) • control damper (by a flow equation similar to a control valve) • air preheater • coal pulverisers.

For the sake of brevity, details of the above models are omitted here. It is only worth noting that:

• for air and flue gas, ideal or real-gas state equations are applicable with suitable formulas or tables for the computation of gas properties;

• control dampers are strongly non-linear elements for which the flow characteristics need to be estimated by experimental and/or design data.

Air preheaters may be of different types; widely employed is the rotating Ljungstrrm preheater, which is a complex item of equipment characterised by considerable energy storage. Coal pulverisers are described in detail by Ferretti and Maffezzoni (1991) and Cao and Rees (1995).

2.3.4 Steam turbine

Depending on the required accuracy (especially with reference to the interaction between the turbine and the feedwater heaters through steam extraction), the turbine can be presented as a compact or more detailed representation. A reasonable trade-off,

Page 29: FPP-model_sim

44 Thermal power plant simulation and control

compatible with the object-oriented approach, is to structure the model according to the scheme of Figure 2.5, which, applies to all turbine sections but the control stage. Excluding the latter, a generic turbine section is constituted as a cascade of similar stages (generally reaction stages) without any extraction in between.

2.3.4.1 (Generic) turbine section

Mass and energy storage in the steam volume are negligible, so that the model consists of the following algebraic equations.

2.3.4.2 Flow equation

In this case the Stodola law (Cooke, 1985) proved to be quite accurate:

W = k T ~ / 1 -- rs 2 (2.40)

where w is the mass flow rate, Pi and Pi are the upstream pressure and density, rs = Po/Pi, with Po the downstream pressure and kT is a constant (which can be derived from design and/or experimental data).

2.3.4.3 Energy equation

hi - ho = (hi - hlso)r/ (2.41)

where hi and ho are the inlet and outlet enthalpies, hlso is the enthalpy that would be at the outlet if the expansion were iso-entropic and r/is the section efficiency. Of course, hlso is a function of hi, Pi, and Po.

The evaluation of the section efficiency r/ might be quite complex (Salisbury, 1950), but for turbine operation at rated speed and at reasonably high load (>20 per cent) one may assume 0 -~ const.

2.3.4.4 Power output

Pm = to(hi - ho) (2.42)

where Pm is the total mechanical power transferred from the steam to the wheel. We may note that the mechanical terminal (MT) of Figure 2.5 consists of two variables, the angular speed $2 and the torque rm; of course, the computation of rm is simply given by:

rm = Pm/S-2 (2.43)

and the angular speed S2 is a state variable of the 'shaft' model. The possible incon- sistency of formula (2.43) as ,f2 ~ 0 is naturally avoided bearing in mind that ~ ~ 0 as .f2 --+ O.

2.3.4.5 Control stage The control stage is usually an impulse stage equipped with a set of independently operated control valves, which allow the steam flow to be admitted in full-arc or partial-arc mode. Partial arc admission is applied to ensure good thermodynamic

Page 30: FPP-model_sim

From the boiler

Figure 2.14

Modelling of power plants 45

Valve m Nozzle

Impulse chamber

To the downstream stages

Turbine control stage component

efficiency at partial load. To develop a model of the control stage, reference must be made to its structure, schematically shown in Figure 2.14, where it is indicated that there are m parallel lines, each one equipped with a control valve, corresponding to the m sectors into which the control stage is partitioned. At the outlet of the control stage, the steam flows coming from the different paths mix to form the total flow feeding the downstream turbine stages.

A detailed model can be built by assembling elementary modules according to the scheme of Figure 2.15. Among the model objects of Figure 2.15, we must only specify that the 'nozzle and wheel sector' is, in fact, the model of an impulse turbine stage for which we may apply the modelling approach expressed by equations (2.40)-(2.43), with possible refinements for the flow equation (2.40) and for the computation of the thermodynamic efficiency r/, as nozzle conditions are more variable in the control stage with respect to the downstream stages.

The model of Figure 2.15 may be replaced by a global approximate model (Maffezzoni and Kwatny, 1999), which is based on particular steam turbine design parameters. The approximate model is determined under the restriction that the con- trol valves are moved according to a fixed opening program, activated by a master control signal; under this condition it can be proved that it is subject to quite limited errors.

2.3.5 Condensate and feedwater cycle

The principal components in the considered subsystem are the following:

(a) deaerator (b) condenser (c) feedwater heaters.

Page 31: FPP-model_sim

46 Thermal power plant simulation and control

Header

D - -

Control wheel valve sector L _

m _

~ ICT ' ~ ~ N°zzle& ~ Control wheel - - valve sector L _

Header

I I---

~ ICT I ~ ~ Nozzle& ~ Control wheel valve sector U +-q

[___ Figure 2.15 Model structuring for turbine control stage

They are complex heat exchangers, whose models might also he obtained by assem- bling smaller model objects, for instance, the condenser is a typical tube and shell heat exchanger where condensation takes place; the tube bundle could be modelled by a heat exchanger segment interfaced to a two-phase cavity through a condensing thin layer. The interaction structure would be quite complex (especially for feed- water heaters), so that it is advisable to conceive simple models of the components (a)-(c), exploiting the standardisation of the mechanical design. To this end, it is generally required to build two types of model for feedwater heaters, to meet the two possible designs: vertical or horizontal shell heaters. The model equations are, as usual, derived from mass and energy balances applied to suitable control volumes: the detailed formulation is rather tedious and is beyond the scope of this work.

2.3.6 Gas turbine

Apart from auxiliary equipment, there are three principal components of gas turbines: the compressor, the combustion chamber and the turbine (Coen et al., 1987).

2.3.6.1 Compressor

Thanks to the very limited mass of air in the compressor volume, the model consists of two characteristic algebraic equations describing the global machine performance

Page 32: FPP-model_sim

Modelling of power plants 47

(Coen et al., 1987). To this aim, it is useful to introduce the following three dimensionless quantities:

• the pressure ratio rp := Po/Pi between the outlet and inlet pressure; • the flow number nf : - - to/pi~QD 3, where w is the mass flow rate, Pi the inlet gas

density, I2 the rotor angular speed and D the mean wheel diameter; • the blade Mach number Mb := ~ D/~/y R Ti, where F is the ratio between the gas

specific heat at constant pressure and constant volume, R the ideal gas constant and Ti the inlet gas temperature.

Then, the two characteristic equations may be written as

r p - - g l (nf, Mb) (2.44)

= g 2 (nf, Mb) (2.45)

where r/is the compressor global efficiency, defined as

hlso -- hi q - - - - (2.46)

ho -- hi

where hi and ho are the inlet and outlet enthalpies, while hIso is the enthalpy that there would be at the outlet with an isoentropic compressor (of course hiso depends on pi, po and hi). The major problem is that, for unit simulation the functions gl and g2 are required to cover quite extended off-design conditions. They can be built as suitable interpolations of manufacturers' data, possibly validated and extended by experimental data. Simple approximations with low-order polynomials generally work only in a quite restricted operation domain.

The net mechanical power transferred to the air is Pm = w(ho - hi). If air composition variations due to air humidity are neglected, the Modelica script of the compressor model is as follows:

model Compressor

parameter integer CharFunID;

parameter length D;

MT Shaft;

THT Inlet,Outlet;

Real rp,eta,nf,Mb,gammaR;

Enthalpy hiS©;

equation

gammaR = AirPHtablesCp(Inlet.p,Inlet.h)/AirPHtablesCv(Inlet.p,Inlet.h)

*(AirPHtablesCp(Inlet.p,Inlet.h)-AirPHtablesCv(Inlet.p, Inlet.h));

Mb = Shaft.omega*D*sqrt(gammaR*AirPHtablesTemperature{Inlet.p, Inlet.h));

rp = Outlet.p/Inlet.p;

rp = CompressorCharFunGl{nf,Mb,CharFunID);

eta = CompressorCharFunG2{nf,Mb,CharFunID);

eta = {hISO-Inlet.h)/(Outlet.h-[nlet.h);

Inlet.w = -Outlet.w;

nf = Inlet.w/(AirPHtablesDensity(Inlet.p,Inlet.h)*Shaft.omega*D^3);

hISO = AirPStablesEnthalpy(Outlet.p,AirPHtablesEntropy(Inlet.p, Inlet.h));

end Compressor;

Page 33: FPP-model_sim

48 Thermal power p lant simulation and control

2.3.6.2 Combustion chamber

Though rather small, the combustion chamber has a certain storage volume, so that mass and energy storage should be considered. The scope of the model is generally twofold:

(1) to predict the chamber outlet gas enthalpy; (2) to predict the production of pollutant emissions (mainly NOx and CO).

While meeting scope (1) is quite easy by global mass and energy balance, mod- elling NOx and CO production is deeply affected by reaction kinetics and by the actual temperature field in the combustion chamber volume. For this rea- son, low-order, first-principles modelling does not guarantee reasonable accuracy for task (2). When both scopes (1) and (2) are relevant, a possible solution is to organise the model into two parts: a 'thermo-mechanical' part, based on global mass, momentum and energy balances, and a 'chemical' part based on non-linear interpolations (e.g. neural networks) of more detailed design or experi- mental data. Here, only the first part will be considered, formed by the following equations:

= tO a q- VJf - - tog (2.47) dt

dEg -- waha -Jr- wf (hf q- nf) - toghg - Q1 (2.48)

dt

Pa - Pg = kwza (2.49) Pa

where Wa is the total inlet air flow rate, wf is the fuel flow rate, wg the out- let combustion gas flow rate, Mg the mass of the gas stored in the combustion chamber, Eg the corresponding energy, ha the inlet air enthalpy, hf and Hf the enthalpy and the calorific value of the fuel, hg the outlet gas enthalpy, Q1 the heat losses, Pa the pressure before the air nozzles, pg the pressure in the chamber volume, Pa the density of the inlet air and k a suitable constant. Equa- tions (2.47)-(2.49) represent the mass and energy balances and the pressure losses, respectively. In the model, it is assumed that the pressure drop is across the air nozzles and that the mass Mg and energy Eg can be evaluated from the outlet gas enthalpy:

Mg = VcPg

Eg = V c ( p g h g - pg)

w h e r e pg is the gas density corresponding to h g , pg . It is worth noting that, since gas turbine combustion chambers are operated with a large excess of air, combustion is always complete and most of the chamber volume is close to the exit tempera- ture. Of course, to complete the model, suitable functions or tables are required to

Page 34: FPP-model_sim

Modelling of power plants 49

parameter

parameter

parameter

parameter

THT

Mass

MassFlowRate

Enthalpy

Pressure

Energy

HeatFlow

equation

wa = AirInlet.w ; wf

ha = AirInlet.h ; hf

pa = AirInlet.p ; pg

der(Mg) = wa+wf-wg;

compu~ gas prope~ies (e.g. ~mperature and density from enthalpy and pressu~); this makes the model quite complex. The Modelica script of the model can be as follows: model CombustionChamber

Real k;

CalorificValue Hf;

Enthalpy hf;

Volume Vc;

FuelInlet,AirInlet,GasOutlet;

Mg;

wa,wf,wg;

ha,hg;

pa,pg;

Eg;

QI;

= FuelInlet.w;

= FuelInlet.h;

= FuelInlet.p;

wg = -GasOutlet.w;

hg = GasOutlet.h;

pg = GasOutlet.p;

der(Eg) = wa*ha+wf*(hf+Hf)-wg*hg-Ql;

pa-pg = k*wa^2/AirPHTablesDensity(pa,ha);

Mg = Vc*GasPHTablesDensity(pg,hg);

Eg = Mg*hg-Vc*pg;

Q1 = FunQloss(wa,wg);

end CombustionChamber;

In this script, F u n Q l o s s is a function devoted to computing the heat losses.

2.3.6.3 Turbine

The model of the turbine is built using the same line of reasoning as that of the com- pressor. There is, however, a significant simplification because the first characteristic equation (2.44) can be implemented by the simple Stodola law (Cooke, 1985):

W = k T ~ l -- \Pal ( p--~°)2 (2.50)

where only the constant kT is derived from design data.

2.3.7 Special problems in modelling combustion processes

Combustion of fossil fuel is a complex chemical process which involves many com- ponents either contained in the reactants or produced by the reaction itself (like CO, CO2, NOx, H20). For the case of power plant simulation, reaction kinetics can be considered so fast that all the reactions are at their equilibrium. Moreover, combustion modelling is aimed at two different scopes:

(1) predicting heat release in combustion chambers; (2) predicting pollutant concentration at the chamber outlet.

Page 35: FPP-model_sim

50 Thermal power plant simulation and control

For scope (1), the reactions involved are the oxidation of hydrogen and carbon, for which 'very high' equilibrium constants can be assumed, with further simplifica- tion of the model. What is generally needed is the computation of combustion gas composition and the evaluation of gas properties (see section 2.3.1.2).

A crucial issue is the evaluation of radiation in a large furnace, in particular the computation of flame/gas emissivity which is due to the superposition of the non-luminous gas emissivity (due to CO2 and H20) and of the luminous soot emis- sivity (formed in the combustion flame), as discussed by Hottel and Sarofim (1967), Siegel and Howell (1972) and Perry and Green (1985). Since radiation depends on T 4, the correct evaluation of radiation temperature is very important: experimen- tal validation showed (Caruso et al., 1979) that if a large furnace is modelled by 10-20 layers, gas temperatures can be predicted quite well at least at sufficiently high load.

On the contrary, simple lumped parameter balances do not give reliable results for scope (2) above, because NOx production is very sensitive to local flame temperature. Empirical models combined with the first-principle models used for purpose (1) yield good results (Ferretti and Piroddi, 2001), though they need experimental tuning (e.g. neural network training).

2.4 Modelling of distributed control systems

A power plant DCS is a very complex system involving many thousands of sig- nals and specified by hundreds of I/O diagrams collected in a CAD database. The system specification is generally expressed by functional block diagrams, based on some international standard such as IEC 1131 (1993), DIN 40719-6 (1992), DIN IEC 3B/256/CD (1999), ANSI/ISA 5.1, ANSI/ISA 88.01-1995 and many others, (www.normung.din.de and www.isa.org). The block diagrams, which concern both logic control functions and modulating control, can actually be considered as a con- trol software specification. Because of the essential role of automation in modern power plant, the correct simulation of the DCS is necessary to assess power plant performances during the design phase.

There are two possible approaches to DCS modelling:

(1) reproduce the control specification with a one-to-one correspondence of blocks (at least for the functional areas under investigation), thus using a control block library tailored to the appropriate international standard;

(2) describing the control strategy assuming a functional equivalence, i.e. replace any (complex) functional group consisting of cascaded control blocks by a global control function implementing the same control concept while ignoring equipment and instrumentation details.

In the second case, control functions may be simulated by a simpler library consisting of generic blocks (lead-lag, PID, etc.) ignoring most auxiliary signals devoted to logics, interlocks, protection and so on. Then, even the digital nature of the real control system may be not relevant, so that even the control components are treated

Page 36: FPP-model_sim

Modelling of power plants 51

as continuous-time dynamic systems. Such generic control components are generally available in the libraries of power plant simulation packages (www.vtt.fi; Coil et al., 1989). The approach based on functional equivalence requires the analyst to develop a subjective translation of the original control scheme into a compact functional equivalent, while respecting the process control concept. It is widely applied to check control strategies in the early stages of the design process, but the validity of the model is not ensured; implementation problems are not critical, especially because it is often not necessary to simulate events (including those related to the sampling process).

Detailed modelling of control software specifications or designs is, however, very important when actual DCS verification is needed. Then, two major problems need to be tackled:

(a) consider system complexity with adequate support for analysis; (b) recognize systems that combine continuous process simulation with events, i.e.

hybrid systems.

Detailed DCS modelling is typically approached in two steps:

(1) build a control library consistent with the selected industrial standard; (2) assemble block diagrams using constructs provided by the modelling language

for model aggregation, possibly in the same way as CAD tools for control do.

Implementing the two-step procedure for real-size systems requires that the mod- elling language is equipped with control-oriented libraries and paradigms, in particular to deal with discrete-time, event-driven and logical blocks. Experi- ence of Matlab/Simulink ® for detailed modelling and testing of a power plant DCS is reported by Carpanzano et al. (2001) and shows that this environment can be effectively customised to be consistent with a DIN standard (1992). Syn- chronous events that are scheduled at the simulation start are correctly processed, activating zero-time switching of discrete and logical variables while stopping continuous-time integration. Problems may arise, however, with unscheduled events.

A full treatment of hybrid modelling is supported in Modelica (www.dynasim.se; www.modelica.org); however, the extension of the modelling power and generalisa- tion to any relation-triggered event implies further effort in the model specification. As an example, the Modelica script of a sequence step, described using the functional block diagram (FBD) formalism (IEC1131-3, 1993) in Figure 2.16a, is reported in Figure 2.16b.

It is worth stressing that most power plant simulation environments do not sup- port hybrid systems modelling; in these cases the interaction between the continuous time and event driven parts (including sampled signal control systems) is to a certain extent left to the user. As an example, we may mention the solution implemented by Guagliardi et al. (2000), where a client-server architecture is provided. The con- tinuous process simulator modelled by the specialised power plant simulation code LEGO runs with a fixed integration step and acts as a server for a Matlab/Simulink ® application where the DCS is modelled.

Page 37: FPP-model_sim

52 Thermal power plant simulation and control

13

0!

02

a b

connector logicalSignal

boolean Info;

end Logicalsignal;

block LogicController

input LogicalSignal If, I2, I3;

Output LogicalSignal 01, 02;

equation

Ol. Info = not II.Info and I2.Info;

02.Info = 01. Info or I3.Info;

end LogicController;

Figure 2.16 Simple controller specified in FBD and implemented in Modelica

2.5 Application of dynamic decoupling to power plant models

In general, dynamic decoupling is applicable to dynamic system simulation when the system consists of sections characterised by different dynamics, i.e. typically a 'slow' and 'fast' subsystem. We may recognise such a situation in power plant models. For instance, in the one-phase subnet of the steam-water circuit there are state variables, such as pressures and flow rates, that are characterised by fast dynamics, and state variables, such as temperatures, that are characterised by slow dynamics. Moreover, flue gas dynamics are very fast, because the gas inertia is very small.

It is known that when the system is stiff, stabilisation of the integration process may be obtained by using implicit integration methods (Brenan et al., 1989), which ensure numerical stability even for rather large integration steps. This approach may make the numerical solution quite involved because, at every integration step, a large- scale non-linear system (by a Newton-like method) must be solved. However, if the number of 'fast' state variables is small with respect to the total, a more efficient solution may be obtained by decoupling the integration of the two subsystems, using an implicit method (e.g. backward Euler) for the fast part and an explicit method (e.g. forward Euler) for the slow part, according to the recursive scheme of Figure 2.17. This expedient has been applied in power plant simulators (Busi et al., 1985; Bartolini et al., 1998) and is also supported in Dymola (www.dynasim.se), where the system splitting is under the user's control.

The dynamic decoupling stemming from different-scale dynamics can effectively be introduced in power plant modelling with the concept of 'weak interaction' in recognition of typical situations found in thermo-hydraulic networks:

• When part of a pressure net is linked to another one through a weak branch (i.e. a branch with little discharge capacity), then the two parts can be solved in two steps at any integration instant.

. When a pressure net contains a node with a large capacity having one inlet branch (i.e. a node characterised by a slowly varying pressure), then the net can be split into two subnets by 'freezing' the node pressure when solving that part of the net containing the inlet branch.

Page 38: FPP-model_sim

Modelling of power plants 53

k=k+ 1

I o' e st y.am cs I

1 o' es ow yoamic J I

Figure 2.17 Recursive scheme for dynamic decoupling

In fact, the application of dynamic decoupling can be extended with the introduc- tion of the concept of 'weak variable', which has a 'weak' dynamic participation in a certain equation, either because it is slowly varying or because it has a minor effect (Casella and Maffezzoni, 1998). In power plant modelling, dynamic decou- piing is relevant to a number of typical physical situations and can be systematically applied to split the system integration into a considerable number of small tasks, e.g. the solution of feedwater system hydraulics, flue gas hydraulics, and so on. These principles have been systematically implemented in the development of ProcSim (Bartolini et al., 1998), a process simulation environment oriented to thermo- hydraulic networks. Experience (Leva et al., 1999) showed that the application of these decoupling criteria requires particular care when dealing with two-phase flows (e.g. in the simulation of the circulation loop) where mass, momentum and energy balances are more tightly coupled.

2.6 Testing and validation of developed models

We consider the case where a model is developed by aggregating component repre- sentations based on first principles. A typical situation is that the model is structured into components by looking at the design flow diagrams, and each component model (CM) is either taken from a library or built by analysing the component design data. Very often it is necessary to customise, to a certain extent, a library CM on the basis of some specific feature of the case at hand. Then, we have to tackle the following problems related to 'model certification':

• testing intrinsic correctness of model, i.e. model correctness versus physical principles;

• model validation versus design data, generally only available for steady-state conditions;

• model validation by experimental tests, which may concern both steady-state and transient conditions.

In all the above situations, testing and validation may involve either a component, subsystem or the whole system.

Page 39: FPP-model_sim

54 Thermal power plant simulation and control

2.6.1 Testing intrinsic model correctness

When a powerful object-oriented modelling environment is employed, the creation of new component models or the modification of existing ones (by the mechanisms of inheritance, override and polymorphism) is quite easy. It is then very important to establish procedures ensuring that the new models respect the fundamental principles of mass, momentum and energy conservation. This can be done at the component level (aggregate models inherit this property from submodels) by equipping each CM with a switchable monitoring function devoted to automatic checks. As an example, a Modelica script may consist of two sections: one corresponding to the standard model and always active, the other computing the mass and energy of all the species and phases that are present (e.g. those of liquid and vapour in a drum) and active only when some global logic variable or parameter is set true. Note that often it is not advisable to take masses and energies as state variables, so devoting a subsidiary model section to their computation reduces the simulation effort. Once the model is equipped with this section, the correctness testing can be done at any time and in any relevant condition, for instance when the component model is part of a larger model where certain significant transient conditions may be simulated. Testing can be done during simulation, if the environment permits access to its variables in that phase, or after simulation, performing the necessary computations on the logged variables.

2.6.2 Model validation versus design data

Power plant simulation is frequently used during the late phases of plant design or during plant construction. In these cases, the sole source of information for modelling consists of design data, which may be split in two parts:

(a) dimensional parameters (geometrical and physical data); (b) steady-state design code computations, required to evaluate plant

performance.

Moreover, the plant manufacturer has important additional knowledge about compo- nent behaviour, typically expressed by empirical or semi-empirical correlations (e.g. heat transfer correlations). For power plants, non-linearities are very important and many complex phenomena (particularly combustion and heat transfer in the furnace and through the convection banks) can be captured even in the steady-state. Thus, steady-state validation is quite significant; since design data are generally detailed and extensive (they cover plant operation in different conditions) and incorporate the best knowledge about the plant before commissioning, validation versus design data is a basic step toward model 'certification'.

Thanks to their detail, design data allow validation component by component, that is the identification of the actual source of modelling errors. Cases of extensive validation by design data are reported by Castoro and Oldnati (1995) and Maffezzoni and Aime (2000).

It should also be noted that using design data for validation means that com- ponent models are usually built with 'tuning knobs' expressing uncertainties about model parameters: those knobs are actually set to minimise the discrepancies between

Page 40: FPP-model_sim

Modelling of power plants 55

model outputs and design data. As an example, the parameterisation of the flow char- acteristics and efficiency curves for a gas turbine may be found in Maffezzoni and Aime (2000).

2.6.3 Model validation versus experiments

Unlike design data, experiments generally supply an incomplete set of data. The major source of experimental data is the supervision system, which is designed to record and store data in forms suitable for steady-state performance evaluation. Such data are generally sufficient for an extensive validation of the plant model in the steady- state, even though the available measurements do not allow independent validation of each component model (for instance temperatures of combustion gases are not measured in the different plant sections because of technological problems and for cost reasons). Moreover, experience shows that reconciliation of measurement data is often required when using standard instrumentation.

So, it is necessary to combine information coming from design data with infor- mation coming from measurements. Unfortunately, there is no systematic method to integrate all the available information: it is difficult to properly weigh experimen- tal measurements with respect to design computations because experiments cover the whole field of operation irregularly and measurements are incomplete. However, steady-state validation (with the inherent parameter tuning) must always precede dynamic validation, where possible.

As an example, it is worth mentioning the assessment of heat balances concerning the convection part of a fossil fired boiler:

• Design data and manufacturer's correlations lead to the formulation of gas zone models incorporating heat transfer coefficients.

• steady-state experimental data allow thermal balances across the different con- vection banks to be computed; based on these, correction (fouling) factors of the involved coefficients can be tuned.

Examples of this procedure are reported by Maffezzoni et al. (1984) and Castoro and Oldrati (1995). Once steady-state model assessment has been done, dynamic validation may consider selected plant responses for which ad hoc experiments are then performed, since process measurements are sampled at a slow rate for routine supervision purposes. So, dynamic validation of power plant models is sporadically available, normally as part of special research programmes, and concern limited parts of the plant (a few relevant variables).

Two different examples are worth mentioning: the first relating to a commercial unit (Astr/3m and Bell, 1993) subject to small pseudo-random excitation and the second to a laboratory boiler to which extensive step response tests have been applied (Leva et al., 1999). It is clear that step responses are much more significant for validation because the plant dynamics are sufficiently excited, but they are very costly in commercial plant. Validation programmes are also reported also for a once-through boiler (Cori et al., 1974) and a drum boiler (Coil and Busi, 1977). One of the major problems is that open-loop tests are very critical to obtain because a boiler is not

Page 41: FPP-model_sim

56 Thermal power plant simulation and control

asymptotically stable and tends to move away from its equilibrium point. On the other hand, closed-loop tests do not highlight the process dynamics, being strongly dependent on control actions. In addition, dynamic measurements are rather scarce so that isolation of components for validation is impossible. So, the strong interactions among the different sections of the plant make it difficult to identify the source of plant-model discrepancies.

For all these reasons, the results of dynamic model validation are quite limited for thermal power plant and also for available test databases for independent model vali- dation. From the reported experience it may be inferred that pressure, level and load dynamics are well reproduced by large-scale modular models, while more problems have been found in the validation of steam temperature dynamics. Areas substantially lacking in validation of boiler dynamics modelling are the behaviour of furnaces at low loads (Kwatny and Bauerle, 1986) and the behaviour of drum level at very low loads, with special emphasis on its stability (Kwatny and Berg, 1993).

2.7 Concluding remarks and open problems

Modelling by component for power plants has been greatly enhanced by object- oriented techniques based on non-causal model formulation and model connection through physical ports. Though many existing simulation codes treating power plant (Carpanzano etal., 1999) adopt a model structured approach oriented to components, the underlying modelling language suffers from the following drawbacks:

• component models are neither inspectable nor assignable in descriptive form; • hybrid systems modelling is not supported in a general and rigorous form.

Emerging standards in object-oriented modelling (such as Modelica, which has been assumed herein) overcome the above drawbacks, though application libraries are not yet available for power plants. For that reason, we have outlined here the basic principles by which a component library can be developed, and aggregation to form subsystems can be used. Control systems are also considered with the aim of facing real-size control engineering problems based on two key issues: adherence to widely accepted standards (e.g. IEC 1131 and 1499) and proper consideration of the hybrid nature of the control-process combination (which is essential when control system functionality has to be tested).

Further investigation and development is required on the following aspects:

• full integration between lumped-parameter and distributed parameter modelling, particularly with reference to the complex heat exchangers employed both in conventional and heat recovery boilers;

• modelling of pollutant production (NOx, CO, etc.) in furnaces and com- bustion chambers, for which simple zero-dimensional models based on first principles fail;

• improvements in symbolic and numerical techniques to efficiently deal with hybrid systems and to exploit dynamic decoupling in the simulation of large-scale power plant models.

Page 42: FPP-model_sim

Modelling of power plants 57

For aspects peculiar to an engineering environment (crucial to enable modelling and simulation for engineering practice), we may observe that modelling and simulation environments are generally not equipped to efficiently manage large amounts of data, as is necessary when developing a power plant project in any phase of its life cycle. A preliminary effort has been made with the prototype environment MOSES (Maf- fezzoni and Girelli, 1998), which combines object-oriented modelling and database management, but the state of the art is far from satisfactory.

Finally, much attention has been given here to object-oriented modelling lan- guages (e.g. Modelica) and to software tools supporting them. However, to the authors' knowledge, as such languages are quite recent, there is a substantial lack of model libraries for power plant applications. This could be the scope for interna- tional cooperation to eliminate this dearth by developing libraries in a non-proprietary language to be shared by interested contributors.

2.8 References

AIME, M. L., and MAFFEZZONI, C.: 'Modelling and simulation of combined lumped and distributed systems by an object-oriented approach', Mathematics and Computers in Simulation, 2000, 53, (4-6), pp. 345-351

APROS home page, www.vtt.fi. /~STROM, K. J., and BELL, R. D.: 'A nonlinear model for steam generation process'.

Preprint 12th IFAC World Congress, 3, pp. 395-398, Sydney, 1993 BARTOLINI, A., LEVA, A., and MAFFEZZONI, C.: 'A process simulation environ-

ment based on visual programming and dynamic decoupling', Simulation, 1998, 71, (3), pp. 183-193

BRENAN, K. E., CAMPBELL, S. L., and PETZOLD, L. R.: 'Numerical solu- tion of initial-value problems in differential algebraic Equations' (North-Holland, Amsterdam 1989)

BUSI, T., COLOMBO, P., and DE MARCO, A.: 'An efficient modelling technique for power plant training simulators: the FAST method'. Proceedings of 1 lth IMACS World Congress, Oslo 1985

CAO, S. G., and REES, N. W.: 'Fuzzy logic control of vertical spindle mills'. IFAC Symposium on Control of Power Plants and Power Systems; Cancan 1995 pp. 49-55

CARPANZANO, E., FERRARINI L., and MAFFEZZONI, C.: 'Simulation environ- ments for industrial process control'. Proceedings ESS '99, Erlangen-Nuremberg, 1999, pp. 443-450

CARPANZANO, E., FERRARINI L., and MAFFEZZONI, C.: 'Modular testing of logic control functions with Matlab'. Proceedings 13th European Simulation Symposium, Marseille 2001

CARUSO, F., DE MARCO A., and QUATELA, S.: 'One-dimensional mathematical model of a furnace'. Technical report ENEL 372053-14, 1979 (in Italian)

CASEAU, P. P., GODIN, P., and MALHOUITRE, G.: 'Numerical simulation of a steam generator'. Journ~es de I'AIM, Likge, 1970 (in French)

Page 43: FPP-model_sim

58 Thermal power plant simulation and control

CASELLA, E, and MAFFEZZONI, C.: 'Exploiting weak interactions in object- oriented modelling', EUROSIM- Simulation News Europe, 1998 22, pp. 8-10

CASTORO, M., and OLDRATI, S.: 'Heat recovery boiler simulator based on decoupling criteria'. Laurea thesis, Dipartimento di Elettronica e Informazione, Politecnico di Milano, 1995 (in Italian)

CHIEN, K. L., ERGIN, E. I. LING, C., and LEE, A.: 'Dynamic analysis of a boiler'. Trans. ASME, 1958 80, pp. 1809-1819

COEN, H., ROGERS, G. E C., and SARAVANAMUTTOO, H. I. H.: 'Gas turbine theory, (Longman, Harlow, 1987, 3rd edn.)

COLLIER, J. G., 'Convective boiling and condensation' (McGraw-Hill, New York, 1981, 2nd edn.)

COOKE, D. H., 'On prediction of off-design multistage turbine pressures by Stodola's ellipse',. Journal of Engineering for Gas Turbines and Power, 1985, 107 pp. 596-606

CORI, R., and BUSI, T. 'Parameter identification of a drum boiler power plant'. Pro- ceedings 3rd Power Plant Dynamics, Control and Testing Symposium, Knoxville, 1977

CORI, R., DE MARCO, A., GARBOSSA, G., LABANTI, E, and SKULL, G.: 'Validation and application of a digital-computer mathematical model, for the simulation of the static and dynamic behaviour of a steam generator'. Proceedings LXXV Annual Meeting of the Italian Electrotechnical and Electronic Association, 1974 (in Italian)

CORI, R., SPELTA, S., GUAGLIARDI, G. A., PRETOLANI, E, MALTAGLIATI, P., and PERSICO, F.: 'The LEGOCAD system: a computer aided power plant modelling environment. Proceedings AEI National Symposium, Lecce, 1989

DIN 40719-6, 'Diagrams, charts, tables; rules for function charts'. DIN, 1992 DIN IEC 3B/256/CD, 2nd Edition: 'Specification language GRAFCET for sequential

function charts', DIN, 1999 DIN standards home page, www.normung.din.de DIXON, S. L., 'Fluid Mechanics, thermodynamics of turbomachinery' (Pergamon

Press, Oxford, 1975) DYMOLA home page, www.dynasim.se ELMQVIST, H., CELLIER, E E., and OTI'ER, M.: 'Object-oriented modelling of

hybrid systems'. Proceedings of the ESS Symposium, Delft, 1993 ELMQVIST, H., MATTSSON, S., and Oq"I'ER, M.: 'Modelica- a language for phys-

ical system modelling, visualization and interaction'. Proceedings IEEE Syrup. CACSD, Hawaii, 1999, pp. 630-639

FERRETTI, G., and MAFFEZZONI, C.: 'Monitoring and diagnosis of a pulverization process'. Proceedings IFAC/IMACS Symposium on Fault Detection, Supervision and Safety for Technical Processes, Baden-Baden, 1991

FERRETTI, G., and PIRODDI, L. 'Estimation of NOx emissions in thermal power plants using neural networks', ASME Journal of Engineering for Gas Turbines and Power, 2001, 123, (2), pp. 465-471

Page 44: FPP-model_sim

Modelling of power plants 59

FRYLING, G. R.: 'Combustion engineering - a reference book on fuel burning and steam generation' (Combustion Engineering Inc., New York, 1966)

GLASSMAN, I., 'Combustion' (Academic Press, New York, 1977) 'gPROMS: advanced user guide'. Technical report, Process Systems Enterprise,

1998a) 'gPROMS: introductory user guide'. Technical report, Process Systems Enterprise,

1998b GUAGLIARDI, G. A., MIGLIAVACCA, G., and SPELTA, S.: 'Simulink has a new

partner: LegoPC'. Info@teoresi bulletin, June 2000 (in Italian) HOTTEL, H. C., and SAROFIM, A. F.: 'Radiative transfer' (McGraw-Hill, New

York, 1967) 'IEC1131-3 programmable controllers: programming languages'. IEC TC65/SC65B,

1993 INCROPERA, E P., and DE WITT, D. P.: 'Fundamentals of heat and mass transfer'

(John Wiley, Chichester, 1985, 2nd edn.) ISA: 'ISA handbook of control valves' (ISA, 1971, 2nd edn.) ISA home page, www.isa.org 'ISA standard ANSI/ISA-88.01-1995', (ISA, 1995) KWATNY, H. G., and BAUERLE, J.: 'Simulation analysis of the stability of coal fired

furnaces at low load'. Proceedings 2nd IFAC Workshop Modelling and Control of Electric Power Plants, Philadelphia, 1986

KWATNY, H. G., and BERG, J.: 'Drum level regulation at all loads: a study of system dynamics and conventional control structures'. Preprint 12th IFAC World Congress, Sydney, 1993

LAUSTERER, G. K., FRANKE, J., and EITELBERG, E.: 'Modular modelling applied to a Benson boiler'. Proceedings first IFAC Workshop on Modelling and Control of Electric Power Plants, Pergamon, 1984

LEVA, A., MAFFEZZONI, C., and BENELLI, G.: 'Validation of drum boiler models through complete dynamic tests', Control Engineering Practice, 1999, 7, (1), pp. 11-26

LUNARDI, L. A.: 'The finite element method in the dynamic simulation of heat exchangers'. Master thesis, Dipartimento di Elettronica e Informazione, Politecnico di Milano, 1999 (in Italian)

MAFFEZZONI, C.: 'Issues in modelling and simulation of power plants'. IFAC Sym- posium on Control of Power Plants and Power Systems (invited paper), Munich, 1992 pp. 15-23

MAFFEZZONI, C., and AIME, M. L.: 'Compact dynamic modelling of gas turbine including N Ox emissions'. IFAC Symposium on Power Plants and Power Systems Control 2000, pp. 182-187, Brussels, 2000

MAFFEZZONI, C., and GIRELLI, R.: 'MOSES: Modular modelling of physical systems in an object-oriented database', Mathematical Modelling of Systems, 1998, 4, (2), pp. 121-147

MAFFEZZONI, C., and KWATNY, H. G.: 'Control of electric power generating plants', in LEVINE, W. S. (Ed.): Control systems applications, (CRC Press, New York, 1999)

Page 45: FPP-model_sim

60 Thermal power plant simulation and control

MAFFEZZONI, C., MAGNANI, G., and MARCOCCI, L.: 'Computer-aided mod- elling of large power plants'. Proceedings first IFAC Workshop 'Modelling and Control of Electric Power Plants, Pergamon, 1984

MAFFEZZONI, C., FERRARINI, L., and CARPANZANO, E.: 'Object-oriented models for advanced automation engineering'. Control Engineering Practice, 1999, 7, (8), pp. 957-968

MATTSSON, S., and ANDERSSON, M.: 'OMOLA - an object-oriented modelling language'. In JAMSHIDI, M., and HERGET, C. (Eds.): 'Recent advances in computer aided control systems engineering' (Elsevier, Amsterdam, 1992)

'Modelica: a unified object-oriented language for physical systems modelling - language secification, v. 1.2'. Technical report, Modelica Design Group, 1999

'Modular modelling system (MMS): a code for the dynamic simulation of fossil and nuclear power plants, overview and general theory. Technical report CS/NP-2989, EPRI, 1983

MORTON, K. W., and PARROT, A. K.: 'Generalized galerkin methods for first-order hyperbolic equations'. Journal of Computational Physics, 1980, 36, pp. 249-270

PERRY, R. H., and GREEN, D.: 'Perry's chemical engineers' handbook' (McGraw- Hill, New York, 1985)

PIELA, P. C., EPPERLY, T. G. WESTERBERG, K. M., and WESTERBERG, A. W. 'ASCEND, an object-oriented computer environment for modelling and analysis: the modelling language', Computers and Chemical Engineering, 1991, 15, pp. 53-72

'Properties of water and steam in SI Units, 4th enlarged printing'. (Springer-Verlag, Berlin, 1989)

ProTRAX home page, www.traxcorp.com QUARTERONI, A., and VALLI, A.: 'Numerical approximation of partial differential

equations' (Springer-Verlag, Berlin, 1997, 2nd edn.) SALISBURY, J. K.: 'Steam turbines and their cycles' (John Wiley, New York, 1950) SIEGEL, R., and HOWELL, J. R.: 'Thermal radiation heat transfer' (McGraw-Hill,

New York, 1972) 'SIMCON-X engineering station: model development'. Technical report ABB

SIMCON, 1994a 'SIMCON-X Profile'. Technical report ABB SIMCON, 1994b STULTZ, S. C., and KITRO, J. B. (Eds.): 'Steam: its generation and use' (Babcock

& Wilcox, Barberton, 1992, 40th edn.) WEBER, D. S., KONOPACKI, W. A., and MASSIMO, E M. 'Modelling and simula-

tion of hanford K-Area boiler-turbine-generator system'. Technical report ERDA 76-151, 1976