.Buildings.Controls.OBC.Utilities.PIDWithAutotuning.FirstOrderAMIGO

Autotuning PID controller with an AMIGO tuner that employs a first-order system model

Information

This block implements a PI or PID controller with the control gains being tuned by a rule-based method. This rule-based method automatically conducts tuning through the following steps:

Step 1: Introduce a relay disturbance

Step 2: Extract parameters of a first-order plus time-delay (FOPTD) model

Step 3: Calculate the PID gains

This block is implemented using Buildings.Controls.OBC.Utilities.PIDWithInputGains and inherits most of its configuration. However, through the parameter controllerType, the controller can only be configured as PI or PID controller.

Autotuning process

Before the tuning process starts, this block has output from Buildings.Controls.OBC.Utilities.PIDWithInputGains. The PID tuning process starts when a request for performing autotuning occurs, i.e., when the value of the boolean input signal triTun changes from false to true. During the tuning process, the block has the output from a relay controller (see Buildings.Controls.OBC.Utilities.PIDWithAutotuning.Relay.Controller). The PID tuning process ends automatically (see details in Buildings.Controls.OBC.Utilities.PIDWithAutotuning.BaseClasses.Relay.TunMonitor), at which point this block reverts the output from the PID controller that uses the tuned PID parameters.

Note:

Guidance for setting the parameters

The performance of the autotuning is determined by several parameters, including the typical range of the control error r, the reference output for the tuning process yRef, the higher and lower values for the relay output yHig and yLow, and the deadband deaBan. These parameters must be specified on a case-by-case basis. To set them, the user should conduct the following steps.

Step 1: Conduct a "test run"

Step 2: Calculate yRef and deaBan

Step 3: Determine yHig and yLow

References

J. Berner (2017). "Automatic Controller Tuning using Relay-based Model Identification." Department of Automatic Control, Lund University.

Revisions


Generated at 2025-06-30T18:20:57Z by OpenModelicaOpenModelica 1.25.0 using GenerateDoc.mos