主要内容

Stateflow。StateTransitionTableChart

用于模态逻辑的状态机的表格表示

    描述

    使用一个Stateflow。StateTransitionTableChart对象创建模态逻辑的有限状态机的表格表示。使用状态转换表的好处包括:

    • 易于建模类似于火车的状态机,其中模态逻辑涉及从一个状态到相邻状态的转换

    • 状态机的一种简洁、紧凑的格式

    • 减少图形对象的维护

    有关更多信息,请参见状态流中的状态转换表

    创建

    创建一个Stateflow。StateTransitionTableChart对象,调用函数sfnewstt论点。例如,要创建状态转换表块在新的Simulink金宝app®模型叫做myModel,输入:

    sfnewsttmyModel

    或者,您可以添加一个新的状态转换表通过使用该函数将一个现有模型阻塞add_block(金宝app模型)

    add_block (“sflib /状态转换表”“myModel /状态转换表”

    然后,访问Stateflow。StateTransitionTableChart对象,调用找到函数金宝app仿真软件。根对象:

    rt = sfroot;表=找到(rt,“是”“Stateflow。StateTransitionTableChart”...“路径”“myModel /状态转换表”);

    属性

    全部展开

    Stateflow®API对象具有对应于您在状态溢编辑器中设置的值的属性。要访问或修改属性,请使用点表示法。要访问或修改多个API对象的多个属性,请使用得到函数,分别。有关更多信息,请参见修改状态流对象的属性和调用函数

    内容

    状态转换表的名称,指定为字符向量。

    用于编程状态转换表的操作语言,指定为MATLAB的“C”.有关更多信息,请参见作为动作语言语法的MATLAB与C的区别

    由状态转换表实现的状态机语义,指定为“经典”“粉”,或“摩尔”.有关更多信息,请参见Mealy和Moore机器概述

    状态转换表是否支持可变大小的数据,指定为数字或逻辑1 (金宝app真正的)或0 ().只有可变尺寸的数据才能在模拟过程中改变尺寸。有关更多信息,请参见声明状态流图中的可变大小数据

    表初始化

    是否在时刻0初始化状态转换表的状态配置,而不是在第一个输入事件(指定为数字或逻辑1)初始化状态转换表的状态配置(真正的)或0 ().有关更多信息,请参见初始化时图表的执行

    当函数调用输入事件重新启用状态转换表时,状态的行为,指定为以下值之一:

    • ''—状态转换表不包含函数调用输入事件。

    • “持有”—状态转换表维护状态的最新值。

    • “重置”—状态转换表恢复到状态的初始条件。

    有关更多信息,请参见图表中的控件状态由函数调用输入事件启用

    是否在状态转换表每次唤醒时初始化输出数据,指定为数字1或逻辑1 (真正的)或0 ().有关更多信息,请参见初始化每次时间图唤醒时的输出

    活动状态输出

    是否为状态转换表创建活动状态数据输出端口,指定为数字1或逻辑1 (真正的)或0 ().有关更多信息,请参见通过活动状态数据监视状态活动

    此属性是只读的。

    状态转换表的活动状态数据对象,指定为Stateflow。数据对象。该属性仅在HasOutputData状态转换表的真正的

    状态转换表的活动状态数据对象的名称,指定为字符向量。该属性仅在HasOutputData状态转换表的真正的

    活动状态输出数据的监控模式,指定为“ChildActivity”“LeafStateActivity”

    状态转换表的活动状态数据对象的枚举数据类型的名称,指定为字符向量。有关更多信息,请参见枚举的名字

    是否手动定义活动状态数据输出的枚举数据类型,指定为数字1或逻辑1 (真正的)或0 ().有关更多信息,请参见定义状态活动枚举类型

    离散和连续时间语义

    状态转换表的激活方法,指定为“连续”“离散”,或“继承”.有关更多信息,请参见更新方法

    激活状态转换表的示例时间,指定为字符向量。该属性仅在ChartUpdate状态转换表的“离散”

    是否对状态转换表中的状态转换启用过零检测,以数字或逻辑1指定(真正的)或0 ().该属性仅在ChartUpdate属性的值设置为“连续”.有关更多信息,请参见禁用讨论二阶导数过零检测

    超级一步语义

    是否为状态转换表启用超级步语义,指定为数字或逻辑1 (真正的)或0 ().有关更多信息,请参见超级一步语义

    状态转换表在一个超级步骤中可以接受的最大转换数,指定为整数标量。该属性仅在EnableNonTerminalStates状态转换表的真正的

    状态转换表的超级步骤超过了在NonTerminalMaxCounts属性在达到稳定状态之前,指定为以下值之一:

    • “继续”—状态转换表将以最后的激活状态配置进入休眠状态。

    • 把错误的- 状态转换表生成错误。

    该属性仅在EnableNonTerminalStates状态转换表的真正的

    整数和定点数据

    状态转换表中的数据是否在整数溢出上饱和,指定为数字或逻辑1(真正的)或0 ().当禁用此属性时,状态转换表中的数据将包装为整数溢出。有关更多信息,请参见处理图表数据的整数溢出

    继承了Simulin金宝appk信号以将固定点设计器™视为固定点fi对象,指定为以下值之一:

    • “定点”—状态转换表将所有定点输入视为fi对象。

    • “定点&整数”—状态转换表将所有定点和整数输入视为fi对象。

    该属性仅在ActionLanguage状态转换表的属性为MATLAB的

    默认的fimath状态转换表的属性,指定为以下值之一:

    • 'Same as MATLAB Default'-使用相同的fimath属性设置为当前默认值fimath对象。

    • 其他:UserSpecified——使用InputFimath属性指定默认值fimath对象。

    该属性仅在ActionLanguage状态转换表的属性为MATLAB的

    默认的fimath对象,指定为字符向量。当EmlDefaultFimath状态转换表的其他:UserSpecified,您可以使用此属性:

    • 输入一个表达式来构造fimath对象。

    • 输入变量的名称fimath对象。®或者模型工作区。

    该属性仅在ActionLanguage状态转换表的属性为MATLAB的

    C动作语言

    当状态转换表与Simulink输入和输出信号(指定为数字1或逻辑1)接口时,是否使用强数据类型(金宝app真正的)或0 ().此属性仅适用于使用C作为操作语言的状态转换表。有关更多信息,请参见在Simulink I/O中使用强数据类型金宝app

    是否在状态转换表中使用状态和转换操作的转换操作,指定为数字或逻辑1(真正的)或0 ().此属性仅适用于使用C作为操作语言的状态转换表。有关更多信息,请参见使c位操作

    调试

    状态转换表的调试器属性,指定为Stateflow。ChartDebug对象的这个属性:

    • 断点。OnEntry- 是否设置在表条目断点,指定为数字或逻辑1 (真正的)或0 ().

    有关更多信息,请参见将断点设置为调试图

    例子:table.Debug.Breakpoints.OnEntry = true;

    图形化的外观

    此属性是只读的。

    状态转换表的编辑器,指定为Stateflow。编辑器对象。您可以使用此对象来控制状态流编辑器窗口的位置、大小和放大级别。

    状态流编辑器窗口是否显示状态转换表,指定为数字1或逻辑1 (真正的)或0 ().

    为状态转换表自动生成的图表的背景颜色,指定为表单的三元素数字向量(红绿蓝)它指定红、绿和蓝值。每个元素必须在0到1之间。

    表示为状态转换表自动生成的图表中的状态的颜色,指定为表单的三元素数字向量(红绿蓝)它指定红、绿和蓝值。每个元素必须在0到1之间。

    为状态转换表自动生成的图表中转换的颜色,指定为表单的三元素数字向量(红绿蓝)它指定红、绿和蓝值。每个元素必须在0到1之间。

    为状态转换表自动生成的图表中连接的颜色,指定为表单的三元素数字向量(红绿蓝)它指定红、绿和蓝值。每个元素必须在0到1之间。

    为状态转换表自动生成的图表中状态标签的字体,指定为Stateflow。STTStateFont对象的这些属性:

    • 的名字-指定为字符向量的字体名称。

    • -字体角度,指定为“正常”“斜体”

    • 重量-字体大小,指定为“正常”“大胆”

    • 大小新状态的默认字体大小,指定为标量。

    例子:table.StateFont.Name =“天线”;

    例子:table.StateFont.Angle =“斜体”;

    例子:table.StateFont.Weight = '大胆;

    例子:table.StateFont.Size = 8;

    为状态转换表自动生成的图表中的状态标签的颜色,指定为表单的三元素数字向量(红绿蓝)它指定红、绿和蓝值。每个元素必须在0到1之间。

    为状态转换表自动生成的图表中的转换标签的字体,指定为Stateflow。STTTransFont对象的这些属性:

    • 的名字-指定为字符向量的字体名称。

    • -字体角度,指定为“正常”“斜体”

    • 重量-字体大小,指定为“正常”“大胆”

    • 大小-新转场的默认字体大小,指定为标量。

    例子:table.TransitionFont.Name =“天线”;

    例子:table.TransitionFont.Angle =“斜体”;

    例子:table.TransitionFont.Weight =“大胆”;

    例子:table.TransitionFont.Size = 8;

    为状态转换表自动生成的图表中的转换标签的颜色,指定为表单的三元素数字向量(红绿蓝)它指定红、绿和蓝值。每个元素必须在0到1之间。

    层次结构

    此属性是只读的。

    包含状态转换表的机器,指定为Stateflow。机对象。

    此属性是只读的。

    状态转换表在模型层次结构中的位置,指定为字符向量。

    状态转换表在打开或保存后是否已更改,指定为数字或逻辑1 (真正的)或0 ().

    状态转换表是否被锁定,指定为数字或逻辑1 (真正的)或0 ().启用此属性可防止状态转换表中的更改。

    此属性是只读的。

    状态转换表是否被锁定,指定为数字或逻辑1 (真正的)或0 ().该属性等价于该属性锁着的,但在内部使用,以防止在模拟期间更改状态转换表。

    识别

    状态转换表的描述,指定为字符向量。

    状态转换表的文档链接,指定为字符向量。

    状态转换表的用户定义标记,指定为任意类型的数据。

    此属性是只读的。

    作为整数标量指定的唯一标识符。使用此属性将状态转换表与模型中的其他对象区分开来。该属性的值在每次启动新的MATLAB会话时被重新分配,并可能在删除对象后被回收。

    对象的功能

    找到 在层次结构中标识指定的对象
    调用getChildren 识别对象的子对象
    对话框 打开属性对话框
    视图 在编辑环境中显示对象

    例子

    全部折叠

    调用这个函数sfnewstt参数以打开一个包含空金宝app状态转换表块。

    sfnewstt

    访问金宝app仿真软件。根对象,调用sfroot函数。

    rt = sfroot;

    访问Stateflow。StateTransitionTableChart对象,调用找到函数金宝app仿真软件。根对象。

    表=找到(rt,“是”“Stateflow。StateTransitionTableChart”);
    介绍了R2012b