模型预测控制(Model Predictive Control, MPC)是一种先进的控制策略,广泛应用于工业控制中。它可以看作是一种最优控制方法,利用对象的动态模型来预测其状态的未来行为,并根据每个采样时间点特定性能目标函数的优化来确定未来的控制动作。MPC方法具有鲁棒性、建模简单、处理多变量系统、显示约束、预测未来行为和优化性能的能力等优势。它的不足在于预测控制行为的计算需要繁琐的计算量,因为它需要在每个采样时刻求解优化问题,在线优化的耗时时间在一定程度上限制了MPC方法在高实时性工业级的应用。然而,随着计算机硬件和凸优化技术的进行,对于具有高实时性要求的快速变化动态系统,实现这些较复杂控制器已成为可能。而将MPC方法应用于PMSM伺服系统的一个重要原因是其线性模型可以通过解析方法和辨识技术获得。
基本概念
MPC的主要步骤包括:
- 模型预测:使用系统的数学模型预测未来的输出。
- 滚动优化:在每个控制周期内,求解一个优化问题,找到最佳的控制序列。
- 反馈修正:每个周期只实施第一个控制输入,然后重新测量系统状态并重复这个过程。
优化问题的形式
在每个控制周期,MPC通过解决如下优化问题来计算控制
- 是系统输入
- 是系统输出
- 是参考轨迹(指令)
- 和是权重矩阵,用于平衡系统性能和控制输入的大小
- 是预测时域的长度
以PMSM系统为例讲解MPC在其速度环的应用
A 电机速度环一阶模型
这里我们考虑一个典型的伺服系统,以表贴式永磁同步电机为例:
- 是电机的角速度,可以理解为系统的输出,是电机速度的一阶导数,即加速度
- 是电机的转动惯量
- 是电机的力矩系数
- 是电机的轴电流,可以理解为系统的输入
- 为电机的粘滞摩擦系数
- 为负载力矩
B 状态空间模型
首先,我们将方程转换为状态空间形式。定义状态变量和输入,则状态空间方程可以写成:
离散化后(采样时间为):
其中:,
C 预测模型
构建预测模型,用于MPC控制,预测模型为:
下一时刻预测输出,即第二步预测:
第三步预测:
......
步预测
其中是预测步长,是控制步长
定义预测输出序列、控制输入序列如下:
其中,,
参考信号序列:
因此代价函数被设计如下:
简化后可以得到标准的二次型优化问题:
为了最小化该二次型代价函数,我们需要解以下优化问题:
其中,,
求解这个二次型优化问题,我们可以通过求解以下线性方程组来得到最优解:
因此,控制输入向量U的数学表达式为:
最终得到最优的虚拟控制序列:
取第一个值作为系统的输入。
仿真搭建
电机参数设置
- ------7.06e-4
- ------3.5e-4
- 极对数------4
- 力矩系数------0.0064*4
- 电感L------0.4e-3
- 电阻R------0.72
- 采样时间------0.001
- 预测步数------7,控制步数------5
仿真结果
为了方便迭代,速度控制器采用MATLAB Function模块编写。
响应速度为:0.024s且几乎无超调
在0.5s时刻加载,
由上图可看出,MPC控制器的抗干扰性能强,
与PI控制器对比:
MPC的表现明显优于传统PI控制器,且无需漫长的参数试凑调参,就能达到一个比较好的控制效果。