zl程序教程

您现在的位置是:首页 >  其它

当前栏目

Simulink与TMS320F28027联合仿真

仿真 联合 simulink
2023-09-11 14:14:48 时间

作者:Chapter 1
链接:https://zhuanlan.zhihu.com/p/32740891
来源:知乎
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。
 

        德州仪器的TMS320F28027具有4个EPWM模块,可以有8路PWM输出,主频60MHz,LQFP48封装,成本低,国内外有很多电源产品拿F28027做控制器。通过联合仿真可以实现Simulink模型到F28027硬件程序的一步转换。本期笔者测试了F28027与Simulink联合仿真的功能,把过程和结果分享给大家。

        软件环境:MatlabR2017b,CCS 6.0.1.00040 ,controlSUITE 3.4.7,Texas Instruments C2000 Ware 1_00_03_00。

硬件环境:TMS320F28027 LaunchPad

步骤:

        STEP1,打开matlab2017b,点击获取硬件支持包,如图1。安装“Embedded Coder Support Package for Texas Instruments C2000 Processors“,如图2。

图1

图2

        STEP2,选择要联合仿真的硬件并点击Next,如图3。按照要求安装CCS,controlSUITE,C2000WARE,MATLAB会自动检测有没有安装相应的软件,如果软件都已安装完成,提示如图4(版本可能略微不同)。然后一直点击Next直到安装完成。

图3

图4

        STEP3,进行Simlink与F28027联合仿真。打开MATLAB R2017b,选择附加功能管理,如图5。右键“Embedded Coder Support Package for Texas Instruments C2000 Processors”点击打开文档,如图6。点击图7红框“串行外部模式下参数整定与信号记录”中的Open Model。貌似只有这一个示例模型可以使Simulink与F28027联合仿真。

图5

图6

图7

        STEP4,设置simulink模型,点击OpenModel,Simulink界面如图8。选择仿真参数设定(simulink窗口上方的齿轮,模型参数配置)并按图9所示设定参数,Hardwareboard选择F2802x(boost from flash),串口波特率设定合适值(经笔者测试F28027launchpad可以工作在波特率支持上限921600),注意SCI_A中波特率需和设备管理器中波特率一致。

图8

图9

        STEP5,硬件设置,F28027lauchpad连接电脑后,在设备管理器中找到lauchpad对应的串口号,如图10,笔者串口号为COM2。回到模型参数设置,选择与设备管理器相对应的COM口,如图11。Lauchpad上的拨码开关位置如图12所示.

图10

图11

图12,LunchPad拨码开关位置

        STEP6,点击运行,仿真结果和用户界面如图13所示。我自己写的ADC测试程序及仿真结果如图14图15所示,仿真结果中上部分波形为计算输出信号波形,下部分波形为ADC开路测试到的工频信号波形。

图13

图14

图15

总结

        串口波特率921600情况下ADC1kHz的采样数据可以正常上传,波特率太低,可能无法实时上传完所有数据而出现数据丢失,表现为SCOPE显示波形不连续。

        Simulink可以实现一键编译并下载到F28027 FLASH,但是编译时间较长,上图简单的模型的编译加下载仿真大概需要1分钟。

        Simulink对F28027的支持还有PWM模块、DI、DO、SCI、SPI、IIC、IQmath等模块,应该可以实现大部分以往需要CCS编程可以完成的功能。

        联合仿真中的模型貌似只支持Simulink Library 中的Discrete Block。

        笔者第一次写专栏,有错误还请指正。转载请注明出处,谢谢合作。