发明内容
本发明的目的在于,提出一种SVPWM信号发生器,避免发生逆变器桥壁短路的现象,保证系统稳定、可靠地运行。
本发明提出的SVPWM信号发生器,该SVPWM信号发生器分别与三相桥式电路、DSP电路相连接,该SVPWM信号发生器包括:
脉宽调制启动模块,用于计时以及触发SVPWM信号模块开始工作;
SVPWM信号模块,用于根据输入时间输出相应的SVPWM波形;
过调制控制模块,用于在所述三相桥式电路过调制时对时间参数进行重构处理;
分频器模块,用于使所述过调制控制模块和所述SVPWM信号模块同步工作;
死区延迟模块,用于根据用户输入的死区延迟时间对脉冲信号进行延迟处理;
所述脉宽调制启动模块开始计时,在计时的数值达到预定阈值时,发送触发指令至所述SVPWM信号模块使该SVPWM信号模块开始工作;同时所述过调制控制模块开始接收由所述DSP电路输出的表示逆变器开关状态保持时间的时间参数;
所述分频器模块对所述SVPWM信号模块的时钟进行分频处理,使所述过调制控制模块和分频处理后的SVPWM信号模块工作周期相同;所述过调制控制模块和分频处理后的SVPWM信号模块根据相同的工作周期同步工作;
所述过调制控制模块在所述三相桥式电路发生过调制时对所述时间参数进行重构处理,获得重构处理后的时间参数;所述SVPWM信号模块根据该重构处理后的时间参数输出相应的脉冲信号;
所述死区延迟模块接收用户输入的死区延迟时间,根据该死区延迟时间对所述脉冲信号进行延迟处理。
本发明在逆变器控制系统发生过调制时,通过过调制控制模块对输入的时间参数进行重构处理,获得重构处理后的时间参数,根据时间参数将时间信号转化成为脉冲信号,并接收输入的死区延迟时间对该脉冲信号进行延迟处理,避免了同一桥壁的控制信号同时发生高电平的短路故障,从而保证系统稳定、可靠地运行。
具体实施方式
实施例1:
本发明提出的SVPWM信号发生器,是基于FPGA来实现的,如图1所示,包括:脉宽调制启动模块、SVPWM信号模块、过调制控制模块、分频器模块和死区延迟模块。
下面具体介绍各个模块的功能:
脉宽调制启动模块,用于触发SVPWM信号模块开始工作。
SVPWM信号模块,用于根据输入时间输出相应的SVPWM波形。
过调制控制模块,用于在过调制时进行时间参数的重构处理。
分频器模块,用于使过调制控制模块和SVPWM信号模块同步工作。
死区延迟模块,用于根据输入的死区延迟时间对脉冲信号进行延迟处理。
如图2所示,图2是一种包含SVPWM信号发生器的逆变器控制系统示意图。该系统包含三相桥式电路、DSP与SVPWM信号发生器。其中,A、B和C分别表示各相上、下桥壁的中点,N表示三相绕组的公共接点;而Vdc表示直流母线电压,0为其中点。上述三相桥式电路的交流侧输出电压值至DSP,然后DSP输出表示逆变器开关状态保持时间的时间参数至SVPWM信号发生器,SVPWM信号发生器再输出SVPWM触发信号至三相桥式电路,控制桥壁的通断状态。
下面描述该SVPWM信号发生器的具体工作过程:
首先预先设定一个计数的阈值,本实施例中,使用30作为该阈值。由脉宽调制启动模块内部的计数器开始计时,如图3所示,图3为脉宽调制启动模块的波形图。若该计数器计时的数值未达到30,则继续计数,同时过调制控制模块也不接收数据,系统也不进入工作状态。在计时的数值达到30时,脉宽调制启动模块发送控制指令至SVPWM信号模块使该SVPWM信号模块开始工作;同时过调制控制模块开始接收表示逆变器开关状态保持时间的时间参数。
对SVPWM信号模块来说,输入的数据是在系统开始的第一个时钟脉冲就被读入该模块的内部存储器。此处SVPWM信号模块达到阈值再启动,能够将SVPWM信号模块延迟过调制控制模块一个工作周期,避免过调制控制模块的时间参数还没有被输入,而SVPWM信号模块的内部计数器已经开始计时,造成控制信号在一个周期内的不对称故障的结果。
SVPWM信号模块和过调制控制模块都有自己的工作周期,但是两个模块的工作周期都不相同。然而SVPWM信号模块输出的逆变器控制信号的波形取决于过调制控制模块输出的时间参数。
如果两个模块的工作周期不同,SVPWM信号发生模块将无法输出正确的逆变器桥臂控制信号。原因在于:如果过调制控制模块在两个连续的工作周期内输出不同的时间参数,但是其工作周期小于SVPWM信号模块的工作周期,SVPWM信号模块会丢掉过调制控制模块输出的第二组时间参数,因此SVPWM信号模块在第二个工作周期内产生的逆变器桥臂控制信号即为错误的信号。
然后再通过分频器模块实现过调制控制模块和SVPWM信号模块同步工作。令SVPWM信号发生模块使用系统基准时钟,令过调制控制模块使用将系统基准时钟频率适当降低的次级时钟。因此需要设计一个降低系统时钟频率的分频器模块。分频器模块的电路设计可以利用内部计数器和反相器实现,每到计数器当前值计到分频设定值时,就使输出时钟脉冲反相,同时计数器清零,便得到了分频的次级时钟。分频器模块是通过对SVPWM信号发生模块的时钟做分频处理,使得过调制控制模块的工作周期等于SVPWM信号发生模块的工作周期,以此来实现两个模块的同步工作。如图4和图5所示,图4为过调制控制模块的波形示意图,图5为SVPWM信号模块的波形示意图。
然后检测当前桥壁控制信号是否发生上升沿变化,若未发生变化则是正常状态;若发生变化则是非正常状态,表示可能同一相桥壁的控制信号同时出现高电平,需要按照过调制状态进行处理。过调制控制模块在发生过调制时对时间参数进行重构处理,获得新的时间参数;SVPWM信号模块根据该新的时间参数输出相应的脉冲信号。
对过调制控制模块来说,它的作用是先计算零矢量的时间,然后根据零矢量的正负判断是否发生过调制。若没有发生过调制则保持原输入时间不变,若发生过调制则需要修改两个非零基本矢量的作用时间。先将矢量作用时间转换为高低电平作用时间,然后再根据输入扇区号的不同,将高低电平作用时间按照SVPWM原理分配给输出开关动作的六个端口。
其中,对各时间参数进行重构处理的过程是通过校正进入过调制区的给定电压矢量实现的。因此,如果发生过调制,为了保持调整后的电压矢量相位不发生变化,可以把两个非零基本电压矢量的作用时间等比例缩短。其具体关系式如下:
在上述公式中,后面的括号表示相应的条件,不同的条件重构的过程不同。用Ts表示PWM周期,用T1表示合成给定电压矢量V时基本矢量V1作用的时间,用T2表示合成给定电压矢量V时基本矢量V2作用的时间,用T1表示合成校正后的电压矢量时基本矢量V1的时间,用T2表示合成校正后的电压矢量时基本矢量V2的时间。由上式可以得到校正后的基本电压矢量的作用时间,但是此算法仅适用于T1、T2之和大于Ts、而T1、T2都小于Ts的情况。
当T1、T2中的一个大于Ts时,需要采取其它方法重新分配非零基本矢量的作用时间,采用的关系式如下:
所以,对各时间参数进行重构处理的过程可以归纳为以下的公式:
由于FPGA的运行速度较快,所以本实施例采用FPGA来实现,能够提高开关的控制速度。在桥壁控制信号发生上升沿变化后,死区延迟模块接收用户输入的死区延迟时间,根据该死区延迟时间对脉冲信号进行延迟处理,即将控制信号的上升沿延时一个死区,而其它状态的控制信号则保持不变。由于逆变器开关器件存在不同的实际情况,所以需要根据实际情况由用户手动输入死区延迟时间,然后死去延迟模块接收输入的死去延迟时间进行进一步的处理。这样,在根据输入的死区延迟时间对脉冲信号进行延迟处理后,可以避免同一相桥壁的控制信号同时出现高电平的短路故障。如图6所示,图6为死区延迟模块的波形示意图。
在本发明的技术方案中,过调制控制模块和SVPWM信号模块是SVPWM信号发生器的核心模块,分别实现了时间数据的重构和时间信号向脉冲控制信号的转化。为了方便控制,过调制控制模块包括依次连接的输入时间锁存单元、比较器单元、乘法器单元、除法器单元、零矢量和输入扇区号锁存单元、矢量分配单元、时间转换单元和时间重构单元,本实施例中的过调制控制模块可以按此方式实现。在过调制控制模块内部的乘法器和除法器的设计上,采用时序电路代替纯组合逻辑电路的方法,虽然运算速度受到一定限制,但是在不影响工程实际需要的前提下,更加易于实现流水线控制。其中,乘法器单元可以为8位硬件乘法器,除法器单元可以为16/9位硬件除法器,串联的8位硬件乘法器和16/9位硬件除法器是过调制控制模块的核心,其作用是在发生过调制时实现对给定空间电压矢量的校正。其它单元主要是起辅助作用,共同实现过调制控制模块的其它主要功能。如图7所示,图7为本实施例SVPWM信号发生器的输出波形示意图。
本发明在过调制时先通过时间数据的重构,再将时间信号转化成为脉冲控制信号并对脉冲信号进行延迟处理,从而有效地防止逆变器桥臂短路事故的发生。而且本发明是基于FPGA实现的产品,在FPGA运行速度比DSP快的情况下,可以进一步提高开关的控制速度,并获得比常规六阶梯波形更好的输出电压波形。
以上所述的本发明实施方式,并不构成对本发明保护范围的限定。任何在本发明的精神和原则之内所作的修改、等同替换和改进等,均应包含在本发明的权利要求保护范围之内。