基于FPGA的SPWM波形发生器精品.docx
- 文档编号:13725903
- 上传时间:2023-06-16
- 格式:DOCX
- 页数:15
- 大小:881.12KB
基于FPGA的SPWM波形发生器精品.docx
《基于FPGA的SPWM波形发生器精品.docx》由会员分享,可在线阅读,更多相关《基于FPGA的SPWM波形发生器精品.docx(15页珍藏版)》请在冰点文库上搜索。
基于FPGA的SPWM波形发生器精品
仿真报告
摘要
正弦波逆变电源广泛应用于电力、邮电、通信、航天等各个领域,而且随着微机技术的不断发展和普及,正弦波逆变电源的应用将越来越广。
SPWM逆变控制器是正弦波逆变电源的核心中枢,它利用SPWM技术对正弦波逆变电源的频率和幅值进行控制调节。
本文提出了一种基于FPGA器件的SPWM逆变控制器的设计方法,利用Altera公司的EDA工具QuartusⅡ软件,采用自顶向下的方法对该控制器进行了详细设计。
整个SPWM逆变控制器运用模块化结构设计,各模块易于移植,整个控制系统便于功能扩展和升级。
关键词:
FPGA;SPWM;功能时序仿真;直接数字频率合成
Nowadays,DC-ACinverterswithSinusoidPulseWidthModulation(SPWM)techniquesarewidelyusedinelectricpower,postal,telecommunications,aerospaceandotherfields.TheSPWMcontrollers,whichregulatethevoltageandfrequencybyadjustingtheSPWMsignals,arethecoreoftheinverters.Theperformanceofthecontroller,directlydeterminestheperformanceoftheinverter.
AdesignmethodofFPGA-basedSPWMinvertercontrollerisproposedinthisthesis.DetaileddesignofthiscontrolleriscarriedoutonAlteraQuartusⅡsoftware,with
thetop-to-downapproach.TheSPWMinvertercontrolleriscomprisedofsevenfunctionalmodules,whichareeasytotransplantandupgrade.Thereforethewholecontrolsystemcanbeupgradedeasily.AftertheRTLleveldesigniscompleted,simulationismadeoneverymodule
Keywords:
FieldProgrammableGateArrays;SinusoidPulseWidthModulation;FunctionandTimingSimulation;DirectDigitalFrenqencySynthsis
引言
新型电力电子器件和高性能微处理器的出现和发展,使得PWM技术已成为电力电子技术中非常重要的组成部分,多种方法可以产生SPWM脉宽调制波。
常用的实现方法一种是模拟比较法,即利用模拟电路对三角载波与正弦调制波进行比较,产生SPWM脉冲;另一种常用方法是利用具有的PWM发生电路的专用微处理器芯片(如80C196MC、TMS320F240等)产生PWM调制波。
在这两种方法中,模拟比较法特点是:
电路设计复杂,与数字系统连接困难,在使用微处理器时,会导致处理器的机时增加,对微处理器芯片要求高。
近几年来PLD器件不断换代更新,结合数字频率合成技术DDS,产生一种新的SPWM形成方法,推动了变频技术发展。
DDS技术是一种直接数字合成方法,不需要震荡和锁相环节,直接将波形函数进行数字离散化,以时间为地址,幅度为量化数据,依次存入波形存储器,使连续的数据流通过数模转换器产生需要的波形。
DDS使用基准时钟和相位累加技术控制存储器地址的变化,从而达到控制输出波形的相位,频率,幅度的变化。
以往的DDS大多使用专用芯片,然而在某些场合,专用DDS芯片在控制方式、调节频率等方面与系统的要求差距很大,需要一种更加灵活的控制方式来达到这种要求。
FPGA(现场可编程门阵列)以其可靠性高、功耗低、保密性强、灵活的程序设计等特点,在电子产品设计中得到广泛的应用。
1SPWM原理
SPWM用输出的正弦信号作为调制波,用高频三角波作为载波,控制逆变器的一个桥臂的上、下两个开关管导通与关断。
如果在半个正弦周期内,只有上(下)桥臂的开关管反复通断,下(上)桥臂开关管动作,则称为单极式SPWM。
如果在整个周期内,上、下桥臂的开关管交替导通与关断,即上通下断和上断下通的状态反复切换,则称为双极式SPWM。
图1给出了双极式SPWM的原理示意图。
当载波与调制波相交时,由该交点确定逆变器一个桥臂开关器件的开关动作时刻及开关通断状态,获得一系列宽度不等的正负矩形脉冲电压波形。
该脉冲序列的特点是等幅不等宽,其宽度按正弦规律变化;在正弦波半个周期内,正负脉冲的面积总和与正弦波的面积相等。
SPWM调制的理论基础是面积等效原则,图1中横轴代表时间,因此SPWM的理论依据实际是时间平均等效原理。
图1SPWM产生原理图
可以证明,当脉冲数足够多时,可以认为逆变器输出电压的基波幅值和调制波幅值是相等的,即SPWM逆变器输出的脉冲波的基波幅值就是调制时要求的等效正弦波。
2SPWM波形控制器设计
系统由直接频率生成器产生低频正弦信号,然后与三角波进行高速比较而产生SPWM。
2.1系统构图
图2SPWM波形控制器结构框图。
2.2SPWM波形产生设计
SPWM波是根据三角载波与正弦调制波的交点而得到的一系列脉冲,其幅度不变而宽度按正弦规律变化。
利用FPGA生成SPWM信号,需要将数字三角载波数据与正弦调制波数据进行实时比较。
当三角波计数器数据比正弦调制波数据大时,输出1;当三角波计数器数据比正弦调制波数据小时,输出0。
由此可以产生宽度按正弦变化但幅度不变的SPWM信号。
图3SPWM模块的原理图
3各个模块及其程序
3.1分频模块
图4分频模块
分频模块程序:
libraryieee;
useieee.std_logic_1164.all;
useieee.std_logic_arith.all;
useieee.std_logic_unsigned.all;
entityfenpinIS
port(clk:
instd_logic;
n:
instd_logic_vector(8downto0);
clkout:
outstd_logic);
endfenpin;
architecturertloffenpinis
signalcnt:
std_logic_vector(8downto0);
signalnt,n1:
std_logic_vector(8downto0);
begin
n1<=n-1;
nt<='0'&n(8downto1);
Process(n,clk)
begin
ifclk'eventandclk='1'then
ifcnt=n1then
cnt<="000000000";
elsecnt<=cnt+1;
endif;
ifcnt clkout<='0'; elseclkout<='1'; endif; endif; endprocess; endrtl; 图520M分频到10M仿真结果 3.2正弦波地址分配模块 图6正弦波地址分配模块 正弦波地址分配模块程序: libraryieee; useieee.std_logic_1164.all; useieee.std_logic_arith.all; useieee.std_logic_unsigned.all;--std_logic_vector ENTITYadd_sinIS PORT(clr,en,clk: instd_logic; addr_cnt64: outstd_logic_vector(9downto0)); ENDadd_sin; ARCHITECTUREbehaveOFadd_sinIS BEGIN process(clr,en,clk) variableq64_v: std_logic_vector(9downto0); begin ifclr='0'then q64_v: ="0000000000"; elsifclk'eventandclk='1'then ifen='1'then q64_v: =q64_v+1; elseq64_v: ="0000000000"; ifq64_v="1111101000"then q64_v: ="0000000000"; endif; endif; endif; addr_cnt64<=q64_v; endprocess; endbehave; 3.3三角波/正弦波发生 图7正弦波数据模块图8三角载波数据模块 正弦波数据表,正弦波数据存入sin_1.mif。 (B)三角波数据表 3.4比较器 图9比较器模块 比较器模块程序: LIBRARYIEEE; USEIEEE.STD_LOGIC_1164.ALL; ENTITYcomp8_1IS PORT(A: INSTD_LOGIC_VECTOR(7DOWNTO0); B: INSTD_LOGIC_VECTOR(7DOWNTO0); Y: OUTSTD_LOGIC); ENDcomp8_1; ARCHITECTUREbehaveOFcomp8_1IS BEGIN PROCESS(A,B) BEGIN IF(A>=B)THEN Y<='1'; ELSE Y<='0'; ENDIF; ENDPROCESS; ENDbehave; 4仿真结果图 图10仿真结果图 参考文献 [1]潘松、黄继业等.EDA技术实用教程(第三版)[M].北京: 科学出版社,2006 [2]潘松、王国栋等.VHDL实用教程(修订版)[M].成都: 成都电子科技大学出版社,2001 [3]黄正谨、徐坚等.CPLD系统设计技术入门与应用[M].北京: 电子工业出版社,2002 [4]黄俊.电力电子变流技术[M].北京: 机械工业出版社,1993. [5]李永东.交流电机数字控制系统[M].北京: 机械工业出版社,2002. [6]李林峰.CPLD在SPWM变频调速系统中的应用[J].电工技术,2002(3): 93-108. [7]ZhouZhaoyong,YangGuijie,LiTiecai.DesignandImplementationofanFPGA-Based-3-PhaseSinusoidalPWMVVVFController.2004,12(6): 1703-1708.[J].IEEETransactionsonPowerElectronics,2004,12(6): 1703-1708. [8]邵日明,吴守.新型三相脉宽调制发生器[J].电工技术杂志,2004(8): 77-80. [9]孙海涛,杨振强.基于CPLD+SCM结构的SPWM变频调速控制[J].电力电子技术,2006,40 (1): 93-94. [10]罗宏浩,刘少克.新型SPWM调制技术[J].微特电机,2004(3): 55-66.
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 FPGA SPWM 波形 发生器 精品