以MATLAB2019B为例,前置软件:CCS9.1、C2000 simulink、MINGW-64 C/C++
首先通过simulink创立一个简单的模型,这里以一个单位质量单自由度有阻尼的弹簧系统在正弦激励下的仿真框图;其数学模型为
![]()
为了得到仿真框图,将数学模型改为
.
设定参数m=1,c=4,k=40,且输出位移用一个示波器来表示。其框图如图所示:

图1.1 弹簧系统仿真框图
自动生产代码步骤:
敲击Ctrl+e,出现如下设置界面:

图1.2 Configuration Parameters对话框
首先在Solver中,要选择“Fixed-step”,另外,Fixed-step size和模型中的采样数据应一致;

图1.3 设置Fixed-step
在“Hardware Implementation”中,选择相应的“Device vendor”

图1.4 设置Device vendor
在“Code Generation”中,设置如下图所示,主要用于生成C/C++代码(本例中生成C++代码):

图1.5 设置grt.tlc
在“Code Placement”中,设置如下图所示:

图1.6 设置Code Placement
另外,对Report以及Comments等做些相应设计,主要是用来优化和方便查看

图1.7 设置Report
打开simulin界面APPS,下拉界面:选择Embedded Coder,在随后的的界面中选择Quick Start


图1.8 选择Quick Start
随后在引导中一步步往下设置:

图1.9

图1.10

图1.11

图1.12

图1.13

图1.14

图1.15

图1.16
此时会报错,即文夹路径不对:

图1.17
只需在桌面新建一个文件夹专门储存即可,同时将matlab中的工作路径改到桌面的文件夹并且将所创建的模型保存到新建文件夹即可:
![]()
图1.18
可得到正确结果:

图1.19
可查看生产代码文件:

图1.20
本文详细介绍了如何使用MATLAB 2019B创建一个单位质量弹簧系统模型,设置Fixed-step solver,选择C/C++代码生成,并解决代码路径问题。从创建模型到生成并调试自动生产的C++代码,一步步详解操作过程。
2113

被折叠的 条评论
为什么被折叠?



