Matlab的Simulink【连续模型离散化】代码自动生成C语言(简明教程)
本文详细介绍了simulink连续模型离散化,代码生成以及最终运行到VS2010
环境的详细过程,希望对大家有帮助。
第一步 打开模型
首先我们要确保模型仿真是正确的,即能够正常仿真。
第二步 将输入和需要的输出换成input和output模块。
第三步 离散化模型
如果你的模型中有连续模块,比如积分环节,那麽一定要离散化,否则即使生成C代码也会报错。
点击设置
设置求解器,采样时间。
最后点击Apply
,点击OK
。
点击Analysis
->Control Designer
->Model Discretizer
。
设置和刚才一样的采样时间,点击转换。
转换完成后的状态空间模型和积分模块。
第四步 自定义变量名称
点击Model Explorer
选择Base Workspace
,点击Add
。
名称改为你想要的变量名称,类型选择mpt.singal(其他想要输出的信号也一样)。
关闭该窗口。
右键想要输出或者输入的信号,点击Properties
。
输入刚才定义的变量名称,勾选第一项
其他信号同上。
第五步 生成C代码
剩下的全部默认就好
剩下的全部默认就好
只有这里根据你代码运行的设备进行选择,我是在64位的windows系统上测试,运行环系是VS2010
.
完成之后生成如下文件
.
第六步 在VS2010上运行
打开VS2010
点击文件
->新建
->从现有的代码中创建
选择刚才自动生成的文件夹
定义项目名称
选择控制台应用程序
然后就一直下一步,然后完成
打开ert_main.c
这个文件
可以找到一个while
循环
flush((NULL));
while (1) {
}
修改为一下代码(注意要定义整型变量i):
while (i<=2000) {r=5;System1xu_step();printf("%f", x[1]);printf("\n");i++;/* Perform other application tasks here */}
运行结果
Matlab的Simulink【连续模型离散化】代码自动生成C语言(简明教程)相关推荐
- 国产自主可控的形式化验证代码自动生成工具ModelCoder可替代Matlab/Sumlink
在安全关键领域,基于模型的软件工程或者软件开发已逐渐进入了我国的装备研制过程中.使用SimuLink或者SCADE等嵌入式软件建模工具对算法或者控制逻辑进行可视化建模,然后生成高可靠的二进制代码逐渐成 ...
- 亚马逊开源模型设计神器:AutoGluon,三行代码自动生成SOTA模型!
点击我爱计算机视觉标星,更快获取CVML新技术 本文转载自新智元. 亚马逊最近宣布推出AutoGluon,这是一个新的开源库,开发人员可以使用该库构建包含图像.文本或表格数据集的机器学习应用程序.使用 ...
- matlab找不到bma_g代码,基于矢量图形的G代码自动生成软件路径优化算法的研究
在数控雕刻技术中,数控编程是设计人员与执行人员联系的桥梁.传统的方法是由技术员从图纸中提取零件信息,结合加工工艺要求,根据数控加工程序的标准手工编制加工程序,速度较慢且精度较低.随着数控技术的发展,市 ...
- 国产自主可控的代码自动生成工具SkyEye
传统的系统开发过程,都是由工程师根据项目需求书来编写代码完成系统的开发,但随着功能的扩充和版本的迭代,系统中庞大的代码量很难确保正确无误,给后期测试和仿真带来了很大的压力和成本,在航空航天.卫星系统. ...
- 英飞凌代码生成_利用MATLAB-RTW的嵌入式代码自动生成与整合
2018 收稿日期 :2018 - 01 - 02 收修改稿日期 :2018 - 02 - 01 基金项目 : 国家自然科学基金项目 (51405270) 资助 . 作者简介 : 陈 攀 , 男 ,1 ...
- 应用在核电站DCS系统的代码自动生成工具ModelCoder
对标航空航天领域,核电新型号作为典型复杂系统在未来的发展趋势和任务变得十分明确,即正规化.标准化地应用MBSE从概念设计.初步设计.持续贯穿至详细设计.施工.调试.运维.退役的全生命周期各阶段,开发出 ...
- Mybatis最入门---代码自动生成(generatorConfig.xml配置)
[一步是咫尺,一步即天涯] 经过前文的叙述,各位看官是不是已经被Mybatis的强大功能给折服了呢?本文我们将介绍一个能够极大提升我们开发效率的插件:即代码自动生成.这里的代码自动生成包括,与数据库一 ...
- 湛蓝代码自动生成工具有感
终于有了些许时间,让我整理一下自己的思路,顺便写一下博客,开博那么久,几乎没有写过真正意义上的随笔,实在是汗颜... 书归正传,代码生成工具这个东东,自然不用我在这里解释是做什么用的了,今天我特地要介 ...
- GPT系列:Codex【使用GPT-3完成代码自动生成任务】
OpenAI Codex Evaluating Large Language Models Trained on Code 根据函数名和注释自动补全代码 根据你写的代码,猜出你接下来可能要写的代码 自 ...
最新文章
- 你所不知道的库存超限做法
- SpringBoot mybatis 输出SQL语句到控制台
- 政府大数据应用的反思;大数据分析应用常见的困难
- LabelImg 批量生成标注图片文件夹序号(起始值+终值)
- python绘图函数m_Python散点图。m的尺寸和样式
- background-position减少小图片的连接数
- 主机不支持php5.4,GoDaddy Linux主机不再支持PHP5.3版本 | Godaddy美国主机中文指南
- MySQL集群:高可用性DBMS
- linux pkill窗口,在Linux系统中pkill命令的基础,附pkill命令的使用示例
- allegro设置快捷键
- Java面向对象三大特性
- RL 实践(3)—— 悬崖漫步【QLearning Sarsa 各种变体】
- 实战|Python爬取字节跳动1W+招聘信息
- python大学生社团管理系统
- Docker - 应用镜像
- 【Python】Python实现N级台阶,一次可以走1步,2步,3步,一共多少种上楼梯方法
- livy(0.5) on zeppelin(0.8)报No YARN application is found with tag问题解决
- VM 虚拟机挂起之后,关闭虚拟机,第二天重启之后,连接不上 。静态ip设置
- 分析51啦和CNZZ统计的优缺点
- 十天小白训练营day02—古诗作业