Simulink中S函数的使用方法

Simulink是The MathWorks公司开发的用于动态系统和嵌入式系统的多领域模拟和基于模型的设计工具,常集成于MathWorks公司的另一产品MATLAB中与之配合使用。

S-函数是系统函数(System Function)的简称,在Simulink中用非图形化的方式来描述一个模块。一个完整的S-函数结构体系包含了描述一个动态系统所需要的全部能力。使用S-函数用户可以向Simulink模型中添加自己的模块,可以自由选择使用MATLAB、C、C++等语言来创建自己的模块。

编写S函数

编写S函数,可以从 Matlab 给的模板S函数文件开始,用户可以在 Matlab 命令窗口中键入:

1
edit sfuntmpl

该模板S函数文件包含了所有的S函数的例程, 包含1个主函数和6个子函数。 在主函数程序使用一个多分支语句 (Switch-case)根据标志将执行流程转移到相应的例程函数。主函数的参数 Flag 标志值是由系统(Simulink 引擎)调用时给出的。

问题处理

参考链接

  1. Simulink之——S函数,by 只是学电的.
  2. 使用level2 M S函数时,设置了0输入就会报错,测试程序见贴,by yfspring.
  3. MATLAB / SIMULINK通信系统建模与仿真实例分析,by 邵玉斌.
  4. Level2-S-function,by auto6329.