模型预测控制工具箱

设计并仿真模型预测控制器

模型预测控制工具箱™提供的功能,应用程序,和Simulink万博1manbetx®块设计和模拟模型预测控制器器(MPC)。该工具箱允许您指定的植物和干扰模型,层位,约束和权重。通过运行闭环仿真,可以评估控制器的性能。

您可以在运行时改变其权重和约束调整控制器的行为。为了控制非线性设备,就可以实现自适应和增益调度的MPC。对于快速采样速率的应用,您可以生成从一个普通控制器的显式模型预测控制或实施的近似解。

对于快速原型设计和嵌入式系统实现,工具箱支持C代码和IEC 61131-3结构化文本生成。万博1manbetx

开始:

设计模型预测控制器

设计MPC控制器来控制受输入和输出约束的MIMO系统。运行闭环仿真来评估控制器性能。

MPC设计在MATLAB

使用命令行函数来设计MPC控制器。定义一个内部工厂模型,调整权重、约束条件和其他控制器参数,并模拟闭环系统响应以评估控制器性能。

在命令行上设计MPC控制器。

MPC设计在Simulink万博1manbetx

模型,并使用MPC控制器块和由工具箱提供的其他块在Simulink模拟MPC万博1manbetx控制器。修剪和线性化仿真模型来计算您的MPC控制器万博1manbetx的内部线性时不变设备模型和用于利用Simulink控制设计™植物的输入和输出计算的标称值。

自动驾驶的应用

使用预构建的Simulink块加速ADAS系统的开发。万博1manbetx使用参考示例快速设计ADAS控制器。从Simulink块中生成用于在车辆中部署MP万博1manbetxC控制器的代码。

预建块

使用自适应巡航控制系统、车道保持辅助系统和路径跟踪控制系统块作为ADAS应用程序的起点,并根据需要自定义设计。从预构建块生成用于部署MPC控制器的代码。

使用设计的自适应巡航控制系统,预构建的万博1manbetxSimulink模块。

参考应用

利用参考应用程序,通过工作流为您的自动驾驶系统设计和部署MPC控制器。参考应用程序还向您展示了如何在不同的逼真度级别上对系统的不同部分建模。

线性模型预测控制器

为线性动力学系统设计MPC控制器。设计自适应和增益调度MPC控制器的工厂与动态变化的工作条件。

线性MPC

设计线性MPC控制器时,可以从Control system Toolbox™中将内部的工厂模型指定为线性时不变(LTI)系统,或者使用Simulink控制设计对Simulink模型进行线性化。万博1manbetx或者,使用System Identification Toolbox™导入从测量的输入-输出数据创建的模型。

为线性MPC设计指定一个内部工厂模型。

自适应政策委员会

使用命令行函数和自适应MPC控制器块设计和仿真自适应MPC控制器。在每个计算步骤中更新工厂模型,并将其作为输入提供给控制器。在自适应模型预测控制器中,采用具有渐近稳定性保证的内建线性时变卡尔曼滤波器进行状态估计。

Gain-Scheduled MPC

用多个MPC控制器块在大范围的运行条件下控制非线性对象。为每个操作点设计一个MPC控制器,并在运行时在控制器之间进行切换。

使用多个MPC控制器块来设计增益调度的MPC控制器。

MPC设计参数、状态估计和设计评审

通过定义内部工厂模型、调整控制器参数和模拟闭环系统响应来评估控制器性能,从而迭代地改进控制器设计。检查控制器是否存在潜在的设计问题。

控制器参数

定义内部工厂模型之后,通过指定样本时间、预测和控制范围、比例因子、输入和输出约束以及权重来完成MPC控制器的设计。工具箱还支持约束软化和时变约束和权万博1manbetx重。

指定在MPC设计的应用程序控制器参数。

状态估计

使用内置的状态估计器从测量输出中估计控制器状态。或者,在需要使用自定义算法向控制器提供估计值时,使用自定义状态估计选项。

自定义状态估计。

设计评审

使用工具箱提供的诊断功能检测MPC控制器的潜在稳定性和健壮性问题。使用此诊断工具在控制器设计期间调整控制器的权重和约束,以避免运行时故障。

提高利用从设计审查报告的建议控制器的设计。

运行时参数调优和性能监视

通过在运行时调整权重和约束来改进控制器性能。分析控制器的运行时性能。

运行时参数调优

调整运行时的重量和您的MPC控制器的限制而无需重新设计或重新实现它以优化其在运行时的性能。在这两个MATLAB和Simulink执行运行时间控制器调整。万博1manbetx

在运行时调整权重和约束。

运行时性能监控

访问优化状态信号,检测可能出现的优化不收敛的罕见情况,然后决定是否使用备份控制策略。

实时检测控制器故障。

实现快速模型预测控制器

设计,模拟和部署MPC控制器与有限的计算吞吐量的预算申请。

明确的政策委员会

从隐式MPC设计生成显式MPC控制器。简化生成的显式MPC控制器,以减少内存占用。

生成从先前设计的隐式控制器明确的MPC控制器。

近似(理想)的解决方案

使用近似(次优)解决方案设计、模拟和部署MPC控制器,保证最坏情况下的执行时间。

最优解和近似解(次优解)执行时间的比较。万博 尤文图斯

非线性模型预测控制器

设计非线性MPC控制器来控制工厂使用非线性预测模型,成本函数,或约束。

最优规划

使用非线性MPC控制器用于需要非线性成本或约束非线性模型最优规划申请。

基于非线性MPC的飞行机器人轨迹优化与控制。

反馈控制

模拟非线性工厂在非线性成本和约束下的闭环控制。默认情况下,非线性MPC控制器使用优化工具箱™来解决非线性规划问题。您还可以指定自己的自定义非线性求解器。

放热化学反应器的非线性模型预测控制。

经济MPC

设计经济的MPC控制器,对任意非线性约束下的任意代价函数进行控制器优化。您可以使用线性或非线性预测模型、自定义非线性成本函数和自定义非线性约束。

环氧乙烷生产的经济MPC控制。

代码生成

为在Simulink和MATLAB中设计的模型预测控制器生成代码,并将其部署到实时控制应用程序中。万博1manbetx

用MATLAB和Simulink生成代码万博1manbetx

利用Simulink编码器™或Simulink的PLC编万博1manbetx码器™,设计在Simulink MPC控制器和生成的C代码和IEC 61131-3结构化文本分别。使用MATLAB编码器™生成C代码MATLAB和部署进行实时控制。另外,使用MATLAB编译TM部署MPC控制器。

从MPC控制器块生成的C代码。

嵌入式解算器

从提供的二次规划(QP)求解程序生成代码,以便在嵌入式处理器上高效实现。将生成的代码部署到任意数量的处理器上。使用提供的QP解决方案与标准MPC配方或使用它解决自定义MPC问题。

自定义MPC控制器。

自定义QP解算器

使用您选择的自定义二次规划(QP)求解器进行模拟和代码生成。

自定义QP求解器进行仿真和代码生成。