049、有限集模型预测电流控制
049 有限集模型预测电流控制:从抖成筛子到稳如老狗
一、深夜的示波器在尖叫
去年调试某款伺服驱动器,电流环跑起来后,示波器上的相电流波形像极了心电图的室颤——高频毛刺叠着低频振荡,电机发出令人牙酸的啸叫。同事说:“这他妈是预测控制?分明是预测爆炸。” 我盯着DSP里跑得飞快的MPC代码,突然意识到问题出在哪儿:有限集模型预测控制(FCS-MPC)的代价函数权重没调好,导致开关状态切换过于激进。
那晚我蹲在实验室,把示波器探头戳在IGBT驱动脚上,看着每20微秒跳变一次的PWM波形,终于明白为什么教科书里总说“FCS-MPC天然适合电力电子”——因为它的控制律就是枚举所有可能的开关状态,选一个让电流误差最小的。但现实是,你枚举的集合越大,计算量越爆炸;集合越小,控制精度越拉胯。
二、FCS-MPC到底在算什么
别被“模型预测”四个字唬住。对于两电平三相逆变器,开关状态一共就8种(6个非零矢量+2个零矢量)。FCS-MPC的核心就三步:
- 预测:用当前电流值和电机模型,算出每种开关状态下,下一个控制周期的电流值
- 评价:拿预测电流跟目标电流比,算代价函数(通常是电流误差的平方)
- 选择:挑代价函数最小的那个开关状态,直接怼到PWM寄存器里
代码里最坑的地方在这里——预测模型必须精确。我见过有人直接用欧拉法离散化,结果电感参数偏差20%,预测出来的
