显式模型预测控制系统(Explicit MPC)设计与仿真平台
项目介绍
本项目实现了一套显式模型预测控制(Explicit MPC, eMPC)算法的设计与仿真平台。传统MPC需要在每个采样周期在线求解优化问题,计算负担重。eMPC通过多参数规划将在线优化问题转化为离线计算,预先构建状态空间的分区及对应的分段仿射控制律。在线运行时仅需根据当前状态查表即可获得最优控制输入,极大降低了实时计算需求,特别适用于嵌入式系统等计算资源受限的场景。
功能特性
- 离线显式控制律计算:基于多参数规划技术,将带约束的有限时域最优控制问题转化为分段仿射控制律。
- 状态空间分区:自动将状态空间划分为多个多面体区域,每个区域对应一个线性控制律。
- 在线快速查表:在线控制阶段,通过判断当前状态所属分区,快速计算最优控制输入。
- 闭环仿真与性能分析:支持系统闭环动态仿真,并提供调节时间、超调量等性能指标评估。
- 可视化展示:可绘制显式控制律的分区图以及系统状态和输入的轨迹。
使用方法
- 定义系统模型:提供线性离散时间系统的状态空间矩阵(A, B, C, D)。
- 设置约束与目标:配置状态变量和输入变量的约束上下限,以及优化目标中的权重矩阵(Q, R, N)。
- 指定预测时域:设定预测时域(Np)和控制时域(Nc)的长度。
- 离线计算控制律:运行程序进行离线计算,生成显式控制律分区及对应的仿射控制律。
- 在线仿真测试:给定初始状态,进行闭环控制仿真,观察系统动态响应与性能。
系统要求
- 操作系统:Windows / Linux / macOS
- 软件环境:MATLAB (建议 R2018b 或更高版本)
- 必要工具箱:Control System Toolbox, Optimization Toolbox (用于求解多参数规划问题)
文件说明
项目的主入口文件完成了整个eMPC设计与仿真的核心流程。它首先读取用户定义的系统模型参数、约束条件及优化权重,随后调用多参数规划算法进行离线计算,构建出状态空间的分区结构及各分区对应的最优控制律表达式。在在线仿真阶段,该文件依据当前系统状态自动查找所属分区并应用相应的控制律,计算实时控制输入,同时进行系统状态演进的预测与记录。最后,它负责执行闭环系统的动态仿真,并输出关键的性能指标以评估控制效果。