模型预测控制工具箱
设计和仿真模型预测控制器
Model Predictive Control Toolbox™提供功能、应用程序和Simulink金宝app®用于设计和仿真模型预测控制器(MPCs)的模块。工具箱允许您指定植物和扰动模型、范围、约束和权重。通过运行闭环仿真,可以评估控制器的性能。
您可以在运行时通过改变控制器的权重和约束来调整控制器的行为。为了控制一个非线性的植物,你可以实现自适应和增益调度的mpc。对于具有快速采样率的应用程序,可以从常规控制器生成显式模型预测控制器或实现近似解。
快速原型和嵌入式系统的实现中,工具箱支持C代码和IEC 61131-3结构化文本生成。金宝app
入门:
MPC在MATLAB中的设计
使用命令行功能设计MPC控制器。限定内部工厂模型,调整权重,约束和其它控制器参数,和模拟闭环系统响应于评估控制器的性能。
在Simulink中进行MP金宝appC设计
使用MPC控制器块和工具箱提供的其他块在Simulink中建模和模拟MPC控金宝app制器。对Simulink模型进行修剪和线性化,以金宝app计算MPC控制器的内部线性定常植物模型,并使用Simulink Control Design™计算植物输入和输出的标称值。
MPC设计应用
通过定义交互式地设计MPC控制器内部工厂模型和调整视野,权重和约束。使用模拟场景验证控制器的性能。多个MPC控制器比较回应。
预先构建的块
使用自适应巡航控制系统,车道保持辅助系统,和路径跟踪控制系统模块为您的ADAS应用程序的起点,并根据需要自定义设计。生成从部署MPC控制器的预置的块的代码。
参考应用程序
引导您通过工作流程设计,并为您的自动驾驶系统上部署MPC控制器杠杆参考应用。参考应用程序还告诉你如何你的系统的不同部分可以在不同层次的保真度进行建模。
线性MPC
通过从控制系统工具箱™,或通过线性化的Simulink控制设计Simulink模型指定内部工厂模型为线性时变(LTI)系统设计线性MPC控制器。金宝app可替代地,导入使用系统识别工具箱™测量的输入 - 输出数据创建的模式。
自适应MPC
设计并通过使用命令行功能和自适应MPC控制器块模拟自适应MPC控制器。更新您的工厂模型在计算每一步,并为其提供作为输入到控制器。使用内置的线性时变与渐近稳定保证在自适应模型预测控制器状态估计(LTV)卡尔曼滤波器。
增益调度MPC
控制非线性植物在宽范围内与多个MPC控制器块操作条件。设计每个工作点MPC控制器和运行时,在控制器之间进行切换。
控制器参数
界定所述内部设备模型之后,通过指定的采样时间,预测和控制的视野,比例因子,输入和输出的限制,和权重完成MPC控制器的设计。该工具箱还支持约束软化和时变约束和金宝app权重。
设计回顾
检测潜在的稳定性和鲁棒性问题与使用工具箱中提供的诊断功能您的MPC控制器。使用此诊断工具控制器的设计来避免运行时的故障过程中调整控制器的权重和约束。
运行时间参数调整
调整MPC控制器的运行时权重和约束以优化其在运行时的性能,而无需重新设计或重新实现它。在MATLAB和Simulink中执行运行时控制器调优。金宝app
运行时性能监控
进入优化状态信号来检测极少数情况下的优化可能无法收敛,然后再决定是否应使用备份的控制策略。
明确MPC
生成一个隐含的MPC设计一个明确的MPC控制器。简化用于减小的内存占用量所产生的明确的MPC控制器。
反馈控制
模拟下非线性成本和限制非线性植物的闭环控制。默认情况下,非线性MPC控制器使用优化工具箱™解决非线性规划问题。您还可以指定自己的自定义非线性求解。
经济政策委员会
设计经济MPC控制器来优化控制器,用于在任意非线性约束的任意成本函数。您可以使用线性或非线性预测模型,自定义非线性成本函数,和自定义非线性约束。
代码生成与MATLAB和Simulink金宝app
在Simulink中设计MPC控制器,分别使用Simul金宝appink Coder™和Simulink PLC Coder™生成C代码和IEC 61131-3结构化文本。使用MATLAB编码器™在MATLAB中生成C代码并进行实时控制。或者,使用MATLAB编译器TM值来部署MPC控制器。
嵌入式求解
生成的嵌入式处理器上从设置二次规划(QP)解算器的有效实现的代码。所生成的代码部署到处理器的一个任意数字。使用提供QP求解器与标准制定MPC或者用它来解决定制MPC问题。