APP下载

基于实时仿真平台的DSP技术研究

2016-05-14宗胜旺

现代电子技术 2016年5期

宗胜旺

摘 要: 在实时仿真技术为电力电子技术研究的重要课题之一的背景下,以DSP 作为控制器,FPGA 为仿真器实现目标实时仿真平台。针对DSP传统和模型化两种开发方式,提出基于Matlab/Simulink 和Embedded Coder 的控制器算法开发方法。在实时仿真平台上,设计并实现两电平三相逆变电路、三电平三相逆变电路、单相逆变电压瞬时值反馈电路的实时仿真。根据平台仿真结果可知,模型化开发方式可以缩短控制器算法开发周期、提高开发效率、降低开发风险。

关键词: 实时仿真; DSP; 模型化开发; FPGA仿真器

中图分类号: TN919?34; TM417 文献标识码: A 文章编号: 1004?373X(2016)05?0155?06

0 引 言

电力电子技术是利用功率半导体器件的开关作用控制电功率的流动,实现对电能进行变换或控制的技术。数字仿真是电力电子系统设计研究的一种基本手段,可分为非实时仿真和实时仿真两类[1]。相对非实时仿真,实时仿真可节省开发费用、缩短开发周期,提高系统开发的可靠性和安全性。本文主要研究实时仿真系统,实时仿真平台主要包含FPGA仿真器和DSP 控制器两大部分。

DSP 控制器主要有传统式和模型化两种开发方式。传统开发方式编程过程费时耗力,对控制器算法的高效开发构成局限。而如图1所示基于模型的设计方法则打破了手工编程的局限性,大大提高了算法的可移植性。因此本文提出基于Simulink/Embedded Coder 的DSP 控制器算法设计方法和开发流程。在Simulink 环境下,用C281x等模块库中的模块设计控制算法模型,基于Embedded Coder 代码生成机制自动生成代码、编译链接、下载至DSP运行。

模型的DSP开发方式,使得模型参数设置直观简便,大大降低了DSP的开发难度。在Simulink环境中实现整个开发流程,增强控制算法的可控性和能观性。控制对象由FPGA仿真器实时仿真,使DSP控制器等同于连接到实际装置中,减少开发风险。DSP控制器与FPGA仿真器都采用模型化开发方式,可方便、高效地实现电力电子系统的离线、实时仿真以及DSP控制器的设计、开发和验证。

1 实时仿真平台设计

1.1 系统构架

实时仿真平台硬件架构如图2所示,包含Host计算机、DSP控制器、FPGA仿真板卡和I/O箱。

Host计算机用于电力系统建模,本文采用的建模软件是Matlab R2012b的Simulink软件及其所包含的SimPowerSystem工具箱。FPGA仿真板卡采用Xilin公司的ML605开发板,通过SoPC的方式将仿真求解器IP核、PCIe接口、PWM输入接口、Aurora高速串行接口等资源集成在一起。DSP控制器采用TI公司推出的TMS320F2812,产生PWM控制信号,驱动逆变器上的IGBT器件。I/O机箱可以将仿真结果转换成模拟量输出供示波器显示,也可以和外界物理设备进行交互。综合考虑性能和价格因素,本平台选择了大道科技公司的QQ2812开发板为DSP 开发板。

1.2 DSP控制器

TMS320F2812是一款用于控制的32位定点DSP芯片,兼容F2407的指令系统,最高可以在150 MHz主频下工作。该控制器由内核和片内外设两部分组成,其中片内外设主要包括:两个事件管理器(EVA和EVB),16 路12位精度的ADC,1路SPI,2路SCI通信接口(SCIA 和SCIB),1 路CAN、外部中断接口等,如图3所示。

每个281x 处理器都包含两个事件管理(Event Manager,EV)。每个事件管理器包含两个通用定时器(GP)、比较器、PWM 单元、捕获单元、正交编码脉冲电路(QEP)以及中断逻辑电路。

1.3 PWM控制技术

软件生成SPWM 波的方法主要有三种[2]:自然采样法、不对称规则采样法和对称规则采样法。基于对称规则采样法的数据处理量是三种采样法中最少,且效果较好的方法。本文确定用对称规则采样。

1.4 实时仿真实现流程

根据实时仿真系统的硬件架构,整个实时仿真实现的流程图如图4所示。对被仿真对象进行建模,并离线仿真,验证模型功能是否正确。如果模型功能不正确,则进行相应的修改;如果模型功能正确,性能满足要求,则对离线仿真模型进行如下两方面的处理。

(1) FPGA仿真器方面:利用Matlab脚本程序对仿真模型进行分析和参数提取。因为FPGA实现的实时仿真算法和SimPowerSystem软件实现的离线仿真算法存在一定的差异,因此利用脚本语言解析的模型参数加载到Simulink离线仿真求解器对FPGA实时仿真,并对产生的结果进行预判。

(2) DSP控制器方面:在离线仿真模型中,控制信号是根据PWM波的产生原理,由Simulink模块搭建实现的,可以通过示波器模块(Scope)显示及被控仿真电路的输出来判断控制信号是否正确。离线模型验证之后,需要在DSP硬件平台上实现控制算法。

2 DSP控制器模型化开发

2.1 开发工具

本文模型将Matlab/Simulink/Stateflow与CCS集成开发环境(IDE)和C2000微控制器完美地整合在一起。这些产品集成使开发者能够完成自动代码生成、原型设计和嵌入式系统开发。

Matlab与CCS之间的无缝连接是通过Embedded Coder中的Embedded IDE Link功能实现的,在此基础上,用户可以利用Simulink模型在TI系列DSP上调试、验证自动生成的嵌入式代码。利用RTW?EC等工具,从模型生成C代码,通过For Use with TI′s Code Composer Studio自动调用CCS 开发工具来编译链接生成的C代码,并自动下载到目标板上执行生成的代码,其具体流程如图5所示。

2.2 两电平三相SPWM 控制波形设计实现

两电平三相SPWM 控制模型如图6所示,根据逆变电路输出信号频率的要求,设置正弦调制波频率[f0=]50 Hz,载波比[N=600,]则三角载波频率[fc=30] kHz。选择Waveform period为2 500,设置Waveform type为Symmetric,使输出对称的PWM波。调制正弦波向上平移量为1 250,使中心值与三角载波对齐。设置PWM1,3,5为高有效,PWM2,4,6 为低有效。

将PWM1~6管脚接到示波器,可分析输出的波形。如图7所示,三角载波周期约为33.3 μs,与其设定的频率30 kHz 相符合。

为进一步清晰观察和验证代码产生的正确性,更改参数设置。将载波比减小至[N=30,]正弦调制波频率不变,则三角载波频率[fc=]1 500 Hz,Waveform period设置为50 000,调制正弦波偏移量为25 000,调制比仍为0.8,正弦幅值为20 000。同时对C281x PWM设置死区时间,Deadband prescaler 为32,Deadband period为10,死区时间大小为1/75×32×10=4.26 μs。同样经过自动代码生成过程后,用示波器观察运行结果。

测量显示三角载波周期约为667 μs,与设定频率相近。死区时间如图8所示约为4.28 μs,与搭建模型时的设定值(4.26 μs)相符,再次验证了DSP模型化开发方式实现SPWM 波的正确性。

2.3 三电平三相SPWM控制波形设计实现

三电平三相SPWM控制[3]算法模型如图9所示,该控制器需要运用两个C281x PWM模块。图中Sine Wave是频率为50 Hz、相位为0的正弦调制信号, Sine Wave1和Sine Wave2与Sine Wave相位分别相差[2π3]和[4π3。]载波比[N=600,]三角载波频率[fc=]30 kHz,设置Waveform period为2 500,调制比为0.8。Sine Wave 经过Saturation模块和Add模块处理后,生成分别对应Ta1,Ta3和 Ta2,Ta4的调制波信号。Sine Wave1和Sine Wave2 经过同样的处理后,分别产生B相和C相的调制信号。对模型进行离线仿真,用Scope 模块观察Ta1,Ta3 和 Ta2,Ta4 的调制波信号。

示波器测量SPWM波周期约为20 ms,三角载波周期如图10所示约为33.3 μs,与模型设置相符。

由图11可知,控制波方面,Tb1比Ta1超前约6.6 ms,Tc1比Tb1超前约6.6 ms。因SPWM波在相位上相差[2π3,]对应时间为[T3,]约为6.67 ms。由此证明,模型产生的三相SPWM波在相位关系上也是正确的。

2.4 两电平三相SVPWM控制波形设计实现

离线仿真两电平三相SVPWM控制模型如图12所示。利用creat?subsystem功能将SVPWM离线模型封装为一个模块SVPWM_offline,用该模块的输出去控制如图13所示的两电平三相逆变电路,并用Scope模块观察线电压波形。

对模型进行离线仿真,在给定输入条件下,观察到Ta,Tb,Tc对应的仿真图形是马鞍波,验证了模型的正确性。经过代码自动产生后,DSP运行输出SVPWM 波,如图14所示,设置的载波频率是30 kHz,对应图中测量的32.2 μs。期望输出电压频率是50 Hz,对应图中测得的20 ms。

为了进一步清晰地观察、分析波形规律,更改模型参数,设置Waveform period=50 000。结果如图15所示,图中①~⑨的波形时间分别为:568 μs,592 μs,600 μs,592 μs,584 μs,576 μs,600 μs,600 μs,596 μs,可见此处占空比符合马鞍波的规律与SPWM 波的变化规律(整个周期中占空比按正弦规律变化)区别很明显。由此可证明SVPWM模型产生代码的正确性。

3 实时仿真平台的整体验证

前面设计建立了两电平三相、三电平三相SPWM 控制算法模型、两电平三相SVPWM 控制算法模型,并由模型自动生成代码运行,用示波器分析并验证了产生波形的正确性。

本文利用RTDX(Real?Time Data Exchange,实时数据交换)技术,实现在不停止DSP程序运行的前提下,完成主机与目标DSP 之间的实时数据交换[4]。

3.1 两电平三相逆变电路实时仿真

图13采用了一个两电平三相逆变电路,且已经给出了部分离线仿真结果,现将该电路在实时仿真平台上进行仿真。由FPGA实时仿真,控制信号SVPWM代码自动生成模型。用示波器观察经I/O机箱输出的线电压,并与离线仿真结果对比。

如图16,图17所示,左边为离线线电压,右边为实时仿真电压,实时仿真结果与离线仿真结果相同,滤波后的线电压频率为50 Hz 的正弦信号,证明由模型自动生成的控制程序产生的SVPWM波是正确的,可以驱动逆变电路。同时也验证了FPGA仿真器实时仿真主电路的正确性。

3.2 离网光伏发电系统实时仿真

在Simulink中设计并搭建一个离网光伏发电系统[5]离线仿真模型。为方便研究,将光伏电池板用一个恒定直流源代替,三电平逆变器三相输出经RLC电路滤波后给负载供电。系统相关参数设置为:直流电源电压[Ud=]600 V,电感[L=]0.1 mH,电容[C1=C2=]1 000 μF,[C3=]200 μF,电阻[R1=R2=]0.001 Ω,[R3=10-4]Ω,[R4=]20 Ω,PWM控制器的三角载波频率[fc=]30 kHz,正弦调制波频率[f0=]50 Hz。

分别利用SimPowerSystem软件仿真工具和实时仿真平台进行了离线仿真和实时仿真,离线和实时仿真的步长均设置为2 μs。在实时仿真中,FPGA进行主电路模型的实时仿真。控制器部分采用DSP模型化开发技术,生成可执行代码运行在2812DSP芯片中,产生三相SPWM波信号。

图18~图20为实时仿真与离线仿真结果对比,左侧图为Simulink 中的离线仿真波形,右侧图为实时仿真示波器观察的波形。分析可知,实时仿真的实验结果与离线仿真的结果基本相同,验证了仿真平台中应用DSP模型化开发技术的正确性和整个实时仿真系统的正确性。

3.3 单相逆变电路闭环实时仿真

本文以一台5 VA的单相全桥逆变器电路为仿真对象,研究设计单相逆变电路电压瞬时值闭环控制的实时仿真[6]。

图21为单相全桥逆变电路电压瞬时值反馈闭环控制离线仿真模型,电路的参数设置如下:[Udc=]400 V,电感[L=0.22] mH,电容[C=20] μF,电阻[R=]4.48 Ω,PWM控制器的三角载波频率[fc=]30 kHz,参考正弦电压频率[f0=]50 Hz,峰值为220 V。输出电压经采样反馈后输入PID控制器子模型调节PI 控制器参数,使输出电压能够跟随给定正弦信号。

参考正弦信号和输出电压仿真结果如图22所示,说明闭环控制后,输出电压在相位和幅值上都能准确跟踪参考正弦信号。

在实时仿真时,DSP控制器闭环控制模型如图23所示。

选择从ADCINA0引脚输入反馈电压值,在PWM 模块参数中选择在三角载波的周期匹配时触发ADC转换。ADC转换后的输入值与参考正弦信号做差得误差信号,输入PI控制器,PI控制器的输出作为PWM模块的占空比输入。将I/O机箱输出的反馈信号与板卡相应ADC输入管脚连接,自动生成代码后,用示波器观察输出电压波形如图24所示,输出电压为50 Hz正弦信号。验证了整个实时仿真系统的正确性。

4 结 论

为改善当前电力电子数字控制器的设计现状,缩短开发周期,本文将模型化开发方式成功地运用在电力电子数字控制器(DSP)的算法开发上,所设计的两电平三相逆变器SPWM控制、两电平三相逆变器SVPWM控制、三电平三相逆变器SPWM控制、单相逆变器电压反馈闭环控制等算法,已经在电力电子实时仿真平台上实现。证明了采用模型化开发方式开发DSP控制器PWM开/闭环控制算法的高效性和正确性,同时也验证了整个电力电子实时仿真平台的正确性。

同时系统还存在一定缺陷,需要进一步研究:

(1) 在闭环控制策略上,目前只研究了单相逆变电路的电压瞬时值单环控制,且没有定量地分析控制性能,后续可以研究三相逆变电路的闭环控制和其他更先进的控制算法。

(2) 目前对RTDX的应用只进行了初步探索,后续研究可以利用Matlab的图形用户界面GUI和API函数,结合RTDX模块实现DSP的实时数据交换,设计友好的实验交互界面。

参考文献

[1] 彭冲.电力系统数字仿真技术现状及展望[J].河北电力技术,2013,32(4):23?26.

[2] 季伟.基于DSP 的SPWM 交流变压电源的设计[D].宁波:宁波大学,2012.

[3] 吴小溪.二极管钳位型三电平逆变器的研究[D].武汉:华中科技大学,2011.

[4] 许海丽,张茂青,严震宇.基于Matlab的DSP2812RTDX 实时绘制电机转速曲线[J].苏州大学学报(工科版),2012,32(5):47?50.

[5] 郭伟,宗波,乔尔敏.基于LabVIEW的大功率电力电子装置监控系统设计[J].计算机测量与控制,2012,20(10):2676?2679.

[6] 罗长春.基于DSP单相逆变器数字控制实验系统研究[D].杭州:浙江大学,2007.