目录
[1. 图函数graph function](#1. 图函数graph function)
[2.simulink function](#2.simulink function)
[3.matlab function](#3.matlab function)
前言
对于stateflow实际上可以做simulink和matlab的所有任务,可以有matlab的m语言,也可以有simulink的模块,关于几种函数在stateflow中的位置如下图所示,分别为simulink function、graph function和matlab function。
![](https://file.jishuzhan.net/article/1736049536993857538/8337282d939eea42aed82eed73ae3862.webp)
1. 图函数graph function
选择添加图形pattem在函数中,这里以简单的if else为例,
![](https://file.jishuzhan.net/article/1736049536993857538/6e6fd284d5b7576b27521ba90564bb67.webp)
定义完图函数的内容后,生成的流程图如下所示。
![](https://file.jishuzhan.net/article/1736049536993857538/cbd891d951db84cd843f485577dd6640.webp)
2.simulink function
为了方便和图函数对比,这里用switch来进行相同的if else操作,如下图所示
![](https://file.jishuzhan.net/article/1736049536993857538/eb441b9e723c5c73b2db0561ea1bc610.webp)
![](https://file.jishuzhan.net/article/1736049536993857538/6a9ee06f73782ec5312eac45b3b6c479.webp)
3.matlab function
![](https://file.jishuzhan.net/article/1736049536993857538/6dcf4f450b766d94e208cb8ea4f7662e.webp)
4.调用stateflow中的几种函数方式
![](https://file.jishuzhan.net/article/1736049536993857538/5089d988602a375b8126dbe69dda2c5e.webp)
注:
①调用成功时是绿色的高亮状态;
②几种函数中的输入变量不能与stateflow中的输入变量同名,如simulink function 是y=func1(x1),即x1是该函数的输入变量,matlab function 是y=matlab_fcn(x2),即x2是该函数的输入变量,而是stateflow中的输入变量是x,三者不可同名,但调用时刻是输入变量x。