modelMixingUnit

Example of system control with inverse model in a controller with two degrees of freedom
Diagram of MixingUnit

Extends from Modelica.Icons.Example (Icon for runnable examples), Templates.TwoDOFinverseModelController (Template for a controller with two structural degrees of freedom and an inverse plant model in forward path).

Information

This example demonstrates the usage of the control structure template Modelica_Controller.Templates.TwoDOFinverseModelController2 to control a system by using of an inverse system model in the forward path. The controlled system is a mixing unit described in [1]. See also model of MixingUnit1 for more details.

Within Dymola simulation tool the "Commands / Simulate and Plot Results" selection yields the following simulation result.

Simulation results

References

 [1] Föllinger O. (1998):
Nichtlineare Regelungen I. 8th Edition, Oldenbourg Verlag München.
 

Parameters

TypeNameDefaultDescription
BooleanadditionalMeasurableOutputs (from TwoDOFinverseModelController)trueEnable additional output vector of dimension l
Integerl (from TwoDOFinverseModelController)1Number of measurable outputs
Realx100.42Initial value of state x1 (related concentration of substance A in tank)
Realx10_inv0.6Initial value of state x1 of inverted model
Realx200.01Initial value of state x2 (related temperature in tank)
Realu0-0.0224Initial related temperature of cooling medium [-]
SI.Frequencyfreq1/300Critical frequency of filter
Realc00.848Nominal concentration of substance A on intake
SI.TemperatureT0308.5Nominal temperature of substance A on intake
Realc_startc0*(1 - x10)Initial concentration of substance A in tank
Realc_inv_startc0*(1 - x10_inv)Initial concentration of substance A in tank
SI.TemperatureT_startT0*(1 + x20)Initial temperature in tank
Realc_high_startc0*(1 - 0.72)Concentration change height
SI.TemperatureT_c_startT0*(1 + u0)Initial temperature of cooling medium

Components

TypeNameDefaultDescription
Modelica.Blocks.Math.Feedback[plant.l]feedback (from TwoDOFinverseModelController)
Controller.Internal.Add2add (from TwoDOFinverseModelController)
Controller.Filterfilter (from TwoDOFinverseModelController)
Controller.Interfaces.PartialSISOcontroller (from TwoDOFinverseModelController)
Controller.Templates.Internal.Plant_SISOplant (from TwoDOFinverseModelController)
Modelica.Blocks.Math.InverseBlockConstraintsinverseModel (from TwoDOFinverseModelController)
Internal.Plant_SISOplant_inv (from TwoDOFinverseModelController)
Modelica.Blocks.Sources.Stepstep1
Controller.SampleClocksampleClock