Description
Proportional + Integral controller with AutoTuning, Automatic, Tracking mode and bias signal.
The control law is defined as
1+sTi
CS(s) = Kp ------- (SP(s) - PV(S))
sTi
Scheme
Name | Description | Conditional? |
SP | Set Point | NO |
PV | Process Variable | NO |
CS | Control Signal | NO |
TR | Track Reference signal | YES (useTS) |
TS | Track Switch signal | YES (useTS) |
Bias | Biasing signal | YES (useBIAS) |
ATreq | AutoTuning request | YES (useAT) |
The controller can have various operating conditions:
- Automatic,
- Auto Tuning,
- and Tracking
In the Automatic mode, the control output is computed with the proportional+integral control law, while in the tracking mode
it is defined by the input TR.
Auto Tuning
This section presents the Modelica realisations of the fully digital of the considered autotuning methodology.
The block inputs are the set point (SP) and the process variable (PV), plus a boolean one, a pulse on which
initiates the autotuning procedure; the output is clearly the control signal (CS).
The initial values for K and Ti, as well as the required phase margin pm, are provided as parameters.
The autotuning procedure is composed of the following steps:
It is worth noticing that any industrial realisation would be more articulated than those illustrated in the following.
For example, some logic would need introducing to abort the procedure in the case of unexpected and/or possibly harmful
system behaviours, a confirmation should be requested to the operator in order to accept or decline the proposed
parameters prior to updating the PI, and so forth. Such features are however omitted here since they are lengthy to
discuss in the necessary detail, and substantially inessential for the purpose of this work.
Mixed Mode
When everything is digital, things are simple, and the only issue to care about is to correctly manage the regulator tracking
while the relay is driving the control signal so as to achieve the required permanent oscillation. If conversely one wants to
represent the controller as a continuous-time system, it is necessary to suitably coordinate it with the digital procedure.
The solution adopted here can be summarised as follows. First, implement the controller in the desired form (here, for consistence
with the digital case, an antiwindup PI was chosen) as differential and algebraic equations. Then, realise the autotuning procedure
as a digital algorithm, including the control computation during that procedure, exactly as it was in the fully digital case.
Finally, manage the autotuning request event by (a) setting a flag that selects the control output to be that coming from the
equations or the algorithm, depending on the mode, and (b) initialising the algorithm output to the last equation output.
Analogously, manage the autotuning termination by resetting the above flag, and reinitialising the equation-based controller state
to match the last algorithm output.
The only (small) disadvantage of such a solution is that the equation-based controller stays in place during the autotuning phase.
However the resulting overhead is generally very limited, given the invariantly simple structure of the controller, while there is
a gain in terms of simplicity with respect to possible alternative solutions attempting to avoid said overhead.
References
For more information please refers to the following
paper:
Efficient hybrid simulation of autotuning PI controllers
Alberto Leva, Marco Bonvini
8th Modelica Conference, Dresden, Germany
march 20-22, 2011
- Industrial Control Systems (v 1.0.0) : April-May 2012
- List of revisions:
- 11 May 2012 (author: Marco Bonvini)
- Main Authors:
- Marco Bonvini; <bonvini@elet.polimi.it>
- Alberto Leva <leva@elet.polimi.it>
- Politecnico di Milano
- Dipartimento di Elettronica e Informazione
- Via Ponzio 34/5
- 20133 Milano - ITALIA -
- Copyright:
- Copyright © 2010-2012, Marco Bonvini and Alberto Leva.
- The IndustrialControlSystems package is free software; it can be redistributed and/or modified under the terms of the Modelica license.
Generated at 2024-11-26T19:26:15Z
by OpenModelicaOpenModelica 1.24.2 using GenerateDoc.mos