基于DSP 和CPLD 的三电平逆变器SVPWM 算法的实现
扫描二维码
随时随地手机看文章
0 引言
近年来,多电平逆变器在高压大功率变频调速场合的应用越来越受到人们的重视。相对于传统的两电平逆变器,多电平逆变器具有每个功率器件的电压应力低、在相同的开关频率下输出波形低次谐波含量少等优点。目前所见到的多电平逆变器,按主电路拓扑结构来分,主要有三类基本的拓扑结构:二极管箝位型、飞跨电容型和级联型[1]。其中二极管箝位型,也称中性点箝位型(NeutralPoint Clamped,NPC)三电平逆变器以其结构简单、所用开关器件少,易于控制等优点成为研究的热点之一。
NPC三电平逆变器的控制方法主要有正弦载波PWM(SPWM)和空间电压矢量PWM(SVPWM)。
SVPWM以其直流电压利用率高,易于数字化实现而得到广泛的应用。
目前,科研工作者对NPC 三电平逆变器的SVPWM算法提出了很多实现方案。但大多采用单个DSP 来完成整个控制算法,使得DSP的程序复杂和混乱,同时由于三电平逆变器需要12 路PWM信号,而DSP的两个事件管理器不能做到完全同步,导致同相的功率器件不能完全同步触发,对逆变器的性能造成严重影响,并且受DSP 的PWM 信号数目的限制,不能扩展到更多电平的逆变器控制[2]。因此本文提出一种基于DSP 和复杂可编程逻辑器件CPLD(Complicated ProgrammedLogic Device)的实验平台,该平台采用DSP 完成SVPWM算法中的主要数据处理和外部控制功能,利用CPLD实现逆变器PWM 波形的发生。
1 三电平逆变器的SVPWM 算法
1.1 三电平逆变器的工作原理
NPC 三电平逆变器的主电路拓扑结构如图1所示。
1.2 SVPWM调制算法
一般而言,三电平逆变器的SVPWM 调制算法主要分为以下三个步骤。
1.2.1 确定空间电压矢量所在扇区
1.2.2 计算基本矢量的作用时间
取合成空间电压矢量所在小扇区三角形的三个顶点的基本电压矢量为组成空间电压矢量的基本合成矢量,根据合成空间电压矢量的伏秒平衡原则,得到各个小扇区的作用时间如表2 所列[5]。
1.2.3 选择合适的开关作用顺序
开关作用顺序应满足两个原则:一是每次只有一相的一个开关状态发生变化;再就是每相的开关状态变化不允许有状态Sa=1 和状态Sa=-1 之间的直接跳变,这样就能达到开关损耗最小,且输出电压谐波小的特点。本文采用七段法来合成每个空间电压矢量,根据开关作用顺序的原则,在每个小扇区内均使用正小矢量作为初始矢量。比如,假设空间矢量处于图3 所示的1.1 区,则可以选择开关作用的顺序为(100)—(000)—(00-1)—(0-1-1)—(00-1)—(000)—(100),其它扇区的开关顺序选择类似。
2 SVPWM调制算法的DSP和CPLD实现
三电平逆变器需要12 路PWM 信号,采用TI公司的DSP TMS320F2812 虽可以产生12 路PWM信号,但DSP既要完成SVPWM算法的扇区判断、作用时间计算及PWM 脉冲的发生,又要完成与液晶的通信,与用户接口的数字控制等,将使程序显得复杂和混乱,并且DSP 两个事件管理器不能做到完全同步,从而造成逆变器同相驱动信号的不同步,将对逆变器的性能造成影响,仅有的12 路PWM 信号同样不能满足以后扩展更多电平逆变器的控制的需要。本文采用DSP和CPLD共同作用实现三电平逆变器的SVPWM 算法,使SVPWM算法的实现变得简单方便。图4 是整个控制系统的控制框图。
如图4所示,利用DSP具有运算处理能力强,外设模块多等特点,由DSP主程序完成程序初始化、与上位机的液晶通信,用户IO 接口的数字控制等,采用定时器下溢中断完成逆变器直流电压的AD采样处理、空间矢量所在扇区的判断、组成参考矢量的基本矢量作用时间的计算,将3 个基本矢量的作用时间的1/2 赋给DSP 的EVA 的3个比较寄存器,与定时器产生的三角载波相比较,产生6 路PWM 信号,取其相互独立的3 路PWM1,PWM3,PWM5 连接到CPLD。CPLD 采用ALTERA公司的EPM570T144C4,利用CPLD的逻辑处理能力强,IO 口多等特点完成逆变器12 路PWM 波形的发出。CPLD通过数据线接收DSP判断出的空间矢量所在的大小扇区号,并捕捉DSP的3 路独立的PWM1,PWM3,PWM5 信号,根据所在的扇区号和3 路独立的PWM 信号的信息进行译码,产生七段式的12 路PWM 驱动信号。
设一个载波周期内DSP 产生独立的PWM1,PWM3,PWM5 的波形如图5 所示,则CPLD 捕捉这3路PWM信号的上升沿和下降沿并进行计数,设计数值为count,每个载波周期的计数初值count=0,当捕捉到PWM1 的上升沿时,计数值加1,同样类似,最后计数值count=6,在载波周期的下溢中断发生时,CPLD 通过数据线得到DSP 计算出来的扇区号,这样CPLD 根据扇区号和计数值count 的值,根据开关作用顺序规则进行译码,产生12 路PWM信号驱动逆变器的12个开关管。同时驱动板上的过流信号连接到CPLD,由CPLD完成对过流信号的处理,当发生过流时,封锁PWM脉冲起到保护系统的作用,同时将故障信号传送给DSP,使DSP得到当前的运行状态并传送到液晶板上显示。并且以后要扩展更多电平逆变器的控制时,只需要扩展数据线的位数即可,因此该方案简单方便,易于向更多电平的扩展。
3 实验结果和结论
根据本文所采用的NPC三电平逆变器,搭建小功率实验平台,对所提出SVPWM 调制算法的实现方法进行验证。图6 是主电路输出的相电压和线电压波形,图7是经RC 滤波后的输出相电压和线电压波形。实验结果验证了所提出NPC三电平逆变器SVPWM 控制算法的实现方法的可行性和正确性。
利用DSP的运算能力强,集成外设多的特点,完成控制算法中扇区判定,基本矢量作用时间的计算,与液晶板的通信等功能,利用CPLD 的逻辑运算能力强,易于IO口扩展的特点完成PWM 驱动波形的产生。所提出的实现方案结构简单,便于向更多电平的扩展,对NPC三电平逆变器的具体实现具有一定的参考价值。