Model Predictive Control Toolbox
Design and simulate model predictive controllers
模型预测控制工具箱™提供功能,应用程序和Simulink万博1manbetx®使用线性和非线性模型预测控制(MPC)设计和模拟控制器的块。Toolbox允许您指定工厂和干扰模型,视野,约束和权重。通过运行闭环模拟,您可以评估控制器性能。
您可以通过在运行时改变其权重和约束来调整控制器的行为。工具箱提供可部署的优化求解器,也可以使用自定义求解器。要控制非线性工厂,可以实现自适应,增益预定和非线性MPC控制器。对于具有快速采样率的应用程序,工具箱允许您从常规控制器生成显式模型预测控制器,或实现近似解。
For rapid prototyping and embedded system implementation, including deployment of optimization solvers, the toolbox supports C code and IEC 61131-3 Structured Text generation.
开始:
MPC设计师应用
通过定义交互式设计MPC控制器an internal plant modeland adjusting horizons, weights, and constraints. Validate controller performance using simulation scenarios. Compare responses for multiple MPC controllers.
MPC设计在Simulink万博1manbetx中
Model and simulate MPC controllers in Simulink using the MPC Controller block and other blocks provided by the toolbox. Trim and linearize a Simulink model to compute an internal linear time-invariant plant model for your MPC controller and obtain nominal values for plant inputs and outputs using万博1manbetxSimulink Control Design™.
MADLAB中的MPC设计
使用命令行功能设计MPC控制器。定义内部工厂模型;调整权重,约束和其他控制器参数。模拟闭环系统响应,以评估控制器性能。
预建块
采用the Adaptive Cruise Control System, Lane Keeping Assist System, and Path Following Control System blocks as a starting point for your ADAS application and customize the design as needed. Generate code from the prebuilt blocks for in-vehicle deployment.
Reference Application Examples
采用reference application examples to walk through a workflow for designing and deploying MPC controllers for automated driving systems. Reference application examples also show you how different parts of your system can be modeled at various levels of fidelity.
线性MPC.
Design a linear MPC controller by specifying an internal plant model as a linear time-invariant (LTI) system created with Control System Toolbox™, or by linearizing a Simulink model with Simulink Control Design. Alternatively, import a model created from measured input-output data using System Identification Toolbox™.
自适应MPC.
使用命令行功能和Adaptive MPC控制器块设计和模拟自适应MPC控制器。在运行时更新您的工厂模型,并将其作为控制器的输入提供。使用内置线性时变(LTV)Kalman滤波器,具有保证的渐近稳定性,用于自适应模型预测控制器中的状态估计。
获得预定的MPC
Control nonlinear plants over a wide range of operating conditions with the Multiple MPC Controllers block. Design an MPC controller for each operating point and switch between the controllers at run time.
控制器参数
After defining the internal plant model, complete the design of your MPC controller by specifying the sample time, prediction and control horizons, scale factors, input and output constraints, and weights. The toolbox also supports constraint softening and time-varying constraints and weights.
Design Review
Detect potential stability and robustness issues with your MPC controller using the built-in diagnostic function. Use the diagnostic results to adjust controller weights and constraints during controller design to avoid run-time failures.
运行时参数调整
调整重量和约束s of your MPC controller to optimize its performance at run time without redesigning or reimplementing it. Perform run-time controller tuning in both MATLAB®和Sim万博1manbetxulink。
运行时性能监控
当优化可能无法收敛时,访问优化状态信号以检测罕见的场合。使用此信息指导关于备份控制策略的决策。
Explicit MPC
从隐式MPC设计生成显式MPC控制器,以便更快执行。简化生成的显式MPC控制器,以减少内存占用。
Approximate (Suboptimal) Solution
使用近似(次优)解决方案,设计,模拟和部署MPC控制器,具有保证的最坏情况执行时间。
Optimal Planning
使用非线性MPC控制器,以获得需要非线性成本或约束的非线性模型的最佳规划应用。
反馈控制
基于非线性成本下的非线性植物的闭环控制。默认情况下,非线性MPC控制器使用优化工具箱™来解决非线性编程问题。您还可以指定您自己的自定义非线性求解器。
经济MPC
Design economic MPC controllers to optimize the controller for an arbitrary cost function under arbitrary nonlinear constraints. You can use a linear or nonlinear prediction model, a custom nonlinear cost function, and custom nonlinear constraints.
使用matlab和simulink代码生成万博1manbetx
使用Simulink Coder™或Simulink P万博1manbetxLC编码器™设计Simulink中的MPC控制器,并生成C代码或IEC 61131-3结构化文本。使用MATLAB编码器™在MATLAB中生成C代码并将其部署用于实时控制。或者,使用MATLAB Compiler™打包并将MPC控制器作为独立应用程序共享。
Built-In Solvers
Generate code from provided active-set and interior-point quadratic programming (QP) solvers for efficient implementation on embedded processors. For nonlinear problems, use the sequential quadratic programming (SQP) solver from Optimization Toolbox for simulation and code generation. Deploy the generated code to any number of processors.
定制求解器
采用Embotech强制Pro QP和非线性编程(NLP)求解器模拟和生成线性和非线性MPC控制器的代码。或者,使用自定义QP和NLP求解器进行仿真和代码生成。