modelPumpInterface_PumpSpeedControlled
Speed controlled polynomial based pump with controller
Extends from AixLib.Systems.HydraulicModules.BaseClasses.BasicPumpInterface (Pump interface for different pump types).
Information
Pump container for the AixLib.Fluid.Movers.PumpsPolynomialBased.PumpSpeedControlled
Parameters
| Type | Name | Default | Description |
|---|---|---|---|
| AixLib.DataBase.Pumps.PumpPolynomialBased.PumpBaseRecord | pumpParam | AixLib.DataBase.Pumps.PumpPolynomialBased.PumpBaseRecord() | pump parameter record |
| Assumptions | |||
| Boolean | allowFlowReversal (from PartialTwoPort) | true | = false to simplify equations, assuming, but not enforcing, no flow reversal |
| Modelica.Units.SI.Volume | V | 0 | Volume inside the pump |
| Nominal condition | |||
| Modelica.Units.SI.MassFlowRate | m_flow_nominal (from PartialTwoPortInterface) | Nominal mass flow rate | |
| Advanced | |||
| Modelica.Units.SI.MassFlowRate | m_flow_small (from PartialTwoPortInterface) | 1E-4*abs(m_flow_nominal) | Small mass flow rate for regularization of zero flow |
| Advanced › Diagnostics | |||
| Boolean | show_T (from PartialTwoPortInterface) | false | = true, if actual temperature at port is computed |
| Initialization | |||
| Modelica.Units.SI.Temperature | T_start (from BasicPumpInterface) | Medium.T_default | Initialization temperature |
| Dynamics › Equations | |||
| Modelica.Fluid.Types.Dynamics | energyDynamics (from BasicPumpInterface) | Modelica.Fluid.Types.Dynamics.DynamicFreeInitial | Type of energy balance: dynamic (3 initialization options) or steady state |
| Modelica.Fluid.Types.Dynamics | massDynamics (from BasicPumpInterface) | energyDynamics | Type of mass balance: dynamic (3 initialization options) or steady state |
| Initialization › Pressure | |||
| Medium.AbsolutePressure | p_start | Medium.p_default | Start value for pressure. |
| General › Power and Efficiency | |||
| Boolean | calculatePower | false | calc. power consumption? |
| Boolean | calculateEfficiency | false | calc. efficency? (eta = f(H, Q, P)) |
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) | |
| AixLib.Fluid.Movers.PumpsPolynomialBased.BaseClasses.PumpBus | pumpBus (from BasicPumpInterface) |
Components
| Type | Name | Default | Description |
|---|---|---|---|
| Modelica.Units.SI.MassFlowRate | m_flow (from PartialTwoPortInterface) | port_a.m_flow | Mass flow rate from port_a to port_b (m_flow > 0 is design flow direction) |
| Modelica.Units.SI.PressureDifference | dp (from PartialTwoPortInterface) | port_a.p - port_b.p | Pressure difference between port_a and port_b |
| Medium.ThermodynamicState | sta_a (from PartialTwoPortInterface) | if allowFlowReversal then Medium.setState_phX(port_a.p, noEvent(actualStream(port_a.h_outflow)), noEvent(actualStream(port_a.Xi_outflow))) else Medium.setState_phX(port_a.p, noEvent(inStream(port_a.h_outflow)), noEvent(inStream(port_a.Xi_outflow))) | Medium properties in port_a |
| Medium.ThermodynamicState | sta_b (from PartialTwoPortInterface) | if allowFlowReversal then Medium.setState_phX(port_b.p, noEvent(actualStream(port_b.h_outflow)), noEvent(actualStream(port_b.Xi_outflow))) else Medium.setState_phX(port_b.p, noEvent(port_b.h_outflow), noEvent(port_b.Xi_outflow)) | Medium properties in port_b |
| Fluid.Movers.PumpsPolynomialBased.PumpSpeedControlled | physics |
Revisions
- 2019-09-18 by Alexander Kümpel:
Renaming and extension from BasicPumpInterface. - 2018-03-01 by Peter Matthes:
Improved parameter setup of pump model. Ordering in GUI, disabled some parameters that should be used not as input but rather as outputs (m_flow_start, p_a_start and p_b_start) and much more description in the parameter doc strings to help the user make better decisions. - 2018-02-01 by Peter Matthes:
Fixes option choicesAllMatching=true for controller. Needs to be __Dymola_choicesAllMatching=true. Sets standard control algorithm to n_set (PumpControlNset). - 2018-01-30 by Peter Matthes:
* Renamed speed controlled pump model (red) from PumpNbound into PumpN as well as PumpPhysicsNbound into PumpPhysicsN. "N" stands for pump speed.
* Moved efficiencyCharacteristic package directly into BaseClasses. This is due to moving the older pump model and depencencies into the Deprecated folder. - 2018-01-29 by Peter Matthes:
* Removes parameter useABCcurves as that is the default to calculate speed and is only needed in the blue pump (PumpH) to calculate power from speed and volume flow. Currently there is no other way to compute speed other than inverting function H = f(Q,N) . This can only be done with the quadratic ABC formula. Therefore, an assert statement has been implemented instead to give a warning when you want to compute power but you use more that the ABC coefficients in cHQN.
* Moves the energyBanlance and massBalance to the Assumptions tab as done in the PartialLumpedVolume model.
* Removes replaceable function for efficiency calculation. There is only one formula at the moment and no change in sight so that we can declutter the GUI.
* Removes parameter Nnom and replaces it with Nstart. As discussed with Wilo Nnom is not very useful and it can be replaced with a start value. The default value has been lowered to a medium speed to avoid collision with the speed/power limitation. For most pumps the maximum speed is limited for increasing volume flows to avoid excess power consumption.
* Increases Qnom from 0.5*Qmax to 0.67*Qmax as this would be a more realistic value. - 2018-01-26 by Peter Matthes:
* In calculation of m_flow_start changes reference to X_start into physics.X_start.
* Changes Nnom from 80 % to 100 % of Nmax. - 2018-01-15 by Peter Matthes:
Changes minimum mass flow rate in ports to +/-1.5*max(pumpParam.maxMinSpeedCurves[:, 1])in order to reduce search space. - 2018-01-10 by Peter Matthes:
Adds parameter T_start to be compatible with PumpPyhsicsNbound model. This way this parameter can be transfert automatically when changing classes. - 2017-12-12 by Peter Matthes:
Changes parameter name n_start into Nnom. - 2017-12-05 by Peter Matthes:
Initial implementation (derived from Pump model with limitation of pump head). Changes nominal volume flow rate to "Qnom=0.5*max(pumpParam.maxMinSpeedCurves[:,1])".