基于多核并行计算的永磁同步电机有限集模型预测控制方法

文档序号:1076381 发布日期:2020-10-16 浏览:16次 >En<

阅读说明:本技术 基于多核并行计算的永磁同步电机有限集模型预测控制方法 (Permanent magnet synchronous motor finite set model prediction control method based on multi-core parallel computation ) 是由 刘涛 习金玉 于 2020-07-20 设计创作,主要内容包括:一种基于多核并行计算的永磁同步电机有限集模型预测控制方法,包括两个处理核心CPU1与CPU2,将单核顺序控制策略中的AD转换模块、电流电压折算和Clarke变换分配到CPU1中,将eQEP模块、转速位置计算,Park反变换和反电动势计算分配到CPU2中,同时,将单核顺序控制策略中电压矢量V&lt;Sub&gt;0&lt;/Sub&gt;~V&lt;Sub&gt;7&lt;/Sub&gt;的预测过程、价值函数、比较寻优过程均分分配给CPU1与CPU2,即形成CPU1与CPU2 FCS-MPC双核并行控制策略,且两个控制策略之间进行数据交换。在FCS-MPC双核并行控制策略的基础上,将部分电压矢量的预测、评估、寻优过程分配到CLA核心中,从而实现“双CPU+双CLA”的四核并行控制策略。该控制方法能够在保持原算法控制性能和控制特点的基础上,有效降低算法执行时间。(A permanent magnet synchronous motor finite set model prediction control method based on multi-core parallel computation comprises two processing cores CPU1 and CPU2, an AD conversion module, current-voltage conversion and Clarke conversion in a single-core sequential control strategy are distributed to CPU1, an eQEP module, rotation speed position computation, Park inverse conversion and back electromotive force computation are distributed to CPU2, and meanwhile, a voltage vector V in the single-core sequential control strategy is distributed to CPU2 0 ~V 7 The prediction process, the cost function and the comparison optimization process are distributed to the CPU1 and the CPU2 respectively, namely, a dual-core parallel control strategy of the CPU1 and the CPU2 FCS-MPC is formed, and data exchange is carried out between the two control strategies. On the basis of an FCS-MPC dual-core parallel control strategy, the prediction, evaluation and optimization processes of partial voltage vectors are distributed into CLA cores, so that a four-core parallel control strategy of &#39;double CPUs &#43; double CLAs&#39; is realized. The control method can maintain the control performance and control characteristics of the original algorithmOn the basis of points, the algorithm execution time is effectively reduced.)

基于多核并行计算的永磁同步电机有限集模型预测控制方法

技术领域

本发明属于永磁同步电机控制领域,特别涉及一种基于多核并行计算的永磁同步电机有限集模型预测控制方法。

背景技术

永磁同步电机因其自身功率因数高、安全性好以及功耗低等优点,被广泛应用于工业与生活中,对其控制策略的研究也逐渐深入。目前,在基于FCS-MPC的永磁同步电机驱动系统控制策略(如图1所示)中FCS-MPC主要是实现永磁同步电机的电流内环控制,而速度外环控制器可由包括线性控制在内的其它控制方法实现。虽然FCS-MPC减少了复杂的旋转坐标变换,但由于其对电机状态变量的依赖度较高,需要进行反电动势计算、Clarke变换、Park反变换以获得预测过程的输入量。FCS-MPC控制策略主要由预测过程、价值函数、比较寻优三个部分组成。其理论基础如下所示。

在静止坐标系下,表贴式永磁同步电机的电压平衡方程可以表示为

式中,R、L分别为电机定子电阻与定子电感;i为定子电流矢量,有i=[iα iβ]T;e为定子反电动势矢量,e=[eα eβ]T;u为逆变器输出电压,有u=[uα uβ]T,对于逆变器所有的8种开关状态S0~S7,u的取值对应8种电压矢量V0~V7,其数值与直流侧电压udc相关。

图1中FCS-MPC的预测过程对应电流预测式。根据前向欧拉法,电流预测式可由式(1)得到,即

Figure BDA0002591054170000012

式中,T为控制周期;i(k)为kT时刻的电流矢量测量值;in(k+1)为(k+1)T时刻的电流矢量预测值。

FCS-MPC的核心思想是:通过预测电压矢量V0~V7的对电流的作用效果,筛选出距离电流参考值i*(其中i*=[iα *iβ *]T)最近的电流预测值in(k+1),并将所对应最优电压矢量Vo的开关状态输出至逆变器。在寻优过程之前,需要构建价值函数对各个预测值进行评估,有

Figure BDA0002591054170000021

最优电压矢量为

式中,argmin gn(k+1)表示最小gn(k+1)值对应的电压矢量Vn

在每一个控制周期,FCS-MPC将电压矢量V0~V7代入电流预测式,并采用价值函数对所有电流预测结果进行评估和比较,使价值函数达到最小值的电压矢量将作为最优矢量输出至逆变器。控制流程图如图2所示。

FCS-MPC单核顺序控制策略的流程图如图4所示,其存在三个特点:

1、各个步骤顺序执行(部分步骤下方标注了该步骤所输出的变量)。当获得预测过程所需的所有变量时,控制流程将依次进入FCS-MPC算法的预测过程、价值函数、比较寻优三个步骤(也称为预测、评估、寻优)。此过程中,控制算法将对V0~V7进行逐个预测、评估、寻优,最终得到最优电压矢量。

2、通过观察各个步骤可以看到,大部分步骤存在依赖关系,即前一个步骤完成之后,才能进行下一步骤。例如,Clarke变换必须在AD转换、电压电流折算之后进行;另一方面,部分步骤之间不存在依赖关系,例如AD转换与eQEP模块可以同时运行,同理,Clarke变换与反电动势计算可以同时进行,因为它们之间不存在变量依赖关系。

3、在FCS-MPC算法对V0~V7进行逐个预测、价值函数计算的两个阶段中,8个电压矢量没有先后顺序要求,它们之间没有时序依赖关系。

通过分析FCS-MPC中各步骤的数据依赖关系,可以为算法分割提供一定依据。然而,FCS-MPC内部对数据和时序的依赖度高,难以分割出彼此独立运行的各个部分。

目前,基于TMS320F28379D的FCS-MPC的并行计算方法(如图3所示),TMS320F28379D微控制器的共有两个32位处理核心,即CPU1和CPU2,每个核心均可提供200MHz的处理性能;除此之外,微控制器具有两个可编程控制律加速器(CLA),即CPU1.CLA1和CPU2.CLA1,CLA是一种独立的32位浮点处理器,运行速度与主CPU相同。

图3中可以看到,CPU1与CPU2之间存在多种数据交换模式,即IPC模块、全局共享内存、MSG内存。由于CPU1与CPU2同时读写同一数据区域会产生冲突问题,三种交换模式均包含内存读写权限,例如在MSG内存中,CPU1→CPU2 MSG内存允许CPU1进行读写操作,但禁止CPU2进行写入操作;相反,CPU2→CPU1 MSG内存允许CPU2进行读写操作,但禁止CPU1进行写入操作。考虑到IPC模块中的仲裁机制较为复杂,影响数据交换速度。而全局共享内存需要CPU1预先进行寄存器配置,且CPU2没有配置权限。与之相比,CPU1与CPU2之间的MSG内存具有结构简单,无需预先配置的优点,通过合理设计数据交换策略,能够实现更高的数据交换速度。与上述情况类似,CPU与CLA之间主要采用MSG内存进行数据交换,需要注意的是,两个CLA核心之间不能直接数据交换。

综上,传统的有限集模型预测控制算法存在较长程序执行时间与较短控制周期之间的矛盾、算法执行效率低于传统线性控制算法、算法对数据和时序依赖度高,与微控制器中多核心独立运行特点相矛盾的缺陷,因此影响开关频率与控制精度的进一步提升。

发明内容

本发明的目的就在于克服上述现有技术中存在的不足,而提供基于多核并行计算的永磁同步电机有限集模型预测控制方法,该控制方法能够在保持原算法控制性能和控制特点的基础上,有效降低算法执行时间。

如上构思,本发明的技术方案是:一种基于多核并行计算的永磁同步电机有限集模型预测控制方法,其特征在于:包括两个处理核心CPU1与CPU2,将单核顺序控制策略中的AD转换模块、电流电压折算和Clarke变换分配到CPU1中,将eQEP模块、转速位置计算,Park反变换和反电动势计算分配到CPU2中,同时,将单核顺序控制策略中电压矢量V0~V7的预测过程、价值函数、比较寻优过程均分分配给CPU1与CPU2,即形成CPU1与CPU2 FCS-MPC双核并行控制模块,且两个控制模块之间进行数据交换,CPU1将AD转换→电流电压折算→Clarke变换过程所得到udc、iα、iβ传输至CPU2完成第一次数据交换,同时,CPU2将eQEP模块→转速位置计算→Park反变换→反电动势计算过程得到的eα、eβ传输至CPU1中完成第二次数据交换,CPU2将其得到的局部最优电压矢量发送至CPU1中,CPU1将两核心分别得到的局部最优值电压矢量进行对比,从而得到最终输出的电压矢量。

进一步,所述CPU1与CPU2之间在完成第一次数据交换后,可编程控制律加速器CPU1.CLA1与CPU2.CLA1分别从各自对应的CPU1与CPU2中获取预测过程所需的变量值V0~V1,V6~V7并针对所负责的电压矢量,逐步实现预测过程、价值函数、比较寻优的相应计算,当CLA核心获得局部最优电压矢量时,在CPU1与CPU2进行第二次数据交换前,将最优值传输至各自对应CPU。

进一步,所述CPU1与CPU2之间的数据交换方法是:设置标志位以确保CPU1与CPU2按照一定时序进行数据交换,其中有:

F1:第一阶段CPU1→CPU2数据传输完成的标志位;

F2:第一阶段CPU2→CPU1数据传输完成的标志位;

F3:第二阶段CPU2→CPU1数据传输完成的标志位;

P代表数据输出完成;

在第一阶段中,CPU1向CPU1→CPU2 MSG内存发送变量udc、iα、iβ之后,将F1标志位赋值为P;与此同时,CPU2不断地对F1标志位进行检查,当检测到F1=P时,即判别CPU1已完成数据发送,并据此读取MSG内存的相应变量udc、iα、iβ;当CPU2读取变量后,将变量eα、eβ发送至CPU2→CPU1 MSG内存中,并将F2标志位赋值为P;另一方面,在CPU1完成数据发送后,将不断地对F2标志位进行检查,当检测到F2=P时,即判别CPU2已完成数据发送,并据此读取MSG内存的相应变量eα、eβ

在第二阶段中,当CPU2获得局部最优电压矢量后,将矢量序号和相应的价值函数计算结果发送到CPU2→CPU1 MSG内存中,并将F3标志位赋值为P;另一方面,在CPU1计算得到局部最优电压矢量后,不断地对F3标志位进行检查,当检测到F3=P时,将读取最优值,并进行最终比较和输出。

所述标志位F1~F3采用动态标志位,即

式中,“~P”表示对变量P进行取反运算。

进一步,所述CPU与CLA之间的数据交换方法是采用预设标志位与中断标志位相结合的方法保证时序正确性,在第一阶段数据交换过程完成时,CPU1将预测过程所需的变量udc、iα、iβ

Figure BDA0002591054170000054

eα、eβ发送至CPU1→CLA1 MSG内存,并将其中预先设置的标志位F4赋值为1,同时,CLA1不断地检查标志位F4,当检测到F4=1时,则意味着数据传输已完成,CLA1将逐个读取变量,在此之后,CPU1与CLA1执行各自所分配电压矢量的预测、评估、寻优过程,并得到局部最优值;在控制算法进入数据交换的第二阶段之前,CLA1将发送局部最优值至CLA1→CPU1 MSG内存,而CPU1将不断地检查标志位H,以判断CLA1是否完成数据传输,当标志位H为0时,CPU1将读取MSG内存中的局部最优值,并将标志位F4复位为0,并进行局部最优值的比较过程,标志位H为中断标志位Cla1Regs.MIRUN.bit.INT1,当CLA1程序执行完成后,该标志位将由1转变为0,因此可以将其作为CLA1数据发送完成的标志。

本发明设计了双核、四核控制策略架构,并提出了数据交换策略和动态标志位,能够在保持原算法控制性能和控制特点的基础上,有效降低算法执行时间。

本发明采用的CPU1与CPU2之间和CPU与CLA之间的数据交换的在保证数据完整性的基础上,保持多核并行计算的时序正确,以避免某些核心在其它核心未完成相应计算之前,过早地进行数据交换,进而将上一控制周期的变量用于本控制周期的计算中,最终导致预测误差以及控制偏差的情况出现。

CPU1与CPU2之间数据交换方法采用标志位可以保证CPU1与CPU2在每个控制周期中,利用最新采集的电机状态量,同步地对电机未来状态进行预测、评估、寻优。反之,如果没有标志位对交换过程进行时序控制,在第一阶段中,CPU1或CPU2可能在没有接收到对方数据的情况下,提前进行预测;在第二阶段中,CPU1可能在CPU2未获得局部最优电压矢量的情况下,提前进行最终比较与输出。这两种情况均会造成FCS-MPC控制误差,以至影响整个电机控制系统的稳定性。且标志位采用动态标志位,该动态标志位复位方法中,各核心只需要对变量P进行取反运算,算法简单,基本无延迟。F1~F3的对应数值的意义是随着控制周期交替变化的。在t=2kT控制周期结束时,F1~F3=P,意味着数据交换的两个阶段均已完成,而在下一控制周期的起始,即t=2kT+1时,F1~F3=P表示两次数据交换均未完成。通过标志位赋值意义的动态交替转换,简化了相应的标志位复位过程。

附图说明

图1是FCS-MPC控制方法结构图;

图2是FCS-MPC控制流程图;

图3是TMS320F28379D微控制器多核架构图;

图4是FCS-MPC单核顺序控制方法流程图;

图5是FCS-MPC双核并行控制策略图;

图6是FCS-MPC四核并行控制策略图;

图7是CPU1和CPU2的数据交换策略图;

图8是传统标志位复位方法与动态标志位复位方法对比图,其中,(a)是传统标志位复位方法图,(b)是动态标志位复位方法图;

图9是CPU1和CLA1的数据交换策略图。

具体实施方式

下面结合附图阐述本发明的具体实施方式:

本发明提供一种基于多核并行计算的永磁同步电机有限集模型预测控制方法,将单核顺序控制策略中不存在依赖关系的流程分别分配给CPU1与CPU2;同时,将针对V0~V7的预测过程、价值函数、比较寻优过程进行均分,分别分配给CPU1V0~V1,分配给CPU2V6~V7,即可以得到FCS-MPC双核并行控制策略,其流程图如图5所示。

由图5可以看到,与单核顺序控制策略不同,双核并行控制策略中需要进行数据交换,以保证各处理核心中预测、评估、寻优过程的正常进行。其中,第一次数据交换发生在预测过程执行之前,在此过程中,CPU1将AD转换→电流电压折算→Clarke变换过程所得到udc、iα、iβ传输至CPU2。与此同时,CPU2需要将eQEP模块→转速位置计算→Park反变换→反电动势计算过程得到的eα、eβ传输至CPU1中。第二次数据交换发生在各处理核心完成预测、评估、寻优过程之后,在此过程中,CPU2将其得到的局部最优电压矢量发送至CPU1中,以便CPU1将两核心分别得到的局部最优值电压矢量进行对比,从而得到最终输出的电压矢量。

在FCS-MPC双核并行控制策略中,CPU1与CPU2之间的数据交换策略为两个阶段进行,分别处于FCS-MPC算法的前后,如图7所示。

CPU1与CPU2不能直接传输数据,而是通过MSG内存间接传输数据;同时,前述的两种MSG内存在读写权限上的差异,在数据交换策略的设计中:1、收发数据过程必须选择特定的MSG内存;2、通过设置标志位以确保CPU1与CPU2按照一定时序进行数据交换。其中有:

F1:第一阶段CPU1→CPU2数据传输完成的标志位。

F2:第一阶段CPU2→CPU1数据传输完成的标志位。

F3:第二阶段CPU2→CPU1数据传输完成的标志位。

在第一阶段中,CPU1向CPU1→CPU2 MSG内存发送变量udc、iα、iβ之后,将F1标志位赋值为P;与此同时,CPU2不断地对F1标志位进行检查,当检测到F1=P时,即判别CPU1已完成数据发送,并据此读取MSG内存的相应变量udc、iα、iβ。当CPU2读取变量后,将变量i* α

Figure BDA0002591054170000081

eα、eβ发送至CPU2→CPU1 MSG内存中,并将F2标志位赋值为P;另一方面,在CPU1完成数据发送后,将不断地对F2标志位进行检查,当检测到F2=P时,即判别CPU2已完成数据发送,并据此读取MSG内存的相应变量

Figure BDA0002591054170000082

eα、eβ

在第二阶段中,当CPU2获得局部最优电压矢量后,将矢量序号和相应的价值函数计算结果发送到CPU2→CPU1 MSG内存中,并将F3标志位赋值为P;另一方面,在CPU1计算得到局部最优电压矢量后,不断地对F3标志位进行检查,当检测到F3=P时,将读取最优值,并进行最终比较和输出。

由上述过程可以看到,采用标志位可以保证CPU1与CPU2在每个控制周期中,利用最新采集的电机状态量,同步地对电机未来状态进行预测、评估、寻优。反之,如果没有标志位对交换过程进行时序控制,在第一阶段中,CPU1或CPU2可能在没有接收到对方数据的情况下,提前进行预测;在第二阶段中,CPU1可能在CPU2未获得局部最优电压矢量的情况下,提前进行最终比较与输出。这两种情况均会造成FCS-MPC控制误差,以至影响整个电机控制系统的稳定性。

由图中可以看到,当两个阶段完成之后,标志位F1~F3均赋值为P,由于P在此控制周期中的意义为数据传输完成,因此在下一个控制周期开始前,必须将标志位F1~F3复位。但是,在双核系统中,CPU1和CPU2只对各自的MSG内存具有写入权限,因此将所有标志位复位需要CPU1与CPU2之间进行多次数据传输和判断,这将一定程度上增加算法的复杂性。为解决这一问题,本文设计了一种动态标志位,即

式中,“~P”表示对变量P进行取反运算。

可以看到,F1~F3的对应数值的意义是随着控制周期交替变化的。在t=2kT控制周期结束时,F1~F3=P,意味着数据交换的两个阶段均已完成,而在下一控制周期的起始,即t=2kT+1时,F1~F3=P表示两次数据交换均未完成。通过标志位赋值意义的动态交替转换,简化了相应的标志位复位过程。

图8显示了动态标志位复位方法与传统标志位复位方法的区别。

图中可以看到,传统标志位复位方法中,标志位F1必须先于F2、F3进行复位,否则可能造成CPU1未完成第二阶段数据交换时,CPU2对F3提前复位,造成控制时序错误。为此,标志位复位过程存在大量MSG内存的读写与标志位检测过程,这些过程均会造成一定的延迟,影响算法执行效率。与之相比,在动态标志位复位方法中,各核心只需要对变量P进行取反运算,算法简单,基本无延迟。

本发明方法在FCS-MPC双核并行控制策略的基础上,将部分电压矢量的预测、评估、寻优过程分配到CLA核心中,从而实现“双CPU+双CLA”的四核并行控制策略。

由图6所示的流程图中可以看到,在CPU1与CPU2完成数据交换后,CPU1.CLA1与CPU2.CLA1分别从各自对应的CPU核心中获取预测过程所需的变量值,并针对所负责的电压矢量,逐步实现预测过程、价值函数、比较寻优的相应计算,从而使FCS-MPC执行效率得到进一步优化。当CLA核心获得局部最优电压矢量时,需要在CPU1与CPU2进行第二次数据交换前,将最优值传输至各自对应CPU。可以看到相比双核并行控制策略,四核并行控制策略增加了CPU与CLA之间的数据交换。

CPU与CLA之间的数据交换策略与CPU之间数据交换策略类似,CPU与CLA之间的数据交换同样分为两个阶段。所不同的是,两个阶段的数据传输方向均是单向的,另外,数据交换策略采用预设标志位与中断标志位相结合的方法保证时序正确性。以CPU1与CLA1之间的数据交换为例,相应的交换策略如图9所示。

在第一阶段数据交换过程完成时,CPU1将预测过程所需的变量udc、iα、iβ

Figure BDA0002591054170000101

eα、eβ发送至CPU1→CLA1 MSG内存,并将其中预先设置的标志位F4赋值为1。与此同时,CLA1不断地检查标志位F4,当检测到F4=1时,则意味着数据传输已完成,CLA1将逐个读取变量。在此之后,CPU1与CLA1执行各自所分配电压矢量的预测、评估、寻优过程,并得到局部最优值。在控制算法进入数据交换的第二阶段之前,CLA1将发送局部最优值至CLA1→CPU1 MSG内存,而CPU1将不断地检查标志位H,以判断CLA1是否完成数据传输,当标志位H为0时,CPU1将读取MSG内存中的局部最优值,并将标志位F4复位为0,并进行局部最优值的比较过程。标志位H为中断标志位Cla1Regs.MIRUN.bit.INT1,当CLA1程序执行完成后,该标志位将由1转变为0,因此可以将其作为CLA1数据发送完成的标志。

以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。

14页详细技术资料下载
上一篇:一种医用注射器针头装配设备
下一篇:一种增程器专用的电机控制器控制方法

网友询问留言

已有0条留言

还没有人留言评论。精彩留言会获得点赞!

精彩留言,会给你点赞!