电子说
本文介绍基于 dsPIC33CK256MP508 实现的三相交错 LLC PWM发波逻辑,该发波逻辑充分利用了 dsPIC33C 系列MCU强大的“支持精细边沿定位的高分辨率PWM”外设,诸如PWM发生器(PG)的ADC触发信号2分频,PCI同步功能和PWM事件输出机制。同时也开启了PG5的同步中断(此中断建议具有最高优先级)。
1. PWM发波逻辑说明
三相交错带同步整流的半桥LLC拓扑结构示意如下,需要6对PWM波。对于dsPIC33CK256MP508 可以用PG1、PG3和PG5作为主管PWM驱动,PG2、PG4和PG6作为同步管PWM驱动。
图 1 - 三相交错LLC拓扑示意
1.1 PWM外设基础知识回顾
在具体研究PWM发波逻辑之前,需要了解下本文用到的dsPIC33C 系列MCU“支持精细边沿定位的高分辨率PWM ^[2]^ ”外设的一些基础知识。
图 2 - 独立边沿PWM模式
推挽输出模式在接收到SOC触发信号时,都会将PWM周期重复两次。由于推挽模式下不能使用死区,所以在独立边沿PWM模式下可以给PGxDC一个小于PGxPER值,以实现死区功能。
图 3 - 推挽输出模式
每个PWM发生器可生成两个ADC触发信号:ADC触发信号1和ADC触发信号2,同时ADC触发信号1输出可以使用ADTRPS<4:0>控制位(PGxEVTL<15:11>)进行后分频,以降低ADC转换的频率。
PWM事件输出功能提供了一种用于将各种PWM信号和事件与其他外设和外部器件接口的机制。本文LLC PWM发波逻辑的错相就会用到将ADC触发信号1的2分频送给PWM事件输出,然后相关PWM发生器与该事件进行同步。
同步模块是唯一可启动周期开始的PCI模块,可用作SOCS<3:0>(PGxCONH<3:0>)多路开关的输入,这里用于相关PWM发生器与PWM事件的同步操作,完成错相功能。
PWM发生器提供了两种触发模式,用于确定如何使用SOC触发信号,分别为单触发模式和可重触发模式,使用TRGMOD<1:0>(PGxCONH<7:6>)选择触发模式,因用了PCI同步功能,这里需要选择重触发模式,以防止SOC触发信号丢失。
PGxPER、PGxPHASE、PGxDC和PGxTRIGA等寄存器都是有缓冲的,本文这里选择在下一个PWM周期开始时真正更新寄存器。只要在PG1新周期开始前完成对PG1~PG6的相关寄存器更新,就可以保证半桥LLC所有PG的正确同步。
1.2 PWM发波逻辑实现
在回顾了PWM外设的基础知识后,开始看一下半桥LLC 三相交错PWM发波的具体实现,示意波形见图4 。这里忽略了死区和同步整流管相对于主管的相位偏移,其他详细说明如下。
图 4 - PWM发波逻辑波形示意
2. 开发与验证
2.1 开发环境说明
2.1.1 软件开发环境
相关软件开发版本情况说明如下。
2.2 软件工程创建
您可以直接从如下Gitee链接下载完整的测试工程,参见doc目录下的README.pdf可以一步一步从零开始完成该搭建工程。
2.3 发波逻辑验证
软件经编译并烧录到dsPIC33CK256MP508后可以详细观察相关的PWM波形。PWM1H、PWM1L、PWM2H、PWM2L的波形关系如图6,在频率突变时也能很好的保证推挽输出正负半波的对称性。对应的PWM2H、PWM2L、PWM3H、PWM3L 和 PWM5H、PWM5L、PWM6H、PWM6L的波形关系也与图6一致。
图 6 - CH1: PWM1H, CH2: PWM1L, CH3: PWM2H, CH4: PWM2L
PWM1H、PWM1L、PWM3H、PWM3L的波形关系如图7,PG3滞后PG1 60°。
图 7 - CH1: PWM1H, CH2: PWM1L, CH3: PWM2H, CH4: PWM2L
PWM1H、PWM1L、PWM5H、PWM5L的波形关系如下,PG5滞后PG1 120°。
图 8 - CH1: PWM1H, CH2: PWM1L, CH3: PWM3H, CH4: PWM3L
全部0条评论
快来发表一下你的评论吧 !