主要内容

用于状态和转换的语法

通过使用操作和条件来表达图表行为

控制状态流的执行®通过指定状态之间的转换何时发生以及操作何时执行来绘制图表。通过广播事件同步状态执行。检测数据值的变化,并检查在图表执行期间哪些状态是活动的。

图表 用有限状态机实现控制逻辑

Stateflow语法

全部展开

变化检测

改变 当数据改变值时生成隐式事件
焕然一新 检测自上次时间步骤以来的数据更改
hasChangedFrom 检测指定值的数据变化
hasChangedTo 检测数据到指定值的变化

信息活动

丢弃 丢弃消息
向前 转发消息
isvalid 确定消息是否有效
长度 确定消息队列的长度
收到 从队列中提取消息
发送 广播消息或事件

国家活动

输入 当状态变为活动状态时生成隐式事件
退出 当状态变为不活动时生成隐式事件
检查中的状态活动Stateflow

字符串操作

ascii2str 转换类型的数组uint8字符串
str2ascii 将字符串转换为类型的数组uint8
str2double 将字符串转换为双精度值
strcat 连接字符串
比较字符串 比较字符串
拷贝字符串 赋值字符串
strlen 确定字符串长度
字符串的子串 从字符串中提取子字符串
tostring 将数值转换为字符串

时序逻辑

在事件广播后或指定时间执行图表
在事件广播或指定时间执行图表
之前 在事件广播前或指定时间执行图表
图表执行期间条件有效
持续时间 条件有效的时间
运行 自从状态活跃以来的时间
每一个 定期执行图表
temporalCount 事件、图表执行次数或状态变为活动后的时间

主题

通过合并状态操作消除冗余代码

结合条目,退出状态中的动作。

使用绑定动作控制函数调用子系统

将函数调用输出事件绑定到状态的活动。

结合过渡和连接创建分支路径

在转换路径中创建决策点。

金宝app海图数据支持操作

在状态流图中执行数学计算。

金宝app动作中的支持符号

用于状态和转换操作的特殊符号。

在状态流图中调用外部MATLAB函数

使用MATLAB®代码生成不支持的函数。金宝app

在C图中访问MATLAB函数和工作空间数据

调用内置的MATLAB函数毫升操作符。

在C图中调用C库函数

访问状态和转换标签中的C函数。

使用in操作符检查状态活动

确定在图表执行期间某个状态是否处于活动状态。

检测数据值的变化

定义数据在时间步之间改变值时的图表行为。

使用时态逻辑执行控制图

使用基于事件的和绝对时间时间逻辑运算符。

使用隐式事件的控制图行为

通过更改数据值和状态活动触发图表操作。

使用持续时间运算符控制振荡

简化具有瞬态信号的图表中的脱扣逻辑。

特色的例子