modelGasboiler_dynamic_L1
Extends from TransiEnt.Producer.Heat.Gas2Heat.SmallGasBoiler.Base.PartialGasboiler (Full modulating gasboiler, partial model with splitted combustion and heat-transfer).
Information
1. Purpose of model
Simple dynamic gas boiler model with splitted heat generation and emission (CO2) calculation
2. Level of detail, physical effects considered, and physical insight
By default, a given heat duty Qflow,set is set (limited) to the boilers characteristica (Qflow,n, Qflow,min) and then set to a static ideal heat exchanger. For the given heat carrier supply temperature the required heat carrier mass flow is calulated. For the operational mode the supply temperature can also be left variable.
In hold-temperature-mode the boiler needs no heat flow set-input and will heat the carrier to the given temperature within its limits of power. The Qflow,set-value is therefore calculated within the model. In this mode, the boiler can also operate with staged power (on/off or full/part/off), where the power percentage at the part-stage can be given.
The boiler's dynamic is modelled signal based with a first order delay which is variable with the power change step size so that smaller duty changes can be served faster.
From the part load of the boiler and the return flow temperature, the boiler efficiency and fuel heat input is calculated with characteristical lines.

Depending on the users preference (set by the parameter referenceNCV), efficiencies and power calculations in this model are based on either the net or the gross calorific value (NCV or GCV, respectively). With a function for dynamic HV calculation the required fuel mass flow as an output-value is generated.
3. Limits of validity
A constant air ratio to be chosen is asumed.
4. Interfaces
Q_flow_set_internal - heat duty input (only in default mode)
T_supply_set_internal - temperature input in K
gasPortIn/Out - port for fuelgas at the inlet and exhaustgas at the outlet
waterPortIn/Out - ports for the heat carrier (water)
m_flow_fuel_req - output of required fuel mass flow rate
m_flow_HC - output of heat carrier mass flow rate
5. Nomenclature
6. Governing Equations
(no remarks)
7. Remarks for Usage
(no elements)
8. Validation
(no validation or testing necessary)
9. References
(no remarks)
10. Version History
Model created by Paul Kernstock (paul.kernstock@tu-harburg.de) July 2015
Revised by Lisa Andresen (andresen@tuhh.de), Aug 2015
Parameters
| Type | Name | Default | Description |
|---|---|---|---|
| SI.SpecificHeatCapacity | cp_water (from PartialGasboiler) | TILMedia.Internals.VLEFluidConfigurations.FullyMixtureCompatible.VLEFluidFunctions.specificIsobaricHeatCapacity_pTxi(WaterMedium, 6*1e5, 273.15 + 60, {1}) | |
| General › Fundamental definitions | |||
| TILMedia.GasTypes.BaseGas | FuelMedium (from PartialGasboiler) | simCenter.gasModel2 | Fuel gas medium |
| TILMedia.GasTypes.BaseGas | ExhaustMedium (from PartialGasboiler) | simCenter.exhaustGasModel | Exhaust gas medium |
| TILMedia.VLEFluidTypes.BaseVLEFluid | WaterMedium (from PartialGasboiler) | simCenter.fluid1 | Heat carrier medium |
| General › Operation mode | |||
| Boolean | holdTemperature (from PartialGasboiler) | false | Boiler produces heat duty given by input. Set to true to only hold supply temperature. |
| Boolean | fixedSupplyTemperature (from PartialGasboiler) | true | Boiler produces a supply temperature given by input. Set to false to leave it variable |
| General › Specification | |||
| SI.HeatFlowRate | Q_flow_n (from PartialGasboiler) | 5e5 | Nominal heating power |
| SI.HeatFlowRate | Q_flow_min (from PartialGasboiler) | 0.1*Q_flow_n | Minimum heat duty for min. efficiency |
| SI.Temperature | T_supply_max (from PartialGasboiler) | 273.15 + 120 | Maximum supply temperature |
| SI.TemperatureDifference | dT_max_DH (from PartialGasboiler) | if simCenter.heatingCurve.T_supply_const == 0 then 41 else simCenter.heatingCurve.T_supply_const - simCenter.heatingCurve.T_return_const | Maximum heat carrier temperature spread |
| SI.MassFlowRate | m_flow_min (from PartialGasboiler) | 0.15 | Mass flow rate to switch off. Non-zero mass flow leads to higher numerical stability |
| SI.Pressure | Delta_p_nom (from PartialGasboiler) | 2000 | Nominal pressure loss |
| Integer | dimension | 2 | Boiler dimension |
| Boolean | modulating | true | Modulating operation, staged power production if false (select stages then!) |
| Integer | stages | 1 | Number of burner stages for non-modulating operation |
| Real | stagePercentage | 0.3 | Power percentage at burner stage 2 |
| SI.TemperatureDifference | T_supply_tol | 3 | Acceptable absolute tolerance of supply temperature for controlling (consider dynamics of boiler!) |
| General › Combustion | |||
| Boolean | condensing (from PartialGasboiler) | true | Condensing operation, influence on emission calculation only. |
| Real | lambda (from PartialGasboiler) | 1.2 | Combustion air ratio |
| Boolean | referenceNCV (from PartialGasboiler) | true | true, if heat calculations shall be in respect to NCV, false will give GCV |
| General › Statistics | |||
| TransiEnt.Basics.Types.TypeOfResource | TypeOfResource (from PartialGasboiler) | TransiEnt.Basics.Types.TypeOfResource.Conventional | Type of resource |
| TransiEnt.Basics.Types.TypeOfPrimaryEnergyCarrierHeat | TypeOfEnergyCarrierHeat (from PartialGasboiler) | TransiEnt.Basics.Types.TypeOfPrimaryEnergyCarrierHeat.NaturalGas | Type of energy carrier |
| TransiEnt.Basics.Units.MonetaryUnitPerEnergy | Cspec_demAndRev_gas_fuel (from PartialGasboiler) | simCenter.Cfue_GasBoiler | Specific demand-related cost per gas energy |
Connectors
| Type | Name | Default | Description |
|---|---|---|---|
| TransiEnt.Basics.Interfaces.Thermal.HeatFlowRateIn | Q_flow_set (from PartialGasboiler) | Q_flow_set_internal | Heat duty |
| TransiEnt.Basics.Interfaces.General.TemperatureIn | T_supply_set (from PartialGasboiler) | T_supply_set_internal | Supply temperature set value |
| TransiEnt.Basics.Interfaces.General.MassFlowRateOut | m_flow_HC_req (from PartialGasboiler) | m_flow_HC_req_internal | Required heat carrier mass flow -> Usage not recommended, may lead to numerical instability! |
| TransiEnt.Basics.Interfaces.Thermal.FluidPortOut | waterPortOut (from PartialGasboiler) | ||
| TransiEnt.Basics.Interfaces.Thermal.FluidPortIn | waterPortIn (from PartialGasboiler) | ||
| TransiEnt.Basics.Interfaces.Gas.IdealGasEnthPortIn | gasPortIn (from PartialGasboiler) | ||
| TransiEnt.Basics.Interfaces.Gas.IdealGasEnthPortOut | gasPortOut (from PartialGasboiler) |
Components
| Type | Name | Default | Description |
|---|---|---|---|
| TransiEnt.SimCenter | simCenter (from PartialGasboiler) | ||
| TransiEnt.ModelStatistics | modelStatistics (from PartialGasboiler) | ||
| Boolean | switch (from PartialGasboiler) | Boiler switch | |
| SI.HeatFlowRate | Q_flow_set_internal (from PartialGasboiler) | Heat set value | |
| SI.HeatFlowRate | Q_flow_out (from PartialGasboiler) | Generated heat | |
| SI.HeatFlowRate | Q_flow_fuel (from PartialGasboiler) | m_flow_fuel*CalorificValue | Consumed fuel (related to NCV or GCV as defined) |
| SI.SpecificEnthalpy | CalorificValue (from PartialGasboiler) | if referenceNCV then TransiEnt.Basics.Functions.GasProperties.getIdealGasNCV_xi(FuelMedium, xi_in = xi_fuel[1:FuelMedium.nc - 1], NCVIn = 0) else TransiEnt.Basics.Functions.GasProperties.getIdealGasGCV_xi(FuelMedium, xi_in = xi_fuel[1:FuelMedium.nc - 1], GCVIn = 0) | Calorific value of fuel |
| SI.Efficiency | eta (from PartialGasboiler) | product.y | Boiler's overall efficiency |
| SI.Temperature | T_supply_set_internal (from PartialGasboiler) | Internally set supply temperature | |
| SI.Temperature | T_supply (from PartialGasboiler) | temperatureWaterOut.T | Supply temperature |
| SI.Temperature | T_return (from PartialGasboiler) | temperatureWaterIn.T | Return temperature |
| SI.TemperatureDifference | dT (from PartialGasboiler) | T_supply - T_return | Temperature difference |
| SI.MassFlowRate | m_flow_fuel (from PartialGasboiler) | gasPortIn.m_flow | Fuel mass flow rate |
| SI.MassFlowRate | m_flow_CDE (from PartialGasboiler) | gasPortOut.m_flow*gasPortOut.xi_outflow[2] | CDE mass flow rate |
| SI.MassFlowRate | m_flow_air (from PartialGasboiler) | combustion.m_flow_air | Air mass flow rate |
| SI.MassFlowRate | m_flow_HC_req_internal (from PartialGasboiler) | Required heat carrier mass flow rate for heat-duty-controlled mode | |
| SI.MassFlowRate | m_flow_HC (from PartialGasboiler) | waterPortIn.m_flow | Actual heat carrier mass flow rate |
| SI.MassFraction[FuelMedium.nc] | xi_fuel (from PartialGasboiler) | [CH4, C2H6, C3H8, C4H10, N2, CO2, H2] Fuel gas mass fractions | |
| SI.MassFraction[ExhaustMedium.nc] | xi_exhaust (from PartialGasboiler) | [H2O, CO2, CO, H2, O2, NO, NO2, SO2, N2] Exhaust gas mass fractions | |
| Modelica.Blocks.Logical.Switch | boilerswitch2 (from PartialGasboiler) | off-switch, when supply temperature is lower than return temperature | |
| Modelica.Blocks.Logical.Greater | greater (from PartialGasboiler) | ||
| Modelica.Blocks.Sources.RealExpression | t_return (from PartialGasboiler) | ||
| Modelica.Blocks.Sources.RealExpression | t_max (from PartialGasboiler) | ||
| TransiEnt.Components.Statistics.Collectors.LocalCollectors.CollectHeatingPower | collectHeatingPower (from PartialGasboiler) | ||
| TransiEnt.Components.Statistics.Collectors.LocalCollectors.CollectGwpEmissionsHeat | collectGwpEmissions (from PartialGasboiler) | ||
| TransiEnt.Components.Statistics.Collectors.LocalCollectors.CollectCostsGeneral | collectCosts (from PartialGasboiler) | ||
| Integer | stageSwitch |