xilinx FPGA实现三相电机控制中的经典SVPWM算法--低资源占用,高计算效率

xilinx FPGA实现三相电机控制中的经典SVPWM算法--低资源占用,高计算效率_第1张图片

传统的电机控制算法中svpwm均放在DSP中实现,如DSP 28335的ePWM模块完成PWM发波。但是,DSP串行执行的特点,在一些高性能控制场合或特殊应用领域,限制了算法性能的提升。

FPGA作为可编程逻辑器件,具有高效的并行执行能力,处理一些逻辑判断,移位操作等具有天然的优势。

 

传统的基于FPGA实现三相SVPWM,通常避免不了进行一些乘除运算,特别是三角函数运算,这些是由svpwm算法的本质决定的,如下式

 

xilinx FPGA实现三相电机控制中的经典SVPWM算法--低资源占用,高计算效率_第2张图片

为了降低fpga的资源占用,并提高算法代码的运算速度,采取了一些技巧,对svpwm编程进行了简化,以适应fpga的运算特点。高效率的svpwm及其verilog代码实现原理框图如下图。

xilinx FPGA实现三相电机控制中的经典SVPWM算法--低资源占用,高计算效率_第3张图片

为了验证算法的有效性,在一块黑金spartan6开发板上完了上电试验,并通过搭建逻辑分析仪,观测出马鞍形调制波,如图所示。

xilinx FPGA实现三相电机控制中的经典SVPWM算法--低资源占用,高计算效率_第4张图片

综上,基于fpga的高效率,低资源占用的svpwm算法及其IP核开发成功!
Mark一下

你可能感兴趣的:(技术原创)