- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
通过S-Function 集成C 代码进行仿真
by :吴少风
1. 概述
S-Function 是Simulink 提供的一个模块。利用S-Function 可以整合用 代码,在Simulink
下进行仿真以及生成代码。用户代码可以用 MATLAB 、C/C++、Fortran 编写,但嵌入式软
件几乎都用C 语言编写,因此本文仅介绍用C 语言实现S-Function 模块。
Simulink 为S-Function 模块实现了主干骨架和分配数据结构,通过回调方式 (Callback
Method )留下用户编程接口 (API )。S-Function 的使用,就是按自己的需要填写指定的回调
函数。然后通过mex 命令编译成动态链接文件,在 S-Function 模块中填入名称和参数,就
可进行仿真了。
用户可以用S-Function 实现如下应用:
创建一个全新的通用模块;
添加硬件设备的驱动模块;
集成已有C 代码进行仿真;
实现用数学公式描述的系统;
使用图形动画 (MATLAB 提供一个单摆示例penddemo )。
2. S-Function 模块的实现机理
S-Function 模块作为一个对象,具有自己的属性和动作,也就是定义了自己的数据和实
现了自己的处理流程,但是具体细节由用户按需要指定。S-Function 就像出租车,用户就像
乘客,乘客告诉出租车需要去哪里,出租车就会载你到目的地。
2.1. 数据结构
每个S-Function 模块都有一个自己的SimStruct 数据结构,该数据结构存储输入输出端
口、状态变量、参数等,通过传入该结构指针参数,供回调函数使用。头文件simstruc.h 中
定义了SimStruct 数据结构,以及访问该结构的宏函数。
2.2. 处理流程
处理流程如图 1、图 2 所示。图中显示了所有回调函数的调用顺序,以及函数名称。
必须实现有:mdlInitializeSizes 、mdlInitializeSampleTimes、mdlOutputs 、mdlTerminate 四个
回调函数。
图 1 Model Initialization
图 2 Simulation Loop
3. 使用方法
用 C 代码完成 S-Function 模块共有三种途径:一,通过模板,手工填写回调函数源文
件,再编译生成可执行文件;二,通过S-Function Buider 模块,在图形界面上配置参数后点
Build 生成C 源代码文件和动态可执行文件;三,通过Legacy Code Tool,用命令行配置参
数和生成文件。这三种方法各有优缺点:手写方式需要对S-Function 非常熟悉,比较麻烦,
但是实现最全面,限制最少;图形界面简化了对S-Function 的实现,但限制更多;命令行方
式实现最方便,但限制最多。用图形界面和命令行实现简单的S-Function 模块比较方便。
3.1. 手工填写方式
首先介绍最全面的手工方式,这样可以对S-Function 有进一步的认识。下面给出一个例
子,将该段内容保存为timestwo.c 文件。
#define S_FUNCTION_NAME timestwo
#define S_FUNCTION_LEVEL 2
#include simstruc.h
st
您可能关注的文档
最近下载
- 初三数学二次根式测试题目一二.doc VIP
- 高考物理公式大全.doc VIP
- 《心肺复苏术》PPT课件ppt.pptx VIP
- 2023-2025高考英语高频词汇汇编(打印背诵版).pdf
- 5.1 社会历史的本质 课件(共34张PPT)(含音频+视频).pptx VIP
- 让蕲艾走向世界详细资料.ppt VIP
- 家政保洁企业发展规划经营计划.pptx VIP
- 局限性脑炎多学科决策模式中国专家共识(2025版).docx VIP
- 中国成人急性呼吸窘迫综合征(ARDS)诊断与非机械通气治疗指南(2023)解读PPT课件.pptx VIP
- 2023中国成人急性呼吸窘迫综合征(ARDS)诊断与非机械通气治疗指南(完整版).pdf VIP
文档评论(0)