模型预测控制工具箱

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

模型预测控制工具箱™提供功能,一个应用程序和Simulink金宝app®模块设计和仿真控制器使用线性和非线性模型预测控制(MPC)。该工具箱允许您指定植物和扰动模型、视野、约束和权重。通过运行闭环仿真,您可以评估控制器性能。

您可以通过在运行时改变控制器的权重和约束来调整控制器的行为。工具箱提供了可部署的优化求解器,还允许您使用自定义求解器。要控制一个非线性对象,可以实现自适应、增益调度和非线性MPC控制器。对于具有快速采样率的应用程序,工具箱允许您从常规控制器生成显式模型预测控制器或实现近似解决方案。

对于快速原型设计和嵌入式系统实现,包括部署优化解码器,工具箱支持C代码和IEC 61131-3结构化文本生成。金宝app

开始:

设计模型预测控制器

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

Simulink中的MPC设金宝app计

模型和模拟MPC控制器在Simulink中使用MPC控制器块和工具箱提供的其金宝app他块。修剪并线性化模拟模型以计算MPC控制器的内金宝app部线性时间不变工厂模型,并使用植物输入和输出的标称值金宝app仿真软件控制设计™

MATLAB中的MPC设计

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

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

自动驾驶的应用程序

使用预构建的Simulink模块加速ADAS系统的开发。金宝app利用参考实例快速设计ADAS控制器。从Simulink模块生成代码,用于在车辆中部金宝app署MPC控制器。

预先构建的块

使用Adaptive Cruise Control System,Lane保持辅助系统和路径控制系统块作为ADAS应用程序的起点并根据需要自定义设计。从预构建块生成用于车载部署的代码。

利用预建的Simulink模块设计自适金宝app应巡航控制系统。

参考应用实例

使用参考应用程序示例来通过工作流程来设计和部署MPC控制器,用于自动化驱动系统。参考应用程序示例还向您展示了系统的不同部分,可以在各种级别的保真度下进行建模。

线性模型预测控制器

为具有线性动力学的系统设计MPC控制器。设计具有随工况变化动态的电站自适应增益调度MPC控制器。

线性MPC

通过指定一个内部对象模型作为一个线性时不变(LTI)系统,或通过Simulink控制设计线性化一个Simulink模型来设计一个线性MPC控制器。金宝app或者,使用System Identification Toolbox™导入从测量的输入输出数据创建的模型。

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

自适应政策委员会

设计和仿真自适应MPC控制器使用命令行功能和自适应MPC控制器块。在运行时更新您的工厂模型,并将其作为控制器的输入提供。在自适应模型预测控制器中,使用一个内建的线性时变卡尔曼滤波器来保证状态估计的渐近稳定性。

Gain-Scheduled MPC

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

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

MPC参数规范,状态估计和设计评审

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

控制器参数

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

在MPC设计器应用中指定控制器参数。

状态估计

使用内置状态估计器从测量输出估计控制器状态。或者,使用自定义算法进行状态估计。

自定义状态估计。

设计评审

使用内置诊断功能检测MPC控制器的潜在稳定性和鲁棒性问题。在控制器设计期间使用诊断结果调整控制器权重和约束,以避免运行时失败。

利用设计评审报告中的建议改进控制器设计。

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

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

运行时参数调优

调整您的MPC控制器的权重和约束,以在运行时优化其性能,而无需重新设计或重新实现它。在两种MATLAB中执行运行时控制器调优®和仿真软金宝app件。

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

运行时性能监控

访问优化状态信号来检测优化可能无法收敛的罕见情况。使用这些信息来指导有关备份控制策略的决策。

实时检测控制器故障。

实现快速模型预测控制器

在计算资源有限的应用中设计、模拟和部署MPC控制器

明确的政策委员会

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

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

近似(理想)的解决方案

使用近似(次优)解设计、仿真并部署一个保证最坏情况执行时间的MPC控制器。

最优和近似(次优)解的执行时间比较。金宝搏官方网站

非线性模型预测控制器

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

最优规划

使用非线性MPC控制器进行最优规划应用,需要一个具有非线性成本或约束的非线性模型。

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

反馈控制

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

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

经济政策委员会

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

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

代码生成

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

代码生成与MATLAB和Simulink金宝app

在Simulink中设计一个MPC控制器,并分别使用Si金宝appmulink Coder™或Simulink PLC Coder™生成C代码或IEC 61131-3结构化文本。使用MATLAB Coder™在MATLAB中生成C代码并部署它进行实时控制。或者,使用MATLAB编译器™打包和共享您的MPC控制器作为一个独立的应用程序。

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

内置的解决者

从提供的活动集和内点二次规划(QP)求解器生成代码,以便在嵌入式处理器上有效实现。对于非线性问题,使用序列二次规划(SQP)求解器从优化工具箱模拟和代码生成。将生成的代码部署到任意数量的处理器。

内置的解决者。

定制解决方案

使用EmbotechFORCES PRO QP和非线性规划(NLP)求解器来模拟和生成线性和非线性MPC控制器的代码。或者,使用定制的QP和NLP求解器进行模拟和代码生成。

定制的QP求解器的模拟和代码生成。

最新的特性

与FORCES PRO集成

仿真和生成代码的MPC控制器与FORCES PRO解决方案开发的Embotech AG

内点QP解算器

有效地计算大规模MPC问题的最优控制动作

非线性MPC代码生成

生成代码的非线性MPC控制器使用默认的fmincon求解与SQP算法

看到发行说明有关这些特性和相应功能的详细信息。