021-64886750

  • 实时目标机

    Simulink模型库

    Demo套件

info@yisuworld.com

永磁同步电机控制系统仿真系列文章——控制器模型(1)

网站首页    技术blog和使用技巧    永磁同步电机控制系统仿真系列文章——控制器模型(1)

 

回顾
 

之前的几篇已经讨论了永磁同步电机、逆变器、旋转变压器和许多与实时仿真相关的话题;至此,所有关于永磁同步电机控制系统中的被控对象模型就都已经讨论完毕了。下面就开始讨论控制器模型。

这一篇主要讨论多速率仿真同步和异步永磁同步电机控制器模型概述

 

 

—— 多速率仿真——

通常情况下,Simulink环境下搭建的电力电子控制系统的仿真模型,都是多速率的仿真模型。这是因为:

1)       电力电子控制系统中包含多种类型的模型,不同模型对于仿真速率的要求是不同的。

2)       被控对象模型中的电气部分,例如永磁同步电机、逆变器,都是希望仿真速率越快越好。具体选择多快的仿真速率,与PWM的频率,逆变器的死区时间,模型的解算方式等因素相关。对于10kHz开关频率,仿真速率最好是开关频率的100倍,因此为1MHz(仿真步长1µs),但是如果死区时间为2µs,那么仿真步长最好是死区时间的1/100.2µs),此时仿真速率就是5MHz

3)       被控对象模型中的机械部分,通常情况下仿真步长为1ms(仿真速率1kHz),但是在电动汽车的MCU HIL中,为了测试电机的极限速率变化,可能此时电机的机械部分也需要1MHz以上的仿真速率,以保证电机位置和速率的精确模拟。

4)       PWM比较器模型部分,通常情况下PWM比较器的三角波都是通过一个高频率时钟进行计数来产生的。这个时钟一般都大于10MHz,以保证PWM输出占空比的调节精度。

5)       控制器模型部分,其仿真速率一般与开关频率相关,为开关频率的整数倍。例如开关频率为10kHz,那么控制器模型的仿真速率可以是10kHz或者20kHz,具体选择10kHz还是20kHz,就与将来选择的DSP或者Micro Controller的处理能力相关了。此外,实际应用中,还存在变开关频率的情况,此时控制器模型的仿真频率也是变化的。

 

总之,我们Simulink环境下,搭建电力电子控制系统的仿真模型时,需要考虑电力电子系统实际情况,让仿真模型的仿真速率是与实际情况相符,这样仿真结果才能准确反映真实的变化

如果想要查看Simulink模型中不同模块的仿真速率,可以点击Simulink的左侧模型的图标img1,选择Colors即可。从下图的右侧可以看到,这个模型有Continuous的部分,也有Discrete的部分(仿真步长200µs。其他的还有ConstantMultrate(多速率)的部分。

 

img2

 

在搭建多速率仿真模型时,不同仿真速率的仿真模型通过SimulinkRate Transition模块进行连接,具体的使用请参考MATLABHelp文件。

img3

Rate Transition模块

 

—— 同步和异步——

同步和异步是一个相对的概念,例如异步中断,同步任务等。因此需要弄清楚,相对什么是任务是同步的,相对什么中断是异步的。还是以永磁同步电机控制系统的仿真模型来说明。

 

下图是常规永磁同步电机控制的实际流程[1],包括以下几个步骤

1)       采样和保持电机电流值,ADC转换电机电流值;

2)       读取电机速度和位置值(图中未标出)

3)       运行电机控制和SVPWM算法

4)       输出和更新PWM占空比

其中步骤1的电流采样和步骤4的更新PWM占空比必须在同一时刻完成的。

 

img4

PMSM电机控制的流程

 

因此我们可以知道,如何把电机控制算法看作一个任务,这个任务相对被控对象模型就是异步的。但是这个任务相对于PWM-Timer却是同步的。

 

现在,我们已经知道了永磁同步电机控制系统的实际情况,下面我们就来进行建模。

 

—— 永磁同步电机控制系统仿真参数——

确定系统参数如下:

表1        永磁同步电机控制系统参数

NO.

Name

Unit

Value

NO.

Name

Unit

Value

1

仿真步长Ts

[s]

1e-7

2

PWM开关频率

[Hz]

6000

3

死区时间

[s]

2e-6

4

PWM比较器时钟频率

[MHz]

10

 

根据PWM开关频率和PWM比较器时钟频率,可以确定PWM比较器的三角波底点值为0,顶点值约为833因此确定实际的控制周期为83.3µs,在PWM比较器的三角波的地点和顶点各对永磁电机进行一次控制。

 

因此确定整个系统仿真模型的仿真参数:

1)       被控对象的仿真步长为100ns

2)       PWM比较器的仿真步长为100ns

3)       控制器的仿真步长为83.3µs

 

控制器仿真模型通过PWM比较器通过异步中断的方式触发运行。

 

—— 永磁同步电机控制系统模型概述——

为保证每个控制时刻电流采样与PWM信号的同步,在模型搭建时可以采用Function Call子系统或者Enable子系统,如下图所示,此时PMSM Controller的运行不与时间同步,而与PWM比较器输出trigger同步(图中的from模块的INT标识)

 

img5

基于Function CallPMSM控制器模型

 

img6

PWM比较器产生控制器模型触发信号

 

整个系统仿真模型建模完成后,点击Simulink的左侧模型的图标img7,选择Colors,查看Simulink模型中不同模块的仿真速率。如下图所示,其中红色表示仿真步长为0.1µs。粉红色表示仿真步长为constant(常值),一般为仿真模型一些Constant模块的仿真步长。最下面青色的就是控制器模型的仿真步长为Triggered,即中断触发的运行方式,其中断源来自D1(即仿真步长为0.1µs的模块),也是就仿真步长为0.1µsPWM比较器产生的。

img8

永磁同步电机控制系统仿真模型的仿真步长

 

—— 各种模式的仿真结果——

下面比较定子频率400Hz下,两种仿真模式下的仿真结果,让大家明白其中的差异。

 

img9

仿真模式1:控制器通过中断触发方式运行电机电流波形(整体)

 

img10

仿真模式1:控制器通过中断触发方式运行电机电流波形(峰值)

 

img11

仿真模式2:控制器通过中断触发方式运行电机电流波形(整体)

 

img12

仿真模式2:控制器通过中断触发方式运行电机电流波形(峰值)

 

img13

仿真模式1:控制器通过中断触发方式运行电机电流波形,电机电流采样波形,三角波

 

img14

仿真模式2:控制器通过中断触发方式运行电机电流波形,电机电流采样波形,三角波

 

差异如下

1)       采用中断触发方式建模和仿真,电机电流的峰值有大约3A0.83%)的波动

2)       采用非中断触发方式建模和仿真,电机电流的峰值有35A9.72%的低频波动

3)       采用中断触发方式建模和仿真,电机电流的采样值在三角波的底点和顶点;

4)       采用非中断触发方式建模和仿真,电机电流的采样值与三角波的底点和顶点无关;

如何大家观察电机转矩的波形可以看到更为明显的低频波动现象。

 

留个小问题,大家互动以下:

问题
 

  为什么采用PWM比较器产生异步中断来触发控制器运行的方式,电流峰值的波形比不采用这个方式的波形小很多?

 

 

下一篇文章会逐步介绍控制器模型内部的,PWM比较器模型,SVPWM算法、FOC控制算法,最大转矩电流比,和死区补偿算法。

 

——参考文献——

[1] Joachim Böcker. “Controlled Three-Phase Drives.” Universität Paderborn LEA Lecture Notes Last Update 13.07.2012.

[2] 上海熠速. “基于Speedgoat FPGA板卡的兆赫兹开关频率PMSM控制算法的开发与验证.” 微信公众号Speedgoat实时仿真系统.

 

2021年2月7日 17:24
浏览量:0