主要内容

plotSection

将MPC控制律可视化为二维截面图

描述

例子

plotSection (EMPCobjplotParams显示显式MPC控制器所使用的分段仿射区域的二维剖面图。控制律的自由参数除两个外都是固定的,如plotParams.剩下的两个变量构成了绘图轴。默认情况下,EMPCobj。范围属性设置这些轴的边界。

例子

全部折叠

定义一个双积分器对象模型,并为该对象建立一个传统的隐式MPC控制器。约束受操纵变量的绝对值小于1

Plant = tf(1,[1 0 0]);MPCobj = mpc(3)植物,0.1,10日;
- - - >“权重。mpc对象的操纵变量属性为空。假设默认的0.00000。- - - >“权重。mpc对象的操控变量率属性为空。假设默认的0.10000。- - - >“权重。mpc对象的属性为空。假设默认的1.00000。
MPCobj。MV =结构(“最小值”, 1“马克斯”1);

定义用于生成显式MPC控制器的参数边界。

范围= generateExplicitRange (MPCobj);
- - - >转换”模型。将“mpc”对象的“属性”放入状态空间。——>模型转换为离散时间。假设对测量的输出通道#1没有增加任何干扰。——>”模式。mpc对象的Noise属性为空。假设每个测量输出通道上都有白噪声。
range.State.Min (:) = (-10; -10);range.State.Max (:) = (10; 10);range.Reference.Min (,) = 2;range.Reference.Max (,) = 2;range.ManipulatedVariable.Min (,) = -1.1;range.ManipulatedVariable.Max (,) = 1.1;

创建一个显式MPC控制器。

EMPCobj = generateExplicitMPC (MPCobj、范围);
已发现/未勘探区域:19/ 0

创建一个默认绘图参数结构,它指定所有控制器参数都固定在标称值上用于绘图。

plotParams = generatePlotParameters (EMPCobj);

允许在创建图形时改变控制器状态。

plotParams.State.Index = [];plotParams.State.Value = [];

将被操纵的变量和参考信号固定为0策划。

plotParams.ManipulatedVariable.Index (1) = 1;plotParams.ManipulatedVariable.Value (1) = 0;plotParams.Reference.Index (1) = 1;plotParams.Reference.Value (1) = 0;

生成显式MPC控制器的二维剖面图。

plotSection (EMPCobj plotParams)

图PiecewiseAffineSectionPlot包含一个轴对象。标题为“显式MPC多面体分区二维图”的轴对象包含19个patch类型的对象。

ans = Figure (1: PiecewiseAffineSectionPlot) with properties: Number: 1 Name: 'PiecewiseAffineSectionPlot' Color: [1 1 1] Position: [348 480 583 437] Units: 'pixels'显示所有属性

输入参数

全部折叠

显式MPC控制器,您希望为其创建一个二维分段图,指定为显式MPC控制器对象。使用generateExplicitMPC创建显式MPC控制器。

显式MPC控制律的截面图参数,指定为结构。使用generatePlotParameters创建一个初始结构,其中控制器的所有参数都固定在其标称值。然后,在调用之前,根据需要修改这个结构plotSection.看到generatePlotParameters为更多的信息。

介绍了R2014b