主要内容

为模型生成C代码

从Simulink生成C或C ++代码万博1manbetx®模型,州流®图表和matlab®功能,使用万博1manbetxSimulink Coder™产品。使用所生成的代码在仿真加速度,快速原型设计和硬件循环(HIL)模拟等应用中。

如果你是新的万博1manbetxSimulink编码器或者您的应用程序代码自定义要求是最小的,您可以使用图形工具和默认模型配置设置来快速生成代码。

生成和审阅代码可以像准备使用快速入门工具的代码生成模型一样简单。然后,使用从Simulink编辑器访问的代码工具,可以配置数据接口,启动代码生成,并验万博1manbetx证生成的代码。

本教程使用示例模型RTWDEMO_SECONDorDordersystem.

通过在命令窗口中输入型号名称打开模型。

RTWDEMO_SECONDorDordersystem.

该模型实现了一种称为理想的质量弹簧阻尼系统的二阶体系。获得块表示系统方程的组件:弥撒刚性,和减震。系统的等式是MX.“+CX.'+kx.=FT.

  • m=系统质量(1.0E-6千克)

  • C=阻尼比率(4.0e-4 ns / m)

  • K.=弹簧刚度(1.0 n / m)

  • FT.)=在X方向上强制函数(n)

一个信号发生器块注入方波形,幅度为4和20Hz的频率。该块使用模拟时间作为波形时间变量的值源。因为模型配置有一个固定步骤求解器,所以代码生成需要,所以Simulink使用整个仿真的相同步长。万博1manbetx一致的步长提供了理想波形的均匀采样表示。

示例模型显示了如何使用Matlab功能块将现有的MATLAB函数代码集成到可以生成嵌入式C代码的SIMULINK模型中。万博1manbetx示例模型中的MATLAB功能块集成了计算组件变量之和的MATLAB函数。

积分商阻止与时间的MATLAB函数块输出的数量。求解器通过使用当前输入值和先前的时间步骤的状态来计算当前时间步骤的积分器块的输出。为了支万博1manbetx持该计算模型,Integrator块在当前时间步骤保存其输出,以便由求解器在下一次步骤中计算其输出。该块还提供具有初始条件的求解器,用于在模拟开始时计算块的初始状态。默认的初始条件和此示例模型的设置为0。

仪表板块,旋钮仪表板范围,提供可视化工具,用于调整阻尼并监控波形。该旋钮块连接到减震获得块。该仪表板范围块连接到信号力量:F(T):1X

使用此模型来学习如何:

  1. 通过使用使用代码万博1manbetxSimulink编码器快速启动工具。

  2. 验证生成的可执行程序结果是否匹配仿真结果。

  3. 在程序执行期间调整参数。

  4. 部署原型代码和工件。

开始教程,看使用Simulink编码器快速启动工具生成C代码万博1manbetx