stateflow 结构体和流程图使用
stateflow是一个基于有限状态机和流程图来构建组合和时序逻辑决策模型并进行仿真的环境。这篇只是基于学习了stateflow后,做的一个简单的测试。
1、模型如下:
模型相对简单,根据输入的值,对应的输出端口输出1.后面的图是chart内部的流程图。
2、模型建立
(1)在matlab command窗口中输入sfnew,打开一个包含状态图的simulink仿真。
(2)双击打开状态图,使用模板创建流程图。这里选择switch语句。
在弹出的窗口中,输入条件和case后的输出语句等,可以创建一个switch和case语句。这里的输出变量使用结构体的方式,输入方式和C语言的方式一样。
(3)建立结构体。打开bus editor,建立总线,并为总线添加成员。当然,这里也可以使用其他的方式创建。具体参考stateflow的教程。
(4)在stateflow中,设置变量的属性。
(5)退回simulink环境。
连接输入输出。输出中使用bus,当连接输出后,可以在bus中设置输出。
模型建立完成,可以运行仿真。
参考:
https://ww2.mathworks.cn/help/stateflow/