逆变器系统是典型的相互依赖、错综复杂的混杂系统[6],传统的DSP系统的代码编程费时费工、效率低。Mathworks公司和TI公司联合推出TSP工具,使得在Simulink环境下即可进行嵌入式系统建模、仿真、代码生成及调试工作,大大提高了工程开发效率。本文在逆变器系统上实现代码自动生成。
1 代码生成技术
代码自动生成技术是指用特定的软件(MATLAB)或者软件中特定的工具箱,建立目标代码的系统仿真模型,并根据特定的目标配置自动生成嵌入式系统应用程序[7-8]。
Embedded Coder是MathWorks公司提供给Simulink用户针对嵌入式系统开发的强有力的工具。TSP TI C2000(Embedded Coder Target Support Package for Texas Instruments C2000 Processors)工具箱由TI公司和MathWorks公司联合开发,可与TI公司的CCS(Coder Composer Studio)集成开发环境(IDE)无缝对接,是针对基于C2000系列DSP嵌入式系统开发的工具箱[9-10]。该工具箱提供了DSP外围资源一对一的接口模块,可以将系统模型转换为可优化的、可移植的、自定义的产品级嵌入式C代码[11-12]。将模型的信号源和信号接收部分模块替换成I/O端口,由软件提供的系统.tlc文件负责统筹调用代码生成的整个过程,根据目标配置自动生成系统应用程序。
应用代码生成技术不需要逐句逐行的编写模型仿真所需要代码,并较容易进行相应的调试。与传统设计方法相比,明显具有开发周期短、费用低、效率高等特点。
2 基于代码生成技术的开发流程
首先根据需求确定系统设计标准,在Simulink平台中根据设计思路建立系统仿真模型;其次,根据系统设计要求设置模型参数及仿真环境,并植入相应的智能算法,完成配置工作后进行模型仿真,在仿真过程中实时观测仿真结果。如若仿真结果与预计结果有偏差,则及时完善仿真模型或参数设置并进行反复修正,直至仿真结果与理论结果吻合。仿真完成后对Simulink模型进行目标环境配置,设置系统文件及硬件调试环境,编译代码生成模型,生成代码执行文件(.out),连接硬件调试板,下载执行文件,运行程序,观察并测试系统参数。其开发流程如图1所示。
3 三电平逆变器
三电平逆变器是常见的电力电子电路拓扑结构,由以两电平变换器的一个桥臂为基本开关单元经过串并联拓扑而成[13],基本开关单元为图2结构,此电路只输出两种电平,通过此基本开关单元的串联或并联的形式加以组合,以达到输出端输出多于两个电压等级的电压值。可构成如图3所示的三电平逆变器的单相桥臂,3个同样的桥臂并联再与直流电源等必要器件相结合,即可得到三电平全桥逆变器结构。
对桥臂上的IGBT按调制算法规律进行有序的控制,使IGBT按照固有的规律工作,即可输出三电平全桥交流电压波。其调制算法如图4所示,正半轴载波和调制波生成互补的两列触发脉冲,分别触发VT1和VT3;负半轴载波和调制波生成互补的两列触发脉冲,分别触发VT2和VT4。VT1和VT2的控制脉冲p1和p2如图5所示。输出线电压Uab如图6所示,与传统两电平逆变器相比,三电平逆变器功率管的耐压、容量提高了一倍,降低了输出线电压的du/dt,波形得到明显改善,对比与两电平线电压更趋近于正弦波。
4 三电平PWM代码生成
三电平PWM为12路触发脉冲,如若在CCS中逐句逐行编写程序,则是非常庞大的任务量,而且在编程过程中不可避免地会出现错误,需要不停地修改和测试代码,需花费大量的人力。为节约人力和时间,减少出错率,提高开发效率,利用自动代码生成技术来生成三电平PWM控制脉冲。建立三电平PWM自动代码生成模型如图7所示。
TSP工具箱中只提供DSP的外围接口,需要利用Simulink的其他工具搭建三电平PWM模型,再由TSP中的Digital Output模块定义输出端口[14-15]。其中PWM模块来自Simulink>Power Systems>SpecializedTechnology>Control&Measurements>Pulse&Signal Generators,此模块为三电平PWM输出模块,设置频率、相位、采样周期等参数,使逆变输出电压为50 Hz。三电平PWM输出有12路脉冲,而每个Digital Output模块只提供8个GPIO接口,需要用Demux和Mux模块组合,用两个Digital Output模块输出脉冲。图7中OUT1模块GPIO0~GPIO7设置使用,OUT2模块GPIO8~GPIO11设置使用,如图8所示,共12路脉冲,控制IGBT工作。
模型建立成功后,设置目标环境。打开Simulation>Model Configuration Parameter环境配置,在Solver中设置仿真环境为离散环境,Hardware Implementation>Hardware board设置TI Delfino F2833x目标板,在Code Generation>System target file设置ert.tlc系统文件,Toolchain选择CCS开发环境TI CCSV6 C2000,Interface>Code replacement library设置为TI C28x。代码优化Code Placement>File packaging format设置为Compact,可优化生成代码的逻辑结构,提高代码的可读性。
以上建模及目标环境配置完成后,按Ctrl+B组合快捷键编译模型,或者在模型工具栏中找到编译工具点击编辑模型,如若模型设计及环境配置无误,即可生成.out执行文件,此文件可由CCS下载到DSP中运行。
从整个设计过程来看,DSP开发人员只需在MATLAB中进行Simulink模型设计、构建、仿真及目标环境配置,替代了编写、调试DSP代码的复杂过程,减低了出错率,提高了工作效率。
5 系统测试
本文设计了以TI公司的TMS320F28335为主控芯片的逆变器系统,系统由PC、电源、电源扩展模块、光电隔离模块、核心控制模块、逆变模块等组成。该系统中逆变器结构可从两电平—三电平的结构拓扑,并可以提供逆变器结构性故障全模式,可进行逆变器智能控制及故障诊断技术的研究。
连接各模块组建实验系统,所有硬件电路接电等待开启。将自动生成的三电平PWM可执行.out文件下载到DSP芯片并运行,开启所有电路电源开关,观测脉冲信号和逆变器输出线电压波形。观测到VT1和VT2的控制脉冲波形如图9所示,与图5仿真结果吻合。
示波器显示波形如图10所示。对比图10与图6,可看出示波器波形与仿真结果完全吻合。
6 结论
针对工作在高频状态下的典型混杂系统——逆变器系统的智能控制及故障诊断的DSP代码开发周期长、效率低、实现比较繁琐的问题,提出基于代码生成技术实现的方法。介绍了代码生成技术及其开发流程,并以三电平PWM代码生成为例展开说明,最后在逆变器实物系统中实现三电平PWM代码的调试。结果证明,该方法简单实用、开发周期短、错误率低、效率有明显提高。为逆变器智能控制及故障检测与诊断算法实践验证提供了方便,具有很高的实用价值。
-
逆变器
+关注
关注
283文章
4717浏览量
206769 -
风力发电系统
+关注
关注
1文章
22浏览量
8730 -
三电平逆变器
+关注
关注
1文章
34浏览量
9679 -
代码生成技术
+关注
关注
0文章
1浏览量
906 -
三电平pwm代码
+关注
关注
0文章
1浏览量
902
原文标题:【论文精选】基于DSP的逆变器系统代码生成方法及实现
文章出处:【微信号:ChinaAET,微信公众号:电子技术应用ChinaAET】欢迎添加关注!文章转载请注明出处。
发布评论请先 登录
相关推荐
评论