modelPumpstorageStates
Limits input signal by value and gradient depending on active state out of three possible operating states (halt, startup, operating)
Extends from TransiEnt.Components.Turbogroups.OperatingStates.PartialStateDynamic (State graph model with state-depentend maximum values and gradients).
Information
1. Purpose of model
Full documentation is not available yet. Please see comments in code or contact author per mail.
2. Level of detail, physical effects considered, and physical insight
(no remarks)
3. Limits of validity
(no remarks)
4. Interfaces
P_set_star: input for electric power in W
P_set_star_lim: output for electric power in W
5. Nomenclature
(no remarks)
6. Governing Equations
(no remarks)
7. Remarks for Usage
slewRateLimiter: set P_grad_operating =-1, if slewRateLimiter is not needed.
8. Validation
Tested in check model "TestPumpstorageStates"
9. References
(no remarks)
10. Version History
Model modified by Oliver Schülting (oliver.schuelting@tuhh.de) on April 2019: added option to deactivate slewRateLimiter
Parameters
| Type | Name | Default | Description |
|---|---|---|---|
| SI.Time | t_eps (from PartialStateDynamic) | 10 | Threshold time for transitions |
| Real | P_star_init (from PartialStateDynamic) | 0 | Power at startup (p.u.) |
| SI.Frequency | P_grad_inf (from PartialStateDynamic) | 1 | Numerical value for unlimited gradients during shutdown |
| SI.Time | T_thresh (from PartialStateDynamic) | simCenter.thres | Time constant of numerical element between saturation and gradient limiter |
| Real | Td (from PartialStateDynamic) | simCenter.Td | Time constant of derivative approximation in slew rate limiter |
| Boolean | useThresh (from PartialStateDynamic) | simCenter.useThresh | Use threshould for suppression of numerical noise |
| Real | thres (from PartialStateDynamic) | simCenter.thres | If abs(u-y)< thres, y becomes a simple pass through of u. Increasing thres can improve simulation speed. However to large values can make the simulation unstable. A good starting point is the choice thres = tolerance/1000. |
| SI.Frequency | P_grad_operating (from PartialStateDynamic) | 0.02/60 | Maximum Gradient during operation |
| Boolean | useSlewRateLimiter (from PartialStateDynamic) | true | choose if slewRateLimiter is activated |
| Boolean | useHomotopyVarSlewRateLim (from PartialStateDynamic) | simCenter.useHomotopy | true if homotopy shall be used in variableSlewRateLimiter |
| TransiEnt.Basics.Types.OnOffPumpstorageStatus | init_state | TransiEnt.Basics.Types.off | State of Pumpstorage at initialization |
| SI.Time | t_startup | 120 | Startup time |
| Real | P_min_operating_pump | 0.1 | Minimum power pump operation (p.u.) |
| Real | P_min_operating_turb | 0.1 | Minimum power turbine operation (p.u.) |
| Real | P_max_operating_pump | 1 | Maximum power pump operation (p.u.) |
| Real | P_max_operating_turb | 1 | Maximum power turbine operation (p.u.) |
| SI.Frequency | P_grad_startup | 1/max(t_startup, 1) | Maximum Gradient during startup |
Connectors
| Type | Name | Default | Description |
|---|---|---|---|
| Modelica.Blocks.Interfaces.RealOutput | P_grad_star_max_out (from PartialStateDynamic) | Relative maximum gradient in operation | |
| Modelica.Blocks.Interfaces.RealOutput | P_grad_star_min_out (from PartialStateDynamic) | Relative minium gradient in operation | |
| TransiEnt.Basics.Interfaces.Electrical.ElectricPowerIn | P_set_star (from PartialStateDynamic) | Connector of setpoint input signal | |
| TransiEnt.Basics.Interfaces.Electrical.ElectricPowerOut | P_set_star_lim (from PartialStateDynamic) | Limited output signal | |
| Basics.Interfaces.Electrical.ElectricPowerIn | P_actual_star (from PartialStateDynamic) | Connector of actual power |