blockVariableSlewRateLimiter
Extends from Modelica.Blocks.Interfaces.SISO (Single Input Single Output continuous control block), TransiEnt.Basics.Icons.Block.
Information
1. Purpose of model
The model is based on ClaRa VariableGradientLimiter
It adds some diagnostic variables to provide more inside if numerical issues lead to odd behaviour. Furthermore the initialization is a little more robust by using the homotopy operator and
a start value with fixed=true.
2. Level of detail, physical effects considered, and physical insight
(Purely technical component without physical modeling.)
3. Limits of validity
(Purely technical component without physical modeling.)
4. Interfaces
Modelica RealInput: minimum gradient allowed
Modelica RealInput: maximum gradient allowed
u: connector of real input signal
5. Nomenclature
(no elements)
6. Governing Equations
(no equations)
7. Remarks for Usage
(no remarks)
8. Validation
Tested in check model "TransiEnt.Basics.Blocks.Check.TestSlewRateLimiter"
9. References
(no remarks)
10. Version History
Model created by Pascal Dubucq (dubucq@tuhh.de), Aug 2014
Model revised by Pascal Dubucq (dubucq@tuhh.de), Apr 2017 : code conventions
Parameters
| Type | Name | Default | Description |
|---|---|---|---|
| Real | Nd | 1/Td | |Expert Settings|Input - Output Coupling|The higher Nd, the closer y follows u |
| Boolean | useThresh | false | |Expert Settings|Numerical Noise Suppression|Use threshould for suppression of numerical noise |
| Boolean | useConstantLimits | true | True, if gradient limits are constant |
| Real | maxGrad_const | 1/60 | |
| Real | minGrad_const | -maxGrad_const | |
| Real | Td | 0.1 | The lower Td, the closer y follows u |
| Real | y_start | 0 | |
| Boolean | useHomotopy | simCenter.useHomotopy | |
| Expert Settings › Numerical Noise Suppression | |||
| Real | thres | 1e-7 | 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. |
| Expert Settings | |||
| Boolean | strict | true | = true, if strict limits with noEvent(..) |
Connectors
| Type | Name | Default | Description |
|---|---|---|---|
| RealInput | u (from SISO) | Connector of Real input signal | |
| RealOutput | y (from SISO) | Connector of Real output signal | |
| Modelica.Blocks.Interfaces.RealInput | maxGrad | maxGrad_ | Maximum gradient allowed |
| Modelica.Blocks.Interfaces.RealInput | minGrad | minGrad_ | Minimum gradient allowed |
Components
| Type | Name | Default | Description |
|---|---|---|---|
| TransiEnt.SimCenter | simCenter |
Revisions
| Revision | Date | Author | Comment |
|---|---|---|---|
| 4954 | 2012-03-02 | A. Haumer & D. Winkler | Initial version based on discussion in #529 |