Simulink转C代码的实现

   百度网盘:点击打开链接    密码:m2kv

 本报告为Matlab仿真框图转C代码实现说明文档。

实现步骤

1.搭建框图

 

        采用Matlab 2016b搭建仿真框图如下,命名为test.dll。

 

图 1Simulink模型

2.初始设置

        选择菜单栏Simulink->ModelConfiguration Parameters,按照下方所示设置参数,设置为固定步长,采用四阶龙格库塔方法解算微分方程,具体步长还可以在后期进行二次设置。

图 2设置求解器参数

系统的目标文件选择为ert.tlc,即采用嵌入形式的C/C++代码生成,其结构更为简洁。生成的语言可选择C或者C++。

图 3代码生成的参数设置

 

接口模块进行如下设置,需要选中continuoustime选项。至此,参数设置工作完毕,其余设置采用默认设置方式。

 

 

图 4接口参数设置

3.代码生成

 

        直接点击代码生成功能键,生成代码成功后会收到如图5所示的提示。此时,在示例文件test.mdl的目录下会出现名为slprj和test_ert_rtw的文件夹,如图6所示,包含了生成的C代码的相关文件。

 

图 5代码生成成功提示

 

图 6生成文件

4.代码应用

 

        代码可在Visual Studio2013上运行,通过文件->打开->项目/解决方案,找到test_ert_rtw\msvc目录下的test.sln文件并添加,添加成功如下所示。

图 6生成文件

        如下所示,主文件经过初始化后,在while循环中调用test_step()函数按单步执行,最后通过test_terminate终止。在带有积分环节的模型中,还可以通过找到test_M->Timing.stepSize0重新设置仿真步长。图7显示,每次给输入设置常值,经第五次调用后的输出结果。

图 7代码测试

 

 

 

   结论

采用Matlab和C混合编程,设计简单,结构清晰,修改方便,同时大大降低了编程失误带来的风险,为保证项目有效进行提供了保障。

(2)如图所示,在matlab的工作界面输入“mbuild -setup”,选择C++选项;再输入“mex -setup”,选择C++选项;接着输入deploytool命令;

图8  MATLAB飞机本体方程动态链接库转换命令界面

(3)接着会得到如下图的提示,选择Library Complier选项,进入如图所示的Complier界面,选择.NETAssembly,添加相关脚本文件,把类的名字定义为airplane(自定义),确认后选择Package按钮进行打包,即可生成相应dll文件。

图9 MATLAB飞机本体方程动态链接库转换Compiler界面

图10 MATLAB飞机本体方程动态链接库转换操作界面

(4)最后会跳出如下界面,生成的几个文件夹包含了调用到的dll文件。

图11 MATLAB飞机本体方程动态链接库转换输出界面

 

  • 14
    点赞
  • 123
    收藏
    觉得还不错? 一键收藏
  • 4
    评论
### 回答1: Simulink 是一款功能强大的建模和仿真软件,能够用于模拟和设计各种复杂系统。而 Simulink 生成 C 代码的功能,则是将 Simulink 模型化为可以在嵌入式系统中直接运行的 C 代码。 通过 Simulink 生成 C 代码,可以大大提高嵌入式系统的代码效率和可重用性。生成的 C 代码也更加易于优化和调试,并且可以通过各种常见的编译器和工具进行编译和分析。 同时,通过使用 Simulink 生成 C 代码,可以快速生成可靠的嵌入式系统,并且提高项目开发效率。这也为软件工程师提供了一种更加全面的仿真和测试工具,可以在代码编写之前进行完整的系统建模和验证。 总之,Simulink 生成 C 代码的功能为嵌入式系统开发提供了一种强大的工具,它可以提升代码效率、提高系统可靠性,减少项目开发成本和风险。因此,它是现代软件开发中的一个重要组成部分,值得广泛推广和应用。 ### 回答2: Simulink是一种用于建模和仿真动态系统的工具,它可以通过图形化编程界面进行模型的设计和实现,然后将模型换为代码或其他支持文件。Simulink生成C代码的过程需要经过多个步骤。 首先,需要确保模型已经被正确地配置和设置。这包括选择适当的Solver和模型参数,以及准备好输入和输出信号。接着,可以使用Simulink自带的Code Generation工具箱来生成C代码。该工具箱将自动地将Simulink模型换为C代码,并生成一个可执行的可执行文件。这个可执行文件可以直接在C语言编译器中进行编译和运行。 在生成C代码的过程中,需要考虑到如何调节代码的性能和规模。可以通过设置编译器选项和调整代码生成器的设置来实现。调节这些系统参数可以提高代码的速度、减少代码大小,提高代码的可读性和可维护性。 总体来说,Simulink的C代码生成器提供了一个方便、高效、精确、灵活的工具,可以帮助工程师和研究人员快速地将系统模型转换成能够直接应用于实际场景中的代码
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值