上次讲了使用system generator开发FPGA控制算法的基本原理以及一些心得;接下来把电机控制里面较为核心的SVPWM算法使用system generator做了实现,在此把开发过程、遇到的问题及解决方法分享一下;最后用示波器将管脚上测得的SVPWM脉冲采集了上来。
1. 为什么要使用FPGA实现
在全控型电力电子开关器件出现以后,为了改善交流电动机变压变频调速系统的性能,科技工作者在20世纪80年代开发出了应用脉宽调制(PWM)技术的变压变频器,由于它的优良的技术性能,当今国内外生成的变压变频器几乎都已采用这项技术。目前在逆变器控制领域广泛使用DSP来实现SVPWM的调制算法,具有硬件简单、灵活性好等特点。但是PWM波的产生需要定时的采样与计算,从而使得控制系统的实时性低,CPU的利用率不高。由于DSP采用串行的数据处理机制,在对数据量大、速度要求高,高实时性和高可靠性的底层信号进行处理时并无优势可言,而这恰恰是FPGA的强相。由于FPGA采用数据并发执行的处理方式,使得其在高速大规模的数据处理方面有着无可替代的优势,随着FPGA工艺和设计水平的不断提高,其在数字系统中扮演的角色也从逻辑胶合者提升到处理器的核心。FPGA在工业控制中的应用早在十年前就已经出现,随着FPGA芯片价格的不断降低,其在工业领域的应用正在飞速发展,采用FPGA来实现SVPWM调制算法也将层出不穷 |