多相SVPWM信号发生器的制作方法

文档序号:12917169阅读:568来源:国知局
多相SVPWM信号发生器的制作方法与工艺

本发明涉及逆变器控制系统领域,具体涉及一种基于fpga(fieldprogrammablegatearray,现场可编程门阵列)的参数化的多相svpwm(spacevectorpulsewidthmodulation,空间向量脉冲宽度调制)信号发生器。



背景技术:

svpwm技术在电机驱动系统中得到了广泛应用,由3相电动机和变频调速器组成的系统占据主导地位,然而在大功率、高可靠性和低直流母线电压的场合,多相驱动系统比3相驱动系统更有优势,多相驱动系统是指相数大于3的驱动系统,多相驱动系统可以实现低压大功率驱动,多相驱动系统可以在缺相的情况下运行,提高系统的可靠性和安全性,多相驱动系统还可以降低电动机的转矩脉动,降低噪声。



技术实现要素:

本发明的目的在于,提出一种参数化的多相svpwm信号发生器,该多相svpwm信号发生器的输出相数、节拍定时器和死区定时器的位数由参数决定,经计算机程序编译,可以生成指定相数,指定节拍定时器位数和指定死区定时器位数的svpwm信号发生器。

本发明提出的多相svpwm信号发生器,分别与功率驱动电路、微处理器或者数字信号处理器电路相连接,该多相svpwm信号发生器包括:

接口模块,微处理器或者数字信号处理器电路通过接口模块向多相svpwm信号发生器发送控制指令和数据;

节拍发生器模块,用于产生多相svpwm信号发生器工作所需要的节拍信号;

波形发生器模块,按照用户程序指定的扇区号和节拍发生器产生的节拍信号,输出svpwm脉冲波形信号;

死区控制模块,根据用户程序输入的死区延迟时间对输出脉冲信号进行延迟处理;

波形数据修改模块,多相svpwm信号发生器处于停止状态时,用户程序可以通过波形数据修改模块对波形发生器模块中的波形数据进行修改。

所述接口模块接收来自微处理器或者数字信号处理器的扇区(相带)编号、节拍定时值、死区定时值等参数和启动、停止svpwm信号发生器、允许死区、禁止死区等命令,所述接口模块将节拍定时值送到所述节拍发生器模块,将死区定时值送到所述死区控制模块,将扇区(相带)编号送到波形发生器模块、按照用户程序的命令启动或者停止svpwm信号发生器,允许或者禁止死区控制模块的工作。

多相svpwm信号发生器处于停止状态时,所述接口模块可以接收用户程序的命令和数据,对波形发生器模块中的波形数据进行修改。

收到启动命令后,所述节拍发生器模块开始工作,按照节拍定时值产生节拍信号,并将其送到所述波形发生器模块。

所述波形发生器模块按照扇区编号和节拍值产生svpwm波形信号,并将其送到所述死区控制模块。

所述死区控制模块将波形发生器模块输出的每一相svpwm脉冲信号波形变成差分输出信号,允许插入死区时,所述死区控制模块在svpwm波形的差分信号中插入死区,再输出到多相svpwm信号发生器的输出引脚,禁止死区时,svpwm波形的差分信号直接输出到多相svpwm信号发生器的输出引脚。

相数不同的svpwm信号发生器,其电路内部具体结构,输入、输出引脚数目、波形数据表及其初始化数据文件都是不同的,但是其总体电路结构是相似的,对于相数不同的svpwm信号发生器,可以通过参数计算其输入、输出引脚数目,根据参数用算法生成svpwm信号发生器的波形数据表。

本发明用符合ieee(国际电工委员会)1364-2005标准的verilog语言编写,使用特定数据类型来定义多相svpwm信号发生器的输入、输出引脚和模块内部的连线,代码经计算机编译,可以生成指定相数,指定节拍定时器位数和指定死区定时器位数的svpwm信号发生器。

本发明总结了svpwm信号发生器的波形数据表的生成规律,确定了3~16相svpwm波形数据表的结构,并用算法生成了3~16相svpwm波形数据表。

本发明提出了根据参数对指定相数的svpwm信号发生器的波形数据表进行初始化的方法。

本发明提出的多相svpwm信号发生器可以通过程序对其波形数据表中的数据进行在线修改。

附图说明

图1为多相svpwm信号发生器的结构示意图;

图2为实施例1所生成的4相svpwm信号发生器rtl(registertransitionlevel,寄存器传输级)电路图;

图3为实施例1所生成的9相svpwm信号发生器rtl电路图;

图4为6相svpwm信号发生器允许死区时的输出波形图;

图5为实施例1所生成的4相svpwm信号发生器的波形图;

图6为实施例1所生成的9相svpwm信号发生器的波形图。

具体实施方式

本发明提出的多相svpwm信号发生器用符合ieee(国际电工委员会)1364-2005标准的verilog语言编写。

顶层模块与各个功能模块中均声明了以下参数:参数n,该参数用于确定多相svpwm信号发生器的相数;参数l,该参数用于确定节拍定时器的位数;参数m,该参数用于确定死区定时器的位数;按照verilog语言标准,这些参数能够从顶层模块向下层模块传递,即只需要修改顶层模块中的参数就可以改变所有模块中的同一参数值。

实施例1:

本发明提出的多相svpwm信号发生器的结构如图1所示,包括:顶层模块svpwm_nse、接口模块bus_nse、节拍发生器模块rg_nse、波形发生器模块wg_nse、死区控制模块db_nse和波形数据修改模块rw_nse。

本发明提出的多相svpwm信号发生器能够根据不同的相数n,节拍定时器位数l(缺省值16)和死区定时器位数m(缺省值8),经计算机程序编译后,生成指定相数的svpwm信号发生器,图2是n=4时,编译生成的4相svpwm信号发生器rtl(寄存器传输级)电路图;图3是n=9时,编译生成的9相svpwm信号发生器rtl(寄存器传输级)电路图。

下面具体介绍各个模块的功能:

接口模块,由节拍定时值寄存器、死区定时值寄存器、控制寄存器、波形数据修改寄存器以及微处理器接口等组成,负责接收由微处理器或者数字信号处理器发来的控制命令、定时参数、波形数据等。

节拍定时值寄存器中存放微处理器或者数字信号处理器发来的节拍定时值,节拍定时值寄存器的输出连接到节拍发生器,节拍发生器按照节拍定时值产生节拍信号。

死区定时值寄存器中存放微处理器或者数字信号处理器发来的死区定时值,死区定时值寄存器的输出连接到死区控制模块,死区控制模块按照死区定时值在svpwm脉冲信号中插入死区。

控制寄存器中存放微处理器或者数字信号处理器发来的控制命令,控制命令包括启动、停止命令,允许、禁止死区命令,控制命令中还包含svpwm信号的扇区(相带)编号,扇区编号与节拍发生器产生的节拍信号一同组成二维地址,控制波形发生器模块生成svpwm信号波形。

波形数据修改寄存器与波形数据修改模块协同工作,当多相svpwm信号发生器处于停止状态时,用户程序可以向波形数据修改寄存器写入新的波形数据,以替代波形发生器模块中原有的波形数据。

接口模块地址空间的确定,n相svpwm信号发生器的输出信号每周期的节拍数为2n+1,因此节拍定时值寄存器和死区定时值寄存器的数目为2n,这些寄存器在基地址上顺序排列,地址增量为2(最大节拍计数值为16位,最大死区计数值为8位),因此n相svpwm信号发生器所需的地址位数w=为上取整函数。

节拍发生器模块,由计数器和比较器单元组成,负责生成每周期2n+1个节拍信号。

波形发生器模块,波形发生器模块是1个位的同步存储器,当n相svpwm信号发生器工作时,读出信号一直有效,写入信号一直无效,存储器处于只读状态,扇区编码和节拍值分别作为存储器的行、列地址,在系统时钟驱动下,输出svpwm脉冲信号波形。

同步存储器尺寸的确定,n相svpwm信号的扇区(相带)数为2n,每个n相svpwm信号周期由2n+1个节拍组成,且每个周期的svpwm信号波形在时间轴上前后对称,因此波形数据表的大小为位。

同步存储器的初始化,波形发生器模块中的verilog语言代码能够按照参数n的数值(n=3~16),选择对应的数据文件,对波形数据表进行初始化。

死区控制模块,死区控制模块将波形发生器模块输出的每一相svpwm脉冲信号波形变成差分输出信号,并且在允许死区时,按照用户程序输入的死区定时值在每一相差分输出信号中插入死区延迟,如图4所示。

波形数据修改模块,当n相svpwm信号发生器停止工作时,向波形数据修改寄存器写入允许修改数据命令,使得读出信号一直无效,写入信号一直有效,存储器进入只写状态,用户程序通过波形数据修改寄存器连续写入波形数据后,再向波形数据修改寄存器写入停止修改数据命令,关闭存储器的写入信号,修改数据过程完成。

图5为相数n=4时,编译生成的4相svpwm信号发生器在测试时产生的输出波形;图6为相数n=9时,编译生成的9相svpwm信号发生器在测试时产生的输出波形。

本发明是基于fpga(现场可编程门阵列)技术实现的,使得参数化的多相svpwm信号发生器既可以编程在fpga芯片中,与微处理器或者数字信号处理器电路共同组成空间向量脉冲宽度调制器电路;也可以作为参数化的库元件与片上微处理器一起集成在fpga芯片中,组成芯片上嵌入式系统。

以上所说明的本发明实施方式,并不构成对本发明保护范围的限定,任何在本发明的精神和原则之内所做的修改、等同替换和改进等,均应包含在本发明的权利要求保护范围之内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1