美章网 资料文库 电子技术课程中处理器在环仿真的应用范文

电子技术课程中处理器在环仿真的应用范文

本站小编为你精心准备了电子技术课程中处理器在环仿真的应用参考范文,愿这些范文能点燃您思维的火花,激发您的写作灵感。欢迎深入阅读并收藏。

电子技术课程中处理器在环仿真的应用

摘要:为了快速验证电力电子控制系统中的控制算法,提高控制算法的效率,处理器在环测试(PIL)将生成的代码运行到目标处理器上,以验证代码和模型是否一致,并获得算法在实际控制器上的最长运行时间。本文以电力电子能量转换器三相半桥DC/AC为例,在Simulink环境下构建了离散仿真模型,让学生很快学会三相半桥DC/AC的工作原理、主回路设计以及控制系统设计,然后通过学会处理器在环仿真去验证测试软件和模型的一致性。通过相同的方法,学生很快能完成电力电子技术课程中的其他能量转换电路控制系统的设计,并在实验之前验证、分析结果,以防因控制算法设计不当在实验过程中出现损坏实验器件的现象。

关键词:电力电子技术;处理器在环仿真;课程教学

引言

用户通过Matlab软件,采用基于模型设计的方法进行建模仿真,来学习电力电子转换器的工作原理,进行对主回路以及控制系统的设计[1]。利用Matlab中Simulink工具进行模型设计,然后将设计好的控制模型模块运用目标代码直接生成功能,转换为数字程序,再联合CCS进行联合仿真对控制模型进行验证,最后将联合仿真验证正确的控制算法程序下载到平台的DSP芯片中,再次验证所设计的电路及控制算法的正确性[2-3]。将Matlab软件与CCS软件成功安装之后,在Matlab/Simulink环境下搭建目标代码直接生成模型之前,需要下载C2000系列的硬件支持包;对模型进行编译生成工程文件和烧录文件之前,需要将Matlab软件与CCS软件进行链接,使Matlab在编译过程中能顺利调用CCS软件,以便于生成工程文件和烧录文件[4]。

1离散仿真模型的搭建

在Matlab/Simulink中搭建三相半桥DC/AC的仿真模型[5-6],其中仿真模型中主电路模型如图1所示。PIL仿真模型如图2所示,其中Controller模块是电流内环闭环控制器;RateTransition为采样频率转换器,由于DSP芯片控制频率与Matlab仿真步长频率不一致,在做PIL仿真时需要对仿真频率进行转换,RateTransition1为输入侧,设置的数值由做PIL仿真时DSP芯片所需控制频率决定,若DSP控制频率为10K,则该模块的设置值为1e-4,该值的设置决定了在PIL仿真时单位时间内DSP执行生成代码的频率;RateTransition2为输出侧,设置的数值由模型的仿真步长决定,其设置值应与仿真步长相同;数据转换模块Single和Double是Matlab/Simulink和DSP芯片进行数据交换的纽带,在Simulink环境下,存储数据和计算数据一般都为Double类型,而Matlab与DSP芯片进行通讯时,传输数据的位宽要求不高于32位,因此从Matlab输入的数据必须由Double类型转换成Single类型,从模块输出到Matlab的数据由Single类型转换到Double类型,两者在进行数据交换时需要进行数据转换才能保证PIL仿真的正常运行[7-12]。打开图2中的Controller模块,其搭建的控制策略的模型如图3所示。为了实现了逆变器的控制,需要研究合适的控制算法,图3中电流内环模型的搭建如图4所示。通过Park变换将所测的逆变器侧电流由三相静止坐标下的交流量变为同步旋转坐标下的直流量,再通过PI控制器构成的负反馈系统实现对Id和Iq的控制。将Id_ref的大小设置为0.7A,进行仿真,得到Iabc的波形如下所示,电流幅值最终稳定在0.7A左右。如图5所示。其仿真结果实现了对三相半桥DC/AC仿真搭建的验证。

2处理器在环(PIL)仿真

所谓处理器在环(PIL)仿真,就是基于模型的设计而自动生成的C代码,可以将其直接下载至控制板中运行。为了进一步验证基于模型的设计而自动生成的代码的可行性,可以通过Matlab和DSP控制器间的联合仿真进行处理器在环测试,在该测试中,除了控制器是实物,其它均为虚拟硬件[13-16],这是对系统的一种半实物仿真。利用上节所搭建的三相半桥DC/AC的仿真模型来做处理器在环仿真,以验证所设计的控制策略的正确性,以及处理器在环仿真的可行性。其处理器在环仿真步骤如下:(1)将USB转TTL通讯模块与DSP板进行连接,并在电脑设备管理器上查看通讯口为COM几,并在属性中设置波特率;(2)在Matlab命令栏中输入命令,串口号根据设备管理器中的查看得到的串口一致;(3)配置Configuration中的Solver,其中Fixed-stepsize的设置根据仿真步长决定;(4)配置Hardwareimplementation,其中CCSconfiguration根据自己的配置文件所在路径进行设置,不要使用默认选项,否则程序有可能出现下载不成功的现象。将Groups中的Externalmode界面中参数进行配置,注意COM串口要与步骤(1)中查看的COM口一致;(5)配置Verification参数,将Advancedpa-rameters的Createblock选择为PIL;(6)将想要生成代码的控制算法封装成一个子系统,如图6所示,搭建的仿真模型中的Controller。(7)右键子系统模块,点击C/C++Code中的DeploythisSubsystemtoHardware,再点击跳出窗口里的Build,会在新的窗口里生成PIL模型;(8)将生成的PIL模块移植至原来搭建的离散模型中,替换被生成代码的子系统;(9)将电脑和DSP芯片的下载线和通讯模块连接好,将DSP板通电,点击仿真按钮即可进行PIL仿真,在PIL仿真中换流器的输出电流的波形如图7所示。由图7可知,换流器输出电流的幅值也控制为0.7A,其整体波形也与之前Simulink仿真波形一致,证明了DSP中的算法能够实现闭环控制,生成的代码没有错误。

3结论

控制算法的实现需要编写相关代码,然后下载至相关控制器中实现相应功能。手编控制代码不仅费时和容易出错,而且不便于校验和维护。Matlab为嵌入式处理器应用程序的开发提供了强大的功能,利用MathWorks公司和TI公司联合开发的MATLABLinkforCCSDevelopmentTools工具箱,可以实现对DSP芯片的可视化编程,像操作Matlab变量一样来操作DSP器件的存储器和寄存器,使得用户在Matlab环境下完成对DSP的操作,能够极大提高DSP应用系统的开发进程。本文以电力电子能量转换器三相半桥DC/AC为例,在Simulink环境下构建了离散仿真模型,利用处理器在环仿真将生成的代码运行到目标处理器上,以验证代码和模型是否一致,仿真结果正确良好,验证了所搭建的三相半桥DC/AC模型与所生成的代码一致性。因此可以通过相同的方法,学生很快能完成电力电子技术课程中的其他能量转换电路控制系统的设计,并在实验之前验证、分析结果,以防因控制算法设计不当在实验过程中出现损坏实验器件的现象。

参考文献

[1]黄忠霖.电力电子技术的MATLAB实践[M].北京:国防工业出版社.2009.

[2]钱振天,徐晓轶,谌平平,姚文熙.基于Matlab/Simulink的软件在环仿真技术研究[J].电力电子技术,2016,50(10):5-7.

[3]渠博岗,易映萍.基于CCS与MATLAB/Simulink联合仿真平台的构建与实现[J].电子技术应用,2016,42(04):106-110.

[4]张雄伟,陈亮,曹铁.DSP芯片的原理与开发应用(第3版)[M].北京:电子工业出版社.2009.

[5]雒明世,张倩琳.基于MATLAB的OFDM系统仿真与教学研究[J].软件,2015,36(6):152-157.

[6]王巧明,李中健,姜达郁.Matlab平台DSP自动代码生成技术研究[J].现代电子技术,2012,35(14):11-13.

[7]何舜,张建文,蔡旭.风电变流器的RT-LAB硬件在环仿真系统设计与实现[J].电力系统保护与控制,2013,41(23):43-48.

[8]李艳.基于Matlab-GUI单相全控桥整流电路仿真设计[J].软件,2012,33(8):84-85.

[9]徐安平.基于电流的电机驱动系统逆变器故障检测方法研究[D].电子科技大学,2015.

[10]李拓,杜庆楠.基于TMS320F28335的三相感应电机矢量控制系统的研究[J].软件,2018,39(3):130-135.

[11]陈鹏伟,刘向军,刘洋.基于Simulink的无刷直流电机自抗扰控制系统的仿真[J].软件,2012,33(9):81-84.

[12]郭元彭,卢子广,杨达亮.基于DSP代码自动生成的实时控制平台[J].电力电子技术,2010,44(10):65-67.

[13]宋璐雯.基于DSP平台的JPEG2000EBCOT-Tier2算法实现及优化[J].软件,2018,39(5):139-143.

[14]林渭勋.现代电力电子技术[M].北京:机械工业出版社,2006.

[15]李献,骆志伟.精通MATLAB/Simulink系统仿真[M].北京:清华大学出版社,2015.

[16]刘和平.DSP原理及电机控制应用[M].北京:北京航空航天大学出版社.2006.

作者:易映萍 侯文 蒋玲 谢明 单位:上海理工大学机械工程学院