Main Content

Distillation Controller Tuning

This example shows how to use Simulink® Design Optimization™ to optimize the multi-loop controller parameters of a distillation column. The Distillation column produces methanol and is represented as a linear model with delays. The digital multi-loop controller consists of a decoupling matrix and two single-loop PI controllers. The parameters of both the single-loop controllers are tuned simultaneously to satisfy a 14 percent overshoot and 13 minute rise-time step response characteristics.

Open thedistillation_demomodel using the command below and run the simulation. The simulation produces the unoptimized composition of methanol in the column and the initial data for optimization.

open_system(“distillation_demo”)

Double-click the Scope block to view the unoptimized methanol composition in the top and bottom of the column.

Double-click theLinearized Model of Distillation Columnblock. Note that this is a subsystem and shows the model for variation of methanol in the top and bottom of the distillation column.

Double-click the理想的阶跃响应block to view constraints on the step response of the distillation column. These constraints are used to simultaneously tune both of the single-loop controller parameters.

You can launch theResponse Optimizerusing theAppsmenu in the Simulink toolstrip, or thesdotoolcommand in MATLAB®. You can launch a pre-configured optimization task in theResponse Optimizerby first opening the model and by double-clicking on the orange block at the bottom of the model. From theResponse Optimizer, press thePlot Model Responsebutton to simulate the model and show how well the initial design satisfies the design requirements.

There are two curves in the plot representing the methanol composition in the top and bottom of the column.

We start the optimization by pressing theOptimizebutton from theResponse Optimizer. The plots are updated to indicate that the design requirements are now satisfied.

The two solid curves show the final optimized methanol composition in the top and bottom of the distillation column.

% Close the modelbdclose(“distillation_demo”)
Baidu
map