基于FPGA的可变频SPWM发生器的实现*

2014-11-28 09:38曾启帆孟光伟
舰船电子工程 2014年6期
关键词:正弦波正弦载波

曾启帆 孟光伟 向 东

(海军工程大学电气工程学院 武汉 430033)

1 引言

正弦脉宽调制(SPWM)技术在逆变器、高频整流器、变频器的电力电子设备中有着广泛的应用[1~3],本文设计要求输出对应的正弦波频率在48Hz~52Hz的小范围内小幅度变化,为三相整流器的频率跟踪控制提供用于测试的交流侧电压。另外设计要求死区时间在10μs左右。

FPGA具有结构灵活,可编程性强,并行数据处理能力强大等优点[4],在电力电子领域中,常被用于设计PWM发生器,文献[5]采用对称规则采样法,充分利用FPGA的特性,用循环加减计数器实现三角载波,让其与正弦波比较得出波形。但是载波频率较大,致使输出频率无法微调。本文采用一种峰值采样型采样法[6],用正弦波采样值与三角载波的峰值比较,通过比例计算得出脉宽,进而得到SPWM波。虽然对FPGA占用资源较多,但也具有易于实现,频率变化精度高,死区设计方便等特点。

2 SPWM调制原理和方法

SPWM就是在对一个正弦波进行脉宽调制时,使脉冲系列的占空比按正弦规律来排列[6]。当正弦值为较大时,脉冲的宽度也较大,而脉冲间的间隔较小。反之,当正弦值较小时,脉冲的宽度也较小,而脉冲间的间隔较大。

自然采样法是目前最好的SPWM波形生成法[7~8],它在正弦波和三角波的自然交点时刻控制功率开关器件的通断,从而得出按SPWM变化的脉冲波形。但这种方法计算量过大,且一般通过模拟器件实现,工程上常用规则采样法[9]。该采样法的基本思想是每个脉冲均以三角载波中心点为轴对正弦调制波采样,因此每个载波周期内只需要对正弦波采样一次,简化了计算公式,并可以根据脉宽计算公式预先算出SPWM波的脉宽时间,便于设计。但是得出的波形误差较大[10]。

本文采用文献[6]所描述的峰值型不对称规则采样法,其产生原理如图1所示,它在每个三角载波周期的正峰值E和F处对正弦调制波采样。其水平延长并与三角波相交于A、B和C、D两点,从而确定出高电平脉冲的起始时刻tB、关断时刻tC和对应的高、低电平脉宽。

图1 峰值型不对称规则采样法

根据文献[6]的结论,此种采样法具有规则采样法的采样时间可预先计算的优点。而且与采样传统不对称规则采样法相比,采用峰值型不对称规则采样法所得的SPWM高电平脉宽长,SPWM低电平脉宽短,其输出波形更接近于自然采样法,是一种简单可靠的SPWM采样法。根据相似三角形的性质可得出设计所需要的几何关系:

式中,Ttri是三角载波的周期,tb是三角载波周期内后面的开关变化时刻,tf是之前的开关变化时刻。AA′即正弦调制波在此载波周期内的采样值,EE′即三角载波的峰值。

3 算法的FPGA设计和实现

本设计的SPWM发生器,包括以下几个部分:频率生成模块、三相相位生成模块、正弦函数查表模块、死区处理与比较模块,几个模块的逻辑结构图如图2所示。

程序根据输入信号change得出相应的载波频率,再用载波的周期做时钟周期,在三相相位生成模块得出A相第k个载波周期Tc中正弦调制波的相位,并在A相基础上分别加上120°和240°相角对应的数值,同时得出此刻B相、C相的相位。正弦波函数以.mif文件的形式存储在正弦波查表模块的rom中。运用查表法,把之前得到的相位当作地址,查找相位地址对应的正弦波的值,再在比较模块中与三角载波的峰值比较,得出第k个PWM周期的开关变化时刻,输出相应脉宽的脉冲信号,最终得到SPWM波输出。由于正弦波只需跟一个固定的峰值做比较,所以不需要另外编写三角载波的生成模块。

图2 三相可变频SPWM发生器结构图

正弦波在三角波第k个周期的波峰被采样,得到的采样值在第k+1个周期中与三角波峰值进行比较。程序中,PWM频率生成模块输出的clkr(如图2)的上升沿代表三角波波峰,下降沿代表三角波波谷,运用clkr的不同边沿触发执行不同的步骤,实现了上述峰值采样。输出会延时1个三角周期,从第2个周期开始生成SPWM波形。这样就在FPGA上实现了峰值型采样法。

在程序的设计中,参数主要有载波比N,载波周期与死区时间的比Nd,载波幅值Vcm,载波周期Ttri。本设计中晶振频率=22.5792MHz,正弦波的幅值Vrm为FF,即255,设计要求死区时间td大于5μs,约为10μs。为了使SPWM波的最低此谐波至少是基波的三倍,N应为3的倍数。另外,为了不出现毛刺,最小脉宽Xmin设定为大于2倍的死区时间。参数设置的条件如下所示:

1)N=3k(k为整数);

2)fd=fr·N·Nd<2×105(fd为死区频率);

4)M=Vrm/Vcm<1;

5)考虑到FPGA不适合浮点计算的特性,所有的参数最好是整数。

根据上述条件,设定N=144,Nd=14,Vcm=392。fd的范围为96768Hz~104832Hz,死区在10μs左右变化。

3.1 PWM频率生成模块

该模块通过输入信号change确定最终输出正弦波的频率,change是一个8位的输入信号,当change=“10000000”,即128时,结果将输出50Hz频率的SPWM波。change可让SPWM波在48Hz到52Hz变化。计算公式为

3.2 死区处理与比较模块

此模块在比较调制波和载波的同时进行死区处理,三相的比较模块程序相同。此处以其中一相为例。在的脉宽计算程序中,程序从PWM频率生成模块中读取的值,根据公式

实时计算出nf,nb的值,以及死区的宽度。随后是脉宽生成程序,cnt1是PWM频率生成模块中的计数器的计数值,cntx是死区宽度的值,在一个开关周期中,cnt1与nf,nb相比较确定当前脉冲的占空比,比较时,通过在nf,nb的时刻上加上或减去死区宽度的一半cntx/2,实现上下臂对称的死区控制:当cnt1的值在nf与nb之间,下桥臂导通,上桥臂截止;当cnt1的值小于nf-cntx/2或大于nb+cntx/2时,上桥臂导通,下桥臂截止;其他的情况下令上下桥臂都截止,这就实现了死区控制。

4 实验结果和总结

本设计先在QUARTUSⅡ上进行波形仿真和调试,确认程序无基本错误且死区控制无误后,再将程序下载到芯片中,把芯片连入实际电路,通过示波器观察实验结果。

软件波形仿真如图3所示,取change=128。从图上的圆圈可以看出每相输出的死区。

图3 仿真结果

硬件实验中将FPGA芯片与三相IGBT电路模块PM25RSK120相连,交流侧连上滤波器和负载,得到的波形如图4所示。

图4 change=128和change=129时的输出波形

图4中,CH1为A相线电压,CH2为B相线电压,实验中改变change的值,很好地实现了48Hz~52Hz的频率变化,且波形接近正弦波,由于死区设置较大,所以波形有所失真。

5 结语

本设计利用FPGA的可编程性强,并行数据处理能力强大的特点,设计一个SPWM波形控制器,稍加改进即可满足大多数整流或逆变的SPWM波形的需要。仿真和测试验证了设计的有效性,具有广阔的应用前景。

[1]韩安荣.通用变频器及其应用[M].北京:机械工业出版社,2000.

[2]刘凤君.逆变器用整流器电源[M].北京:机械工业出版社,2004.

[3]王兆安,黄俊.电力电子技术[M].北京:机械工业出版社,2001.

[4]Zhou Z,Yang G,Li T.Design and Implementation of 3-Phase SPWM Controller based on FPGA[J].IEEE Transactions on Power Electronics,2004,12(6):1703-1708.

[5]黄永庆,甘金明.基于CPLD/FPGA的三相SPWM波形发生器的设计与实现[J].梧州学院学报,2008,18(3):36-41.

[6]李扶中,熊蕊.一种新型的不对称规则SPWM采样法[J].电力电子技术,2007,41(4):93-96.

[7]张燕宾.SPWM变频调速应用技术[M].2版.北京:机械工业出版社,2002:21-23.

[8]吴忠,李红,左鹏,等.自然采样SPWM逆变电源的谐波分析及抑制策略[J].电网技术,2002,25(4):17-20.

[9]Hamman J,Van Der Merwe F S.Voltage harmonics generated by voltage-fed inverters using PWM natural sampling[J].IEEE Transactions on Power Electronics,1988,3(3):297-302.

[10]毛惠丰,陈增禄,任记达,等.SPWM数字化自然采样法的理论及脉冲误差分析[J].中国电机工程学报,2006,26(9):93-95.

猜你喜欢
正弦波正弦载波
水声单载波扩频均衡技术研究
正弦、余弦定理的应用
采用BC5016S的纯正弦波逆变器设计及制作
用于SAR与通信一体化系统的滤波器组多载波波形
“美”在二倍角正弦公式中的应用
低载波比下三电平NPC逆变器同步SVPWM算法
超音频正弦波电子管放大器灯丝伺服电路的设计
利用正弦定理解决拓展问题
中国移动LTE FDD&TDD载波聚合部署建议
基于STM32的风力摆控制系统的设计