blockLimPID_110

The LimPID as it was up to ClaRa version 1.1.0

Information

Parameters

TypeNameDefaultDescription
General Design of Controller
Modelica.Blocks.Types.SimpleControllercontrollerTypeModelica.Blocks.Types.SimpleController.PIDType of controller
Realsign1set to 1 if a positive control error leads to a positive control output, else -1
Normalisation of I/O Signals
BooleanperUnitConversiontrueTrue, if input and output values should be normalised with respect to reference values
Realu_ref1Reference value for controlled variable
Realy_ref1Reference value for actuated variable
Limiter for Controller Output
Realy_max1Upper limit of output
Realy_min-y_maxLower limit of output
Time Response of the Controller
Realk1Gain of Proportional block
Modelica.Units.SI.TimeTau_i0.51/Tau_i is gain of integrator block
Modelica.Units.SI.TimeTau_d0.1Gain of derivative block
Anti-Windup Compensation
Modelica.Units.SI.TimeNi0.91/Ni is gain of anti-windup compensation
Derivative Filtering
RealNd1The smaller Nd, the more ideal the derivative block, setting Nd=0 introduces ideal derivative
Controller activation
Booleanuse_activateInputfalseProvide Boolean input to switch controller on/off.
ClaRa.Basics.Units.Timet_activation0.0Time when controller is switched on. For use_activateInput==true the controller is switched on if (time>t_activation AND activateController=true).
ClaRa.Basics.Units.TimeTau_lag_I0.0Time lag for activation of integral part AFTER controller is being switched on
Realy_inactive1Controller output if controller is not active
I/O Filters
RealTau_in0Time constant for input smoothening, Tau_in=0 refers to signal no smoothening
RealTau_out0time constant for output smoothening, Tau_out=0 refers to signal no smoothening
Initialization
InitPIDinitTypeModelica.Blocks.Types.Init.InitialStateType of initialization
BooleanlimitsAtInittrue= false, if limits are ignored during initializiation
Realxi_start0Initial or guess value value for integrator output (= integrator state)
Realxd_start0Initial or guess value for state of derivative block
Realy_start0Initial value of output
Expert Settings › DAE Index Reduction
RealTau_add0Set to >0 for additional state after add block in controller, if DAE-index reduction fails.

Connectors

TypeNameDefaultDescription
Modelica.Blocks.Interfaces.RealInputu_sConnector of setpoint input signal
Modelica.Blocks.Interfaces.RealInputu_mConnector of measurement input signal
Modelica.Blocks.Interfaces.BooleanInputactivateInputtrue, if controller is on
Modelica.Blocks.Interfaces.RealOutputyConnector of actuator output signal

Components

TypeNameDefaultDescription
RealcontrolErroru_s - u_mControl error (set point - measurement)
Modelica.Blocks.Math.GainP
Modelica.Blocks.Continuous.IntegratorI
ClaRa.Components.Utilities.Blocks.DerivativeClaRaD_approx
Modelica.Blocks.Math.Add3addPID
Modelica.Blocks.Math.AddaddI
Modelica.Blocks.Math.GaingainTrack
Modelica.Blocks.Nonlinear.Limiterlimiter
Modelica.Blocks.Sources.ConstantDzero
Modelica.Blocks.Sources.ConstantIzero
Modelica.Blocks.Math.GaintoPUconvert input values to "per unit"
Modelica.Blocks.Math.Feedbackfeedback
Modelica.Blocks.Math.GainfromPUconvert output values to "Real"
Modelica.Blocks.Logical.Switchswitch_OnOff_I
Modelica.Blocks.Sources.ConstantI_off_zero
Modelica.Blocks.Logical.Switchswitch_OnOff
Modelica.Blocks.Sources.RealExpressiony_unlocked
Modelica.Blocks.Sources.BooleanExpressionI_activation
ClaRa.Components.Utilities.Blocks.FirstOrderClaRasmoothPIDInput
ClaRa.Components.Utilities.Blocks.FirstOrderClaRasmoothPIDOutput
Modelica.Blocks.Math.FeedbackaddSat
Modelica.Blocks.Logical.Timertime_lag_I_activation
Modelica.Blocks.Routing.BooleanPassThroughactivate
Modelica.Blocks.Sources.BooleanExpressionactivate_
Modelica.Blocks.Logical.AndcontrollerActive
Modelica.Blocks.Routing.BooleanPassThroughactivateIfNoSwitch
ClaRa.Components.Utilities.Blocks.FirstOrderClaRasmoothPIDOutput1

Revisions

  • 15.04.09 First revision, Boris Michaelsen, XRG Simulation GmbH
  • 25.11.09 Update to independently set the gain and time constants of the PID, added a new parameter "sign" for case dependent control error evaluation, Friedrich Gottelt, XRG Simulation GmbH