首页 | 供应信息 | 采购信息 | PDF资料 | 技术资料 | 行业资讯 | 产品展示 | 人才市场 进入会员区
   技术文章分类:单片机/DSP 嵌入式系统 测试仪表 电源技术 接口电路 存储器 传感与控制 通信网络 无线通信 模拟技术 显示与光电 EDA/PLD 汽车电子 消费电子 电子综合
   电子综合工具:PDF资料大全 电子缩略语 IC型号替换 IC厂家 电子电路图 技术参数 设计应用 解决方案
技术资料 行业资讯 PDF资料 IC价格 IC替换 缩略语 IC供应 IC采购
  您所在的位置: IC37首页 > 技术资料 > EDA/PLD > 基于FPGA的三相PWM发生器
基于FPGA的三相PWM发生器
类别:EDA/PLD  
 
        作者:华中理工大学电力工程系(430074)许

     强 贾正春 来源:《电子技术应用》

     摘要:介绍了基于FPGA设计+的三相PWM发生器。该发生器具有灵活和可编程等优点,可应用于交流电机驱动用的三相电压源逆变器。实验结果验证了本设计的有效性。

    

    

     关键词:脉宽调制

     现场可编程门阵列

     随着现代工业的要求和微电子技术的进步,交流传动已经迅速地从模拟控制转向数据控制,其中PWM技术与方法是其核心内容。但数字化PWM电路一直是设计中的难点,除了集成三相PWM发生器的80C196MCTMS320F240等微处理器外,均采用中小规格集成电路设计感想

     PWM,这是非常复杂的,往往使电路复杂、可靠性差。本文介绍了一种用单片大规模FPGA实现的三相PWM发生器,它具有三相脉冲中心对称、PWM周期和死区时间可编程等特点,且性能优异、灵活性和可靠性高。

     1 基本原理

     本设计的目的是产生三相逆变器的PWM信号波形。图1是用FPGA实现的PWM部分设计框图,它主要由脉宽寄存器、缓冲寄存器、周期寄存器、死区寄存器、死区发生器、数值比较器、控制逻辑等几部分构成。脉宽寄存器,决定三相PWM信号的脉宽;缓冲寄存器,实现对脉宽数据的双缓冲;周期寄存器,决定PWM的斩波周期;死区寄存器,决定上下桥臂的死区时间。脉宽寄存器在每个开关周期中由微处理器与更新一次,其输出数据经缓冲以后与基准计数器进行数值比较,得到三相PWM信号PA、PB、PC。再经过死区电路处理,最后产生6个中心对称的PWM驱动信号,驱动三相逆变器的6个功率器件。PWM算法可采用SPWM(正弦PWM)或者SVPWM(空间矢量PWM)。

     FPGA中的基准计数器,用来产生类似模拟电路中的三角波基准,是一个最小计数值为0、最大计数值为周期寄存器中保存的数值、计数方向交替变化的可逆计数器。基准计数器单元在最大计数值时产生一个同步信号SYN,当它有效时将三个脉宽寄存器的数据存入各自的缓冲寄存器,实现双缓冲,使三个脉宽寄存器在SYN无效时可依次由微处理器更新而不影响最终的三相同步关系。同时基准计数器单元产生一个方向信号DIR,可作为微处理器的外部中断源(边缘触发方式),在PWM开关周期的起始点产生中断。

     微处理器软件设计较简单,在初始化阶段设置好周期寄存器、死区寄存器,以后只需在PWM中断服务程序中将计算好的三相脉宽数据分别送到各自的脉宽寄存器,然后退出中断服务程序,等待控制器在SYN脉冲控制下将三个脉宽寄存器的数据锁存到各自的缓冲寄存器中。在下一个PWM周期中输出相应的脉冲,同时中断被触发,便开始了下一个PWM中断服务程序。程序要求PWM中断服务程序运行时间小于PWM周期,由此决定了PWM最高运行频率。图2为PWM波形图。

     2 内部设计

     以A相为例,基准计数器由加减计数器构成。加计数和减计数交替执行,计数周期由周期寄存器决定,DIR指示计数方向,同步信号SYN用来加载A相缓冲器。PA是缓冲器与基准计数器的数值比较结果,死区发生器由死区计数器和一些组合逻辑组成,使同相的上下桥臂驱动信号错开一个死区时间,防止功率器件短路。死区时间由死区寄存器决定,最后输出A上下桥臂驱动信号AH和AL。

     死区计数器采和饱和计数器,饱和计数器的特性类似于电容的充放电过程,规则为:

     (1)当输入为0时,如果计数值等于0,则计数值保持不变,否则作减1计数;

     (2)当输入为1时,如果计数值等于max,则计数值保持不变,否则作加1计数;

     (3)当输入为1且死区计数器数值为max时,AL=0,AH=1,上桥臂导通;

     (4)当输入为0且死区计数器数值为0时,AL=1,AH=0,下桥臂导通;

     (5)当死区计数器数值在0~max之间时,AL=0,AH=0,上下桥臂都截止,形成死区。

     其中,max等于死区寄存器的数值。

     周期寄存器和脉宽寄存器为14位,死区寄存器为8位,在20MHz时钟,开关频率为610Hz~10MHz,死区时间为0~12.8μs,脉冲分辨率为50ns。

     FPGA采用VHDL硬件描述语言进行设计,上面给出死区发生器的VHDL设计:

     Entity dead is

     Port(clk,px:in std_logic;

     Xh,xl:out std_logic;

     Dead_time:in std_logic_vector(7 downto 0);

     Q:inout std_logic_vector(7 downto 0));

     End dead;

     Architecture dead of dead is

     Begin

     Process(clk)

     Begin

     If (clk'EVENT and clk='1') then

     If ((px='1') and (q/=dead_time)) then

     Q<=Q+1;

     Elsif ((px='0') and

     (q/="00000000")) then q<=q-1;

     End if;

     If ((px='1') and (q=dead_time)) then

     Xh<='1';

     Else

     Xh<='0';

     End if;

     If ((px='0') and (q="00000000"))

     then

     Xl<='1';

     Else

     Xl<='0';

     End if;

     End if;

     End process;

     End dead;

     3 试验与结构

     FPGA采用ACTEL公司反熔丝工艺的42MX16,应用在所研制的交流主轴驱动器中,图3是其6个基极驱动信号波形。在实际应用中,除PWM外,在同一片FPGA中还设计了光电编码器计数单元、输入脉冲计数器、I/O接口、保护电路、译码器等全部外围数字逻辑电路,它与DSP、A/D芯片和接口电路构成非常简洁的交流电机驱动器的控制部分。采用FGPA构成三相PWM发生器的方案,具有低成本、高灵活性、高集成度、高可靠性等优点。

    

 
我要投稿 注册会员
客服咨询热线:0755-26000950 0755-26007355
 相关技术资料
·移动Agent在DIDS中..  2008-1-21
·分布式运算单元的原理及其实..  2007-8-9
·FPGA作为协处理器在实时..  2007-8-9
·利用MATLAB增强MAX..  2007-8-7
·基于EPLD的PCI总线仲..  2007-8-7
·现代可编程计算机控制器PC..  2007-8-9
·FPGA在多进制正交扩频通..  2007-8-9
·用PLC实现的蜂窝移动通信..  2007-7-29
·基于FPGA的FIR滤波器..  2007-8-9
·伪随机序列及PLD实现在程..  2007-8-7
·视频窗口控制器设计  2007-7-29
·SDRAM接口的VHDL设计  2007-8-9
·用CPLD实现FIR数字滤..  2007-8-9
·容错系统中的自校验技术及实..  2007-7-29
·一种用VHDL设计实现的有..  2007-8-9
·高密度在系统可编程逻辑器件..  2007-8-9
·VHDL设计中电路简化问题..  2007-8-9
·用在系统可编程模拟器件实现..  2007-8-9
·DSP+FPGA实时信号处..  2007-8-9
·基于FPGA技术的新型高速..  2007-7-29
 
 热门IC
S82503  TC5093AP  AM27C020-120JC  RTC4553B  LP2985AIM5-3.2  MC33174DR2G  74HCT125PW  BF517  ASM705EPA  UPD75P116CW  M5283P  STK4362  STK5331  P2600EA  FQP10N20C  FQP70N10  HUF76139P3  FDP3632  SFP9520  HUF75309D3S  IRFU9220  STW50N10  0582L2  74LS260  L6000  74LS377N  CS5422  SN74HCT273NSR  74LS14D  MC14023BD  LH28F016SCT-L95  74LCX541WMX  STW8NB80  FQPF5N80  MAX968ESA  44A507844-001  TMS27C512-2JL  AD42869  MCM6343TS12  VSP2210Y  411450-003-28  BCR108S  IDT71V124SA10Y  M62C64S-70LL  BR93LC56F-E2  74ACT157PC  UPC451G2-T2  OPA354AIDBVT  74AC74SJ  PT2253