PWM技术由于自身的各种优点,已经广泛地应用于电力电子电路的控制。目前实现PWM控制的主要硬件载体是单片机,包括高性能的DSP控制器。通常情况下,单片机通过定时中断服务程序产生PWM脉冲,因此在每个载波周期必须进行中断处理,文献[1]指出,微处理器中不确定的中断响应会导致PWM脉冲的相位抖动。同时在恶劣的工业环境下,单片机抗干扰性能差的问题显得尤其突出,甚至影响到系统的安全运行。因此不得不花费大量的精力解决抗干扰问题。
FPGA由于近年来的迅猛发展,内部资源不断增多,功能日趋完善。鉴于FPGA运行速度快、抗干扰能力强、I/O口可灵活配置等优点,在电力电子控制领域应用越来越广泛。本文结合Cyclone系列FPGA(EP1C3T144C8)较为详细地介绍了PWM控制器的设计。
由于电压源型三相逆变电路应用非常普遍,本文以此电路为研究对象,使设计具有通用性。FPGA作为系统控制核心,负责反馈数据处理、闭环系统调节、PWM信号生成、显示/键盘等功能。
1.PWM控制器的设计
在本系统设计中采用自上至下(Top Down)的设计方法,分为三个层次,即行为描述、RTL方式描述、逻辑综合,系统设计过程如图1所示。
图1 系统设计过程
系统的程序采用模块化设计,底层为各功能模块,SPWM产生模块、检测模块、显示通讯模块,顶层采用原理图对各功能模块的组合。FPGA内部结构如图2所示。
图2 FPGA内部结构图
本系统首先通过MATLAB软件建立正弦表,装入FPGA,然后通过程序来查表调用。MOSFET的开启和关断,需要设置死区时间,在设计中可取值为20~230。具体算法流程图如图3所示。
图3 SPWM算法流程图
要实现闭环控制需要借助于AD转换芯片,其采样控制状态转移图如图4所示。START是转换启动信号,一个正脉冲过后A/D开始转换;ALE是3位通道选择地址(ADD、CADDB、ADDA)信号锁存信号。当模拟量送至某一输入端时,由3位地址信号选择,而地址信号由ALE锁存;EOC是转换情况状态信号,当启动转换为100us后,EOC产生一个负脉冲,以示转换结束;EOC的上升沿后,且输出使能信号ENABLE为高电平,则控制打开三态缓冲器,把转换好的8位数据送至FPGA的数据总线,完成一次转换。
图4 采样控制状态转移图
LED用于SPWM的输出频率、电网检测及其故障信息的的指示。具体程序流程图如下图5所示。
图5 LED动态显示流程图
2. 实验结果分析
QuartusⅡ软件自带仿真工具所截取的单极性脉宽调制波形仿真图如下图6所示。
图6 脉宽调制波形仿真图
以下是60MHz的数字存储示波器Tektronix TDS1002拍摄得到实际波形。控制器端口输出的实际波形如图7所示。
图7 控制器端口输出波形
逆变器阻性负载输出波形如图8所示(负载为36Ω电阻丝)。
图8 阻性负载波形 逆变器通过RC一级滤波后,电容两端得到的正弦信号如图9所示。 图9 RC滤波后输出的正弦信号 3. 结论 本文利用FPGA(EP1C3T144C8)实现了PWM控制器的设计,得到了实验波形。实验结果验证了本设计是可行的,其设计方法、设计思路具有一定的参考价值。 |