Download presentation
Presentation is loading. Please wait.
1
S-函数 S-函数介绍(为什么要引入S-Function?) S-函数的分类 S-函数的使用(实例演习)
S Function的写法 (Simulink里使用 S 函数) 主讲: math(Matlab中文论坛管理员) S-函数 S-函数介绍(为什么要引入S-Function?) S-函数的分类 S-函数的使用(实例演习) 版权申明:视频归原创作者跟Matlab中文论坛所有,可以在Matlab中文论坛下载或者观看,请勿转载! ! Matlab&Simulink为美国mathworks公司注册商标!版权归mathworks公司所有!
2
为什么要引进S-函数? S Function的写法 (Simulink里使用 S 函数) 主讲: math(Matlab中文论坛管理员)
1, Simulink里自带的Block够用么? 2, 如何跟其他硬件有效结合? 3,如果速度不够快怎么办? 4,如何使用现成的开源代码? ………………… 版权申明:视频归原创作者跟Matlab中文论坛所有,可以在Matlab中文论坛下载或者观看,请勿转载! ! Matlab&Simulink为美国mathworks公司注册商标!版权归mathworks公司所有!
3
S-函数具备什么特征(1/3) ? Simulink 是如何工作的(Simulink与Matlab的本质不同?) 总结:
S Function的写法 (Simulink里使用 S 函数) 主讲: math(Matlab中文论坛管理员) S-函数具备什么特征(1/3) ? Simulink 是如何工作的(Simulink与Matlab的本质不同?) 总结: Simulink的工作原理就是不停更新系统状态的过程,这个系统可以是连续的,可以使离散的,也可以使混合体。 版权申明:视频归原创作者跟Matlab中文论坛所有,可以在Matlab中文论坛下载或者观看,请勿转载! ! Matlab&Simulink为美国mathworks公司注册商标!版权归mathworks公司所有!
4
如何把S函数放进去? S Function的写法 (Simulink里使用 S 函数) 主讲: math(Matlab中文论坛管理员)
一个S函数必须包含必要的callback (子函数), 做: 1.1 初始化(Initialization ) 1.2 计算步长(非必须) 1.3 计算系统的输出 1.4 更新系统状态 1.5 与系统其他模块整合 版权申明:视频归原创作者跟Matlab中文论坛所有,可以在Matlab中文论坛下载或者观看,请勿转载! ! Matlab&Simulink为美国mathworks公司注册商标!版权归mathworks公司所有!
5
S-函数具备什么特征(3/3) ? S Function的写法 (Simulink里使用 S 函数)
主讲: math(Matlab中文论坛管理员) S-函数具备什么特征(3/3) ? 1: 参数传递, S-函数如何跟系统其他Block交换参数? Direct Feedthrough (S输入参数直接跟输入相关) Dynamically Sized Arrays (S输入的参赛可变) 2:时间设置,S-函数如何与Simulations的时间配合起来? Continuous sample time (连续系统,微小步长) Continuous, but fixed in minor time step sample time (连续系统,非自定义步长) Discrete sample time (自定义步长) Variable sample time (可变步长) Inherited sample time (遗传其他block) 版权申明:视频归原创作者跟Matlab中文论坛所有,可以在Matlab中文论坛下载或者观看,请勿转载! ! Matlab&Simulink为美国mathworks公司注册商标!版权归mathworks公司所有!
6
S-函数分类(1/2) S Function的写法 (Simulink里使用 S 函数) 主讲: math(Matlab中文论坛管理员)
M-file S-函数 通过function handles实现 MEX-file S-函数 C, C++, Ada, Fortran;S-function API 实现 优点: 简单,容易上手 可以调用Matlab里的工具箱 缺点: 比较慢 不太适合硬件开发 优点: 速度快 可以调用任何开源代码 适合硬件开发 缺点: 对初学者比较难 版权申明:视频归原创作者跟Matlab中文论坛所有,可以在Matlab中文论坛下载或者观看,请勿转载! ! Matlab&Simulink为美国mathworks公司注册商标!版权归mathworks公司所有!
7
S-函数分类(2/2) A Level-1 M-file S-function A Level-2 M-file S-function
S Function的写法 (Simulink里使用 S 函数) 主讲: math(Matlab中文论坛管理员) S-函数分类(2/2) A Level-1 M-file S-function matlabroot/toolbox/simulink/blocks/sfuntmpl.m A Level-2 M-file S-function matlabroot/toolbox/simulink/blocks/msfuntmpl_basic.m A hand-written C MEX S-function(推荐) matlabroot/simulink/src/sfuntmpl_doc.c The S-Function Builder (新手) The Legacy Code Tool 版权申明:视频归原创作者跟Matlab中文论坛所有,可以在Matlab中文论坛下载或者观看,请勿转载! ! Matlab&Simulink为美国mathworks公司注册商标!版权归mathworks公司所有!
8
S-函数的例子: S Function的写法 (Simulink里使用 S 函数) 主讲: math(Matlab中文论坛管理员)
版权申明:视频归原创作者跟Matlab中文论坛所有,可以在Matlab中文论坛下载或者观看,请勿转载! ! Matlab&Simulink为美国mathworks公司注册商标!版权归mathworks公司所有!
9
实例操作:M-File S-函数 S Function的写法 (Simulink里使用 S 函数)
主讲: math(Matlab中文论坛管理员) 实例操作:M-File S-函数 版权申明:视频归原创作者跟Matlab中文论坛所有,可以在Matlab中文论坛下载或者观看,请勿转载! ! Matlab&Simulink为美国mathworks公司注册商标!版权归mathworks公司所有!
10
实例操作:C-File S-函数 S Function的写法 (Simulink里使用 S 函数)
主讲: math(Matlab中文论坛管理员) 实例操作:C-File S-函数 版权申明:视频归原创作者跟Matlab中文论坛所有,可以在Matlab中文论坛下载或者观看,请勿转载! ! Matlab&Simulink为美国mathworks公司注册商标!版权归mathworks公司所有!
11
实例操作:C++-File S-函数 S Function的写法 (Simulink里使用 S 函数)
主讲: math(Matlab中文论坛管理员) 实例操作:C++-File S-函数 版权申明:视频归原创作者跟Matlab中文论坛所有,可以在Matlab中文论坛下载或者观看,请勿转载! ! Matlab&Simulink为美国mathworks公司注册商标!版权归mathworks公司所有!
12
实例操作:Ada S-函数 S Function的写法 (Simulink里使用 S 函数) 主讲: math(Matlab中文论坛管理员)
版权申明:视频归原创作者跟Matlab中文论坛所有,可以在Matlab中文论坛下载或者观看,请勿转载! ! Matlab&Simulink为美国mathworks公司注册商标!版权归mathworks公司所有!
13
实例操作:Fortran S-函数 S Function的写法 (Simulink里使用 S 函数)
主讲: math(Matlab中文论坛管理员) 实例操作:Fortran S-函数 版权申明:视频归原创作者跟Matlab中文论坛所有,可以在Matlab中文论坛下载或者观看,请勿转载! ! Matlab&Simulink为美国mathworks公司注册商标!版权归mathworks公司所有!
Similar presentations