主页 > 互联网 > 内容页

主要讨论PWM比较器的Simulink模型-全球最新

2023-06-27 16:00:08 来源:Speedgoat实时仿真系统

PWM 比较器的功能

还是以本系列文章中,用到的三相两电平逆变器为控制对象。下图是正弦波调制(SPWM)的三相两电平逆变器的波形。

输入的是三相的正弦波信号,三角载波与正弦信号波进行比较,当正弦信号波的值大于三角载波的值,输出“1”,否则,就输出“0”;PWM比较器一共生成6个PWM信号,控制6个IGBT的开通和关断。PWM比较器输出“1”控制IGBT开通,“0”信号IGBT关断。控制逆变器输出的三相相电压和三相线电压如下图所示。


【资料图】

对于三相两电平逆变器,为了防止上下桥臂同时导通而短路,PWM比较器还需要插入死区时间。

此外,为了让电流、速度和位置采样与PWM占空比的更新同步,以及控制器算法模型的触发运行,必须还有中断触发信号生成功能。

因此整个PWM比较器包括四部分:

(1) 三角载波生成;

(2) 信号比较,生成PWM控制信号;

(3) 插入死区时间;

(4) 中断触发信号生成;

正弦波调制(SPWM)的三相两电平逆变器的波形

三角载波生成

因为三角载波生成的模型是在FPGA中运行的,因此数据类型需要整型。

最方便的方法就是使用Simulink的HDL Coder模型库中的HDL Counter模块。通过控制输入端口dir控制HDL Counter模块的计数方向。

HDL Counter模块

示例模型如下:

三角载波生成的Simulink模型

仿真步长为1e-8,Relay 模块的Switch on point为10000,Switch off point为0,输出“0”或者“1” 控制HDL Counter模块的计数方向,生成0~10000的三角波,频率为5kHz。

三角载波信号

PWM 信号生成

三角载波与信号波进行比较,当信号波的值大于三角载波的值,输出“1”,否则,就输出“0”;PWM比较器一共生成6个PWM信号,控制6个IGBT的开通和关断。

此功能的Simulink模型如下:

PWM信号生成的Simulink模型

死区时间

通常死区时间的插入通过增加PWM信号的开通延时实现的。

简单说就是:如果PWM信号由“1”变“0”,即由开通变为关断,则马上关断;如果PWM信号由“0”变“1”,即由关断变为开通,则延时T_delay再开通;此功能的Simulink模型如下,C_delay端口为输开通延时计数值。

死区时间的Simulink模型

中断触发信号生成

此功能比较简单,Simulink模型如下图所示,在三角波的底点和顶点都产生中断,如果只在底点或者只在顶点,可以根据需要修改即可。

中断触发信号生成的Simulink模型

以上模型皆可以通过Simulink的HDL Coder工具生成HDL代码,部署至Speedgoat的FPGA板卡。

标签:

上一篇:拓尔微技术干货 | 细分驱动技术介绍,内含5个知识点|天天新消息
下一篇:最后一页

IT

家电