modelControlledPump
Centrifugal pump with ideally controlled mass flow rate
Extends from Modelica.Fluid.Machines.BaseClasses.PartialPump (Base model for centrifugal pumps).
Information
This model describes a centrifugal pump (or a group of nParallel pumps)
with ideally controlled mass flow rate or pressure.
Nominal values are used to predefine an exemplary pump characteristics and to define the operation of the pump.
The input connectors m_flow_set or p_set can optionally be enabled to provide time varying set points.
Use this model if the pump characteristics is of secondary interest. The actual characteristics can be configured later on for the appropriate rotational speed N. Then the model can be replaced with a Pump with rotational shaft or with a PrescribedPump.
Parameters
| Type | Name | Default | Description |
|---|---|---|---|
| SI.VolumeFlowRate | V_flow_single_init (from PartialPump) | m_flow_start/rho_nominal/nParallel | Used for simplified initialization model |
| SI.Position | delta_head_init (from PartialPump) | flowCharacteristic(V_flow_single_init*1.1) - flowCharacteristic(V_flow_single_init) | Delta head for a 10% increase of flow at the initialization point |
| SI.Acceleration | g (from PartialPump) | system.g | Constant gravity acceleration |
| Medium.MassFlowRate | unit_m_flow (from PartialPump) | 1 | |
| Medium.AbsolutePressure | p_a_nominal | Nominal inlet pressure for predefined pump characteristics | |
| Medium.AbsolutePressure | p_b_nominal | Nominal outlet pressure, fixed if not control_m_flow and not use_p_set | |
| Medium.MassFlowRate | m_flow_nominal | Nominal mass flow rate, fixed if control_m_flow and not use_m_flow_set | |
| Boolean | control_m_flow | true | = false to control outlet pressure port_b.p instead of m_flow |
| Boolean | use_m_flow_set | false | = true to use input signal m_flow_set instead of m_flow_nominal |
| Boolean | use_p_set | false | = true to use input signal p_set instead of p_b_nominal |
| SI.VolumeFlowRate | V_flow_op | m_flow_nominal/rho_nominal | Operational volume flow rate according to nominal values |
| SI.Position | head_op | (p_b_nominal - p_a_nominal)/(rho_nominal*g) | Operational pump head according to nominal values |
| Assumptions | |||
| Boolean | allowFlowReversal (from PartialTwoPort) | system.allowFlowReversal | = true to allow flow reversal, false restricts to design direction (port_a -> port_b) |
| Boolean | checkValve (from PartialPump) | false | = true to prevent reverse flow |
| SI.Volume | V (from PartialPump) | 0 | Volume inside the pump |
| Initialization | |||
| Medium.AbsolutePressure | p_a_start (from PartialPump) | system.p_start | Guess value for inlet pressure |
| Medium.AbsolutePressure | p_b_start (from PartialPump) | p_a_start | Guess value for outlet pressure |
| Medium.MassFlowRate | m_flow_start (from PartialPump) | system.m_flow_start | Guess value of m_flow = port_a.m_flow |
| Types.CheckValveHomotopyType | checkValveHomotopy (from PartialPump) | Types.CheckValveHomotopyType.NoHomotopy | = whether the valve is Closed, Open, or unknown at initialization |
| Medium.AbsolutePressure | p_start (from PartialLumpedVolume) | system.p_start | Start value of pressure |
| Boolean | use_T_start (from PartialLumpedVolume) | true | = true, use T_start, otherwise h_start |
| Medium.Temperature | T_start (from PartialLumpedVolume) | if use_T_start then system.T_start else Medium.temperature_phX(p_start, h_start, X_start) | Start value of temperature |
| Medium.SpecificEnthalpy | h_start (from PartialLumpedVolume) | if use_T_start then Medium.specificEnthalpy_pTX(p_start, T_start, X_start) else Medium.h_default | Start value of specific enthalpy |
| Medium.MassFraction[Medium.nX] | X_start (from PartialLumpedVolume) | Medium.X_default | Start value of mass fractions m_i/m |
| Medium.ExtraProperty[Medium.nC] | C_start (from PartialLumpedVolume) | Medium.C_default | Start value of trace substances |
| Characteristics | |||
| Integer | nParallel (from PartialPump) | 1 | Number of pumps in parallel |
| NonSI.AngularVelocity_rpm | N_nominal (from PartialPump) | Nominal rotational speed for flow characteristic | |
| Medium.Density | rho_nominal (from PartialPump) | Medium.density_pTX(Medium.p_default, Medium.T_default, Medium.X_default) | Nominal fluid density for characteristic |
| Boolean | use_powerCharacteristic (from PartialPump) | false | Use powerCharacteristic (vs. efficiencyCharacteristic) |
| Assumptions › Dynamics | |||
| Types.Dynamics | energyDynamics (from PartialLumpedVolume) | system.energyDynamics | Formulation of energy balance |
| Types.Dynamics | massDynamics (from PartialLumpedVolume) | system.massDynamics | Formulation of mass balance |
| Types.Dynamics | substanceDynamics (from PartialLumpedVolume) | massDynamics | Formulation of substance balance |
| Types.Dynamics | traceDynamics (from PartialLumpedVolume) | massDynamics | Formulation of trace substance balance |
| Assumptions › Heat transfer | |||
| Boolean | use_HeatTransfer (from PartialPump) | false | = true to use a HeatTransfer model, e.g., for a housing |
Connectors
| Type | Name | Default | Description |
|---|---|---|---|
| Modelica.Fluid.Interfaces.FluidPort_a | port_a (from PartialTwoPort) | Fluid connector a (positive design flow direction is from port_a to port_b) | |
| Modelica.Fluid.Interfaces.FluidPort_b | port_b (from PartialTwoPort) | Fluid connector b (positive design flow direction is from port_a to port_b) | |
| Modelica.Thermal.HeatTransfer.Interfaces.HeatPort_a | heatPort (from PartialPump) | ||
| Modelica.Blocks.Interfaces.RealInput | m_flow_set | Prescribed mass flow rate | |
| Modelica.Blocks.Interfaces.RealInput | p_set | Prescribed outlet pressure |
Components
| Type | Name | Default | Description |
|---|---|---|---|
| Modelica.Fluid.System | system (from PartialTwoPort) | System wide properties | |
| SI.Volume | fluidVolume (from PartialLumpedVolume) | Volume | |
| Medium.BaseProperties | medium (from PartialLumpedVolume) | ||
| SI.Energy | U (from PartialLumpedVolume) | Internal energy of fluid | |
| SI.Mass | m (from PartialLumpedVolume) | Mass of fluid | |
| SI.Mass | mXi (from PartialLumpedVolume) | Masses of independent components in the fluid | |
| SI.Mass | mC (from PartialLumpedVolume) | Masses of trace substances in the fluid | |
| Medium.ExtraProperty[Medium.nC] | C (from PartialLumpedVolume) | Trace substance mixture content | |
| SI.MassFlowRate | mb_flow (from PartialLumpedVolume) | Mass flows across boundaries | |
| SI.MassFlowRate | mbXi_flow (from PartialLumpedVolume) | Substance mass flows across boundaries | |
| Medium.ExtraPropertyFlowRate | mbC_flow (from PartialLumpedVolume) | Trace substance mass flows across boundaries | |
| SI.EnthalpyFlowRate | Hb_flow (from PartialLumpedVolume) | Enthalpy flow across boundaries or energy source/sink | |
| SI.HeatFlowRate | Qb_flow (from PartialLumpedVolume) | Heat flow across boundaries or energy source/sink | |
| SI.Power | Wb_flow (from PartialLumpedVolume) | Work flow across boundaries or source term | |
| HeatTransfer | heatTransfer (from PartialPump) | ||
| Medium.Density | rho (from PartialPump) | medium.d | |
| SI.Pressure | dp_pump (from PartialPump) | port_b.p - port_a.p | Pressure change |
| SI.Position | head (from PartialPump) | dp_pump/(rho*g) | Pump head |
| SI.MassFlowRate | m_flow (from PartialPump) | port_a.m_flow | Mass flow rate (total) |
| SI.MassFlowRate | m_flow_single (from PartialPump) | m_flow/nParallel | Mass flow rate (single pump) |
| SI.VolumeFlowRate | V_flow (from PartialPump) | Volume flow rate (total) | |
| SI.VolumeFlowRate | V_flow_single (from PartialPump) | Volume flow rate (single pump) | |
| NonSI.AngularVelocity_rpm | N (from PartialPump) | Shaft rotational speed | |
| SI.Power | W_single (from PartialPump) | Power Consumption (single pump) | |
| SI.Power | W_total (from PartialPump) | W_single*nParallel | Power Consumption (total) |
| Real | eta (from PartialPump) | Global Efficiency | |
| Real | s (from PartialPump) | Curvilinear abscissa for the flow curve in parametric form (either mass flow rate or head) | |
| Monitoring | monitoring (from PartialPump) | Monitoring model |
Revisions
- 15 Dec 2008
by Rüdiger Franke:
Model added to the Fluid library