The Lim PID component models a proportional-integral-derivative (PID) controller. It differs from the PID Controller in that the proportional gain is coupled with the integral and the derivative gain. This type of setup is more common in an industrial controller.
Anti-windup compensation is incorporated to drive the integrator to 0 if the output is near the saturation points, and the high-frequency derivative gain is limited to avoid excessive amplification of measurement noise.
Setpoint weighting is present, allowing you to specify the setpoint weight in the proportional and the derivative parts independently from the measurement. The controller responds to load disturbances and measurement noise independently of this setting ( and ), however, setpoint changes depend on this setting. For example, for the derivative part, it is useful to specify the setpoint weight, to 0 if steps occur in the setpoint signal.
The Signal Size parameter allows the block to operate on a vector of signals rather than a single signal.
|
Initialization
|
|
Based on the setting of the Initial Values parameter, the integrator (I) and derivative (D) components in the PID controller are initialized according to the following table.
Setting
|
Integrator initType
|
Derivative initType
|
none
|
NoInit
|
NoInit
|
steady states
|
SteadyState
|
SteadyState
|
initial states
|
InitialState
|
InitialState
|
initial outputs
|
NoInit
|
SteadyState
|
integrator states
|
InitialState
|
NoInit
|
|
|
In many cases, the most useful initial condition is steady states because initial transients are no longer present. If , then in some cases difficulties might occur. The reason is the equation of the integrator, . The steady state equation, leads to the condition that the input to the integrator is 0. If the input is already (directly or indirectly) defined by another initial condition, the initialization problem is singular (that is, has none or infinitely many solutions). This situation occurs often in mechanical systems, where, for example, . Because speed is both a state and a derivative, it is natural to initialize it with 0. As sketched, this is not possible. The solution is to not initialize or the variable that is used to compute by an algebraic equation.
|