APP下载

永磁同步电机多步模型预测电流控制球形编码研究

2023-10-26李耀华王孝宇陈桂鑫刘子焜刘东梅

控制理论与应用 2023年9期
关键词:范数矢量半径

李耀华,王孝宇,陈桂鑫,刘子焜,刘东梅,任 超

(长安大学汽车学院,陕西西安 710064)

1 引言

永磁同步电机(permanent magnet synchronous motor,PMSM)有限状态集模型预测电流控制(finite control set model predictive current control,FCS-MPCC)遍历逆变器所有电压矢量,将其代入至电流预测模型,得到未来时刻的电流预测值,设计体现控制目标控制性能的成本函数,选择令成本函数最小的最优电压矢量作用于下一时刻[1–6].模型预测电流控制可预测未来多个时刻的电流值,得到更多未来控制周期的预测信息,但也带来随步长增长而呈指数级别增长的计算量,使得多步预测实时性较差.因此,降低计算量就成为多步预测的研究重点[7–9].文献[10]提出一种两步模型预测控制算法,在第1步遍历N个备选控制量,选取最优和次优控制量,在此基础上再次遍历N个控制量进行第2步模型预测,从2N个控制序列中选择最优控制序列.该模型预测控制算法只适用于2步预测,且在1步预测最优和次优电压矢量的基础上进行2步预测将会舍弃一些电压矢量,不能保证所求的电压矢量序列是最优电压矢量序列.文献[11–12]提出两步模型预测控制精简策略:在第1步模型预测遍历N个备选控制量,保持相同控制量进行第2步模型预测,即相同的控制量连续作用于系统进行两步预测,得到N个控制量序列.该模型预测控制算法在第2步预测过程中逆变器开关切换次数相同,使得逆变器开关切换达不到控制效果.文献[13]提出优化的多步模型预测控制在第1步遍历N个备选控制量,选取最优和次优控制量,将最优和次优控制量连续作用于系统进行两步模型预测,从2个控制量序列中选择最优控制量序列.该模型预测控制算法从2个电压矢量序列中选择最优电压矢量序列,使得所求得最有电压矢量序列具有较大的局限性.文献[14]提出了一种基于蚁群算法的模型预测控制方法,将连续时刻逆变器开关状态视为蚁群运动轨迹,并根据优化目标在较优路径上留下较强信息素作为正反馈以减少计算量.该模型控制算法采用蚁群算法的智能算法,具有较大的随机性且只能求得局部最优解.文献[15]提出一种基于最小二乘法的永磁同步电机多步预测控制方法,将控制算法转变成一个最小二乘问题,以此来进行多步预测,但仍然采用遍历法求解,计算量并未减少.文献[16]采用分支定界法(branch and bound methods,BB),通过对目标函数值预先设定上下限,对计算步数设定阈值,以简化多步预测控制过程,减少平均计算量.该模型预测控制算法在直接转矩控制目标“转矩磁链在一定滞环范围内”的基础上将开关切换次数最小作为控制目标,分支定界算法虽然能够求得全局最优解,但只限于线性问题,并不适用于求解将电流误差和开关状态作为成本函数的模型预测控制问题.文献[17]提出一种简化多步算法,相比于常规预测模型中使用的平方根和三角函数等复杂运算,该算法仅使用查找表和加法运算进行多步预测,避免了对所有可能切换序列探索.该模型预测控制算法避免复杂运算以减小控制器的运算负担,减小运算精度以提高运算速度,应用于多步模型预测控制并不能准确求得最优解.

本文建立基于球形编码的永磁同步电机多步模型预测电流控制系统,将传统多步模型预测电流控制遍历所有开关序列计算并寻求成本函数最小的问题转换为计算并寻求开关序列对应的矩阵二范数平方最小的问题,并采用事件触发机制动态精简计算量.仿真和实时性实验结果表明球形编码与传统方法完全等价,控制效果相当,但可减少多步预测的执行时间,提升系统实时性能.

2 PMSM多步模型预测电流控制

2.1 PMSM电流预测模型

转子旋转坐标系下,永磁同步电机定子d轴和q轴电压方程如式(1)所示.

式中:ud和uq分别为定子电压矢量在d轴和q轴上的分量,id和iq分别为定子电流矢量在d轴和q轴上的分量,Ld和Lq为定子电感在d轴和q轴上的分量;ψf为永磁体磁链,Rs为定子电阻,ωe为转子电角速度.

由于采样周期较短,定子电流的导数可用一阶前向欧拉离散法表示,如式(2)所示.

式中:idq(k)为k时刻定子电流矢量在d轴和q轴上的分量,idq(k+1)为(k+1)时刻定子电流矢量在d轴和q轴上的分量,Ts为采样周期.

下一时刻的定子d轴和q轴电流预测值如式(3)所示.

式中ωe(k)为k时刻转子电角速度.

因此,永磁同步电机定子d轴和q轴电流预测模型如式(4)所示.

三相两电平电压源逆变器开关状态共有8组,对应8 个不同的基本电压矢量,包括6 个非零电压矢量V1(100),V2(110),V3(010),V4(011),V5(001),V6(101)和2个零电压矢量V0(000),V7(111).在αβ静止坐标系下,8种开关状态对应电压矢量在α轴和β轴上的分量如表1所示.

逆变器开关状态变量u=[SaSbSc]T与静止坐标系下基本电压矢量的α轴和β轴分量关系式如式(5)所示.

定子电压矢量d轴和q轴分量与α轴和β轴分量的变换关系如式(6)所示.

θe(k)为k时刻转子角位置.

由此可得,永磁同步电机定子d轴和q轴电流预测模型可如式(7)所示.

2.2 多步电流预测模型

多步模型预测电流控制需要在当前k时刻预测未来多个时刻的d轴和q轴电流.(k+1)时刻及之后时刻的电机速度不可知,由于转子惯性常数较大,在采样频率较高条件下,近似认为转子转速保持不变,如式(8)所示,其中n为预测步长.因此,第i步预测过程中的转子角位置如式(9)所示.

因此,永磁同步电机第i步定子电流d轴和q轴电流如式(10)所示.

由式(10)可知,未来n个时刻的定子电流d轴和q轴电流预测值如式(11)所示.

由式(11)可得,永磁同步电机定子d轴和q轴电流多步预测模型如式(12)所示.

I2为二阶单位矩阵.

2.3 成本函数

多步模型预测电流控制成本函数如式(13)所示,式中第1部分为第1步至第n步预测过程中的预测电流和参考电流误差,第2部分为第1步至第n步预测过程中逆变器相对于上1步的开关切换次数,λ为权重系数.

由于在第i步预测过程中的d轴和q轴电流参考值为未知量,采样频率较高时,可采用第k时刻的d轴和q轴电流参考值代替,如式(14)所示.

因此,n步模型预测电流控制的成本函数如式(15)所示.

I3为三阶单位矩阵.

3 基于球形编码的PMSM多步模型预测电流控制

3.1 矩阵二范数平方求解

由如式(15)所示的成本函数可得

则成本函数可化简为

其中:

HTH=T+λSTS,H为上三角矩阵,const(k)仅与上一时刻的输入和当前时刻的电流相关,其值为常数,如式(18)所示.

由于const(k)为常数,与输入无关,不影响成本函数排序.因此,多步模型预测电流控制的遍历计算并寻求成本函数最小的问题可转换为遍历求解如式(19)所示的矩阵二范数平方,并寻求矩阵二范数平方最小值的问题,其中输入项为多步预测控制的开关序列.

以两步预测为例,矩阵H为6×6 上三角矩阵,U(k)为六维列向量,Uunc(k)为六维列向量,HU(k)-Uunc(k)为六维列向量,则即为六维列向量每个元素的平方和.定义一维、二维···六维的半径d(1),d(2),···,d(6)为六维向量自后向前一维向量、二维向量···六维向量的各元素平方和,则d(6)即为式(19)所示的矩阵二范数平方,其求解过程如图1所示.

图1 两步预测的矩阵二范数平方求解过程Fig.1 Solving process of matrix two norm square of twostep prediction

由图1可知,‖HU(k)-Uunc(k)各维半径是自后向前依次累加计算.由于‖HU(k)-Uunc(k)每个元素的平方和为正,随着维数增大,对应半径累加递增,即d(6)≥d(5)≥d(4)≥d(3)≥d(2)≥d(1).因此,可建立球形解码(sphere decoder,SD)算法用于确定令矩阵二范数平方最小的开关序列.

3.2 球形编码算法

以永磁同步电机模型预测电流控制两步预测为例,当前时刻id=1.1925 A,iq=-13.1195 A,=0 A,=-13.9175 A,θe=466.6384 rad,ωe=314.0702 rad/s,λ=1,Ts=5×10-5s.永磁同步电机参数如表2所示.

表2 永磁同步电机参数Table 2 Parameters of permanent magnet synchronous motor

由此可得,Uunc向量如下所示:

由于HTH=T+λSTS,通过Cholesky矩阵分解,求解得到H矩阵如下所示:

U(k)为两步输入开关序列,共26=64种选择,如式(20)所示,其中u1-u6为开关序列,1表示导通,0表示关断,即

两步预测球形编码计算流程如下:

初始半径计算.将000-000 代入至‖HU(k)-Uunc(k),计算矩阵二范数平方,并将其作为初始半径,其第1维至第6维半径如式(21)–(26)所示,初始半径即为第6维半径.

遍历开关序列.对第6维元素取1,即开关序列为100-000.由于其前5维与000-000相同,则前5维半径也相同,第6维半径如式(27)所示.

此时第6维半径大于初始半径,即100-000对应的矩阵二范数平方要更大,表明该开关序列并不是最优开关序列.

对第5维元素取1,即开关序列为#10-000,其中#可取1或0.由于H为上三角矩阵,#与零相乘,则其取值不影响求解第5维半径.由于其前4维与000-000相同,则前4维半径也相同.对于#10-000,第5维半径如式(28)所示.

由于第5维半径已大于初始半径,则无需向下遍历,舍弃#10-000所有开关序列.

对第4维元素取1,即开关序列为##1-000.由于其前3维与000-000相同,则前3维半径也相同对于##1-000,第4维半径如式(29)所示.

此时第4维半径已经大于球形半径,则无需向下遍历,舍弃##1-000所有开关序列.

对第3维元素取1,即开关序列为###-100.由于其前两维与000-000相同,则前两维半径也相同.对于###-100,第3维半径如式(30)所示.

此时第3维半径已经大于球形半径,则无需向下遍历,舍弃###-100所有开关序列.

对第2维取1,即开关序列为###-#10.由于其第1维与000-000相同,则第1维半径也相同.对于###-100,第2维半径如式(31)所示.

此时第2维半径已经大于球形半径,则无需向下遍历,舍弃###-#10所有开关序列.由此完成U(k)的第1维元素为0的所有遍历.

令U(k)的第1维元素为1,###-##1的第1维半径如式(32)所示.

由于第1维半径小于初始半径,则继续向下遍历.对第2维元素取0,###-#01第2维半径如式(33)所示.

由于第2维半径小于初始半径,则继续向下遍历.对第3维元素取0,此时###-001第3维半径如式(34)所示.

此时,第3维半径已经大于初始半径,则无需向下遍历,舍弃###-001的开关序列.对第3维元素取1,此时###-101第3维半径如式(35)所示.

此时第3维半径已经大于初始半径,则无需向下遍历,舍弃###-101的开关序列.

对第2维元素取1,###-#11第2维半径如式(36)所示.

第2维半径已经大于初始半径,则无需向下遍历,舍弃###-#11的开关序列.由此完成U(k)的第1维元素为1的所有遍历.

上述遍历计算过程如图2所示.通过球形编码求得最小矩阵二范数对应的开关序列为000-000,即为最优开关序列.

由图3可知,球形编码算法利用矩阵二范数平方和从低维半径向高维半径累加计算,且每一维半径均为非负数,当低维半径大于初始半径,则高维半径也必定大于初始半径,则停止之后的遍历计算[18–19].在计算半径过程中,如果某一开关序列计算得到的矩阵二范数平方和小于初始半径,则将其作为初始半径,继续遍历直至结束,最终采用最小半径对应的开关序列作为最优开关序列.遍历过程中,球形半径不断缩小,增大停止遍历的几率[20].因此,球形编码算法是一种基于事件触发机制的全局最优算法,永磁同步电机多步模型预测控制球形编码算法将有限集电压矢量构成的多步电压矢量序列集合作为搜索空间,以求解使得成本函数最小的多步电压矢量序列.传统多步模型预测控制算法通过遍历和比较找寻全局最优解,计算量随着预测步数的增加呈指数级增长,而球形编码算法采用事件触发机制,在找寻全局最优解的同时使得计算量大大降低.因此,球形编码算法既能保持和传统算法相同控制效果,又能使得计算量和运算事件大大减少.本文采用一种新型的初始半径给定方式: 将全为零电压矢量的电压矢量序列带入矩阵二范数平方作为初始半径值.相比于文献[20]中将上一时刻的最小球形半径作为当前时刻初始球形半径的方法,避免出现上一控制周期最小球形半径比当前控制周期最小球形半径小而造成球形编码算法无解的情况,尤其在电机运行工况多变的动态响应过程中,球形编码算法的半径并不具有稳定性,采用上一时刻的最小球形半径作为初始球形半径并不具有完全的普适性.将全为零电压矢量的电压矢量序列带入矩阵二范数平方作为初始半径值,能够确保电机在复杂多变的工况下稳定运行,并且计算简单.

图3 基于球形编码的两步预测算法流程图Fig.3 Flow chart of two-step prediction algorithm based on sphere decoding

4 仿真验证

采用MATLAB/Simulink建立基于球形编码的永磁同步电机多步模型预测电流控制离散仿真模型,采样周期为5×10-5s.直流母线电压为312 V.转速PI调节器参数为:KP=0.14,KI=7,PI调节器输出上下限为[-30 N·m,30 N·m],开关次数权重系数为λ=1.参考转速初始为750 r·min,2时阶跃至-750 r·min,参考转矩初始为15 N·m,1 s时阶跃至-15 N·m,3 s时再次阶跃至15 N·m.仿真总时长为4 s,采样点数共计80001个.

根据标准差评估电流脉动值大小,如式(37)–(38)所示,系统平均开关频率如式(39)所示,其中σid,σiq分别为定子d轴和q轴电流分量标准差,N为总数据个数,和为定子d轴和q轴电流的平均值,Nswitching为开关次数,t为仿真时间.

以5步预测为例,基于球形编码的模型预测电流控制仿真波形如图4–8所示.上文仿真条件下,不同步长的基于球形编码与传统模型预测电流控制的仿真结果如表3所示.

图4 电机转速Fig.4 Motor speed

图5 电机转矩Fig.5 Motor torque

图6 定子d轴电流Fig.6 Stator d-axis current

图7 定子q轴电流Fig.7 Stator q-axis current

图8 电机a相电流THDFig.8 Motor phase a stator current THD

仿真结果表明: 基于球形编码算法的永磁同步电机模型预测电流控制下,电机系统运行良好,可实现四象限运行,1–3步控制效果与传统多步模型预测电流控制完全相同,4–5步控制效果基本相当.基于球形编码算法的永磁同步电机模型预测电流控制本质是将传统模型预测电流控制的成本函数等价转换为矩阵二范数平方和,变成本函数最小为矩阵二范数平方和最小.相同输入条件下,基于球形编码算法的永磁同步电机模型预测电流控制与传统模型预测电流控制选择的电压矢量序列应完全相同.将基于球形编码的多步模型预测控制模型与传统多步模型预测控制并行运行,以传统多步模型预测控制选择的电压矢量序列中第1个电压矢量作为实际输出电压矢量.上文仿真条件下,球形编码多步模型预测控制的输出电压矢量与传统多步模型预测电流控制输出电压矢量相同的情况如表4所示.

由表4可知: 预测步数为1步至3步,球形编码与传统MPCC输出的电压矢量完全相同.因此,1∼3步的控制效果完全一致.预测步数为4步和5步时,有极少数输出电压矢量不相同.进一步分析发现,此时球形编码与传统MPCC选择电压矢量不同的原因是出现成本函数和矩阵二范数平方和最小不唯一的情况.以5步预测为例,传统MPCC 确定的最优开关序列为000-000-001-000-000,球形编码确定的最优开关序列为111-111-001-000-000,上一周期输出开关状态为110.以上两个开关序列的前两个开关状态对应零电压矢量,后3个开关状态相同,则电流误差相同,开关切换次数也相同.此时,传统MPCC和球形编码因为开关状态排序前后不同,导致选择的最优开关序列有所不同.这也是4–5步基于球形编码算法的永磁同步电机模型预测电流控制与传统模型预测电流控制效果并不完全一致,但两者基本相当的原因.

5 硬件实时性验证

5.1 算法运算量分析

上文分析球形编码与传统MPCC完全等价,但两者计算方式有所不同.传统MPCC遍历所有开关状态来计算成本函数.球形编码通过计算和判断每一维半径与初始半径的大小,中止遍历来减小计算量,同时实时缩小半径,本质上是事件触发机制.因此,球形编码对计算量的精简是动态随机变化量.对于n步模控制,球形编码算法最苛刻条件下,需要21+22+···+23n=23n+1-2次半径计算和比较判断运算,最理想条件下,仅需6n次半径计算和比较判断运算.对于n步传统模型预测遍历计算,需要进行81+82+···+8n=(8n+1-8)/7次预测计算和8n-1个成本函数寻优计算.

上文仿真条件下,球形编码的半径计算次数和比较判断次数情及传统模型预测电流控制的成本函数计算次数和比较次数如表5所示,其中平均计算次数为计算总次数除以采样点总数.

表5 球形编码和传统模型预测电流控制计算次数Table 5 Sphere decoding and traditional model predictive current control calculation times

5.2 实时性验证

本文基于STM32H743单片机硬件平台对球形编码控制策略与传统多步模型预测控制策略进行单控制周期执行时间对比验证.STM32H743MCU是基于Arm Cortex-M7的32位RISC内核,工作频率400 MHz,支持双精度和单精度数据处理指令与数据类型.本文采用C语言编程实现球形编码和传统多步模型预测电流控制的单控制周期算法实现.

单控制周期执行时间验证的输入数据采用球形编码计算条件最苛刻时刻的仿真数据,此时计算次数为理论最大值,不存在因事件触发导致的计算量减小.传统多步模型预测电流控制的成本函数如式(13)所示,权重系数λ为1,与球形解码一致.单控制周期实时性验证的输入数据如表6所示.

表6 单控制周期实时性验证输入数据Table 6 Real time verification of input data in single control cycle

对于球形编码多步预测(sphere decoding MPCC,S-MPCC),将总执行时间(tS)分为矩阵变换时间(tS1)、初始球形半径计算时间(tS2)和球形编码寻优时间(tS3).对于传统模型预测电流控制(traditional MPCC,T-MPCC),将总执行时间(tT)分为预测过程时间(tT1)和寻优过程时间(tT2).采用球形编码和传统多步模型预测电流控制的单控制周期执行时间如表7和表8所示.

表7 球形编码模型预测控制策略的单控制周期执行时间Table 7 Single control cycle execution time of sphere decoded model predictive control strategy

表8 传统模型预测控制策略的单控制周期执行时间Table 8 Single control cycle execution time of traditional model predictive control strategy

定义η为球形编码多步预测期总执行时间与传统多步预测总执行时间的比值,如式(40)所示.

球形编码算法与传统算法单控制周期执行时间比如表9所示.

表9 球形编码算法与传统算法单控制周期执行时间比Table 9 Single control cycle execution time ratio between sphere decoding algorithm and traditional algorithm

球形编码和传统模型预测电流控制最终选择的最优开关序列如表10所示.

表10 最优开关序列Table 10 Optimal switching sequence

由实时性验证结果可知,在球形编码最苛刻的条件下,相比于传统模型预测控制,对于单步预测球形编码并没有减少执行时间,但对多步预测,球形编码可降低执行时间,且随着预测步数的增加,执行时间大幅减少,两步模型预测执行时间减小至96.78%,3步模型预测执行时间减小至87.99%,4步模型预测执行时间减小至73.41%,5步模型预测执行时间减少至63.63%.球形编码和传统模型预测电流控制最终选择的最优开关序列完全一致也表明两者本质完全等价.

6 结论

1)球形编码算将成本函数等价转换为矩阵二范数平方,从而将传统多步模型预测电流控制遍历所有开关序列计算并寻求成本函数最小的问题转换为计算并寻求开关序列对应的矩阵二范数平方最小的问题.

2)矩阵二范数平方求解过程为非负数累加求和,随着遍历开关序列元素的递增而递增,而最优开关序列对应的矩阵二范数平方最小.球形编码采用事件触发机制,计算过程判断是否满足最小矩阵二范数条件.如果不满足,则提前中止继续遍历,从而动态精简计算量.

3)仿真结果表明基于球形编码算法的多步模型预测电流控制下,永磁同步电机系统运行良好,可实现四象限运行,与传统模型预测电流控制完全等价,控制效果相当.

4)单控制周期执行时间实时性实验数据表明在球形编码最苛刻的条件下,相比于传统模型预测控制,球形编码单步预测并没有减少执行时间,但两步预测执行时间减小至96.78%,3步预测减小至87.99%,4步预测减小至73.41%,5步预测减少至63.63%.采用矩阵二范数平方和计算方式的球形编码对于多步预测具有实时性优势.

猜你喜欢

范数矢量半径
矢量三角形法的应用
连续展成磨削小半径齿顶圆角的多刀逼近法
基于加权核范数与范数的鲁棒主成分分析
矩阵酉不变范数Hölder不等式及其应用
一些图的无符号拉普拉斯谱半径
基于矢量最优估计的稳健测向方法
三角形法则在动态平衡问题中的应用
热采水平井加热半径计算新模型
一类具有准齐次核的Hilbert型奇异重积分算子的范数及应用
色料减色混合色矢量计算