主要内容

状态流程图

有限状态机的图形表示

    描述

    使用一个状态流程图对象,以通过组合状态、转换和数据创建有限状态机的图形表示。有关更多信息,请参见有限状态机概念使用Stateflow API创建图表

    创建

    创建一个状态流程图对象,调用函数sfnew.例如,在新的Simulink中创建一个空图表金宝app®模型调用我的模型,输入:

    sfnew我的模型

    或者,可以使用函数将新图表添加到现有模型中添加块(金宝appSimulink):

    添加块(“sflib/Chart”,“myModel /图表”)

    然后,访问状态流程图对象,调用找到函数金宝app仿真软件。根对象:

    rt = sfroot;图=找到(rt,“是”,“Stateflow。图表的,...“路径”,“myModel /图表”);

    属性

    全部展开

    内容

    图表的名称,指定为字符向量。

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

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

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

    状态分解

    图表中顶层包含的子状态的分解,指定为“EXCLUSIVE_OR”“PARALLEL_AND”.有关更多信息,请参见指定子状态分解

    表初始化

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

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

    • ''-图表不包含函数调用输入事件。

    • “持有”-图表保持了州的最新值。

    • “重置”-图表恢复到状态的初始条件。

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

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

    有源状态输出

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

    此属性是只读的。

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

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

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

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

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

    离散和连续时间语义

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

    激活图表的采样时间,指定为字符向量。此属性仅在图表更新图表的属性为“离散”

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

    超步语义

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

    图表在一个超级步骤中可以进行的最大转换数,指定为整数标量。此属性仅在EnableNonTerminalStates图表的属性为真正的

    如果图表的超级步骤超过非终端最大计数属性在达到稳定状态之前,指定为以下值之一:

    • “继续”-图表进入睡眠与最后的活动状态配置。

    • 把错误的—图表产生错误。

    该属性仅在EnableNonTerminalStates图表的属性为真正的

    导出函数

    是否将图表级函数导出到Simulink模型中的其他块(指定为数字或逻辑1)(金宝app真正的)或0(假的).有关更多信息,请参见导出状态流函数以供重用

    图表中导出的函数在Simulink模型中是否全局可见(指定为数字或逻辑1)(金宝app真正的)或0(假的)。启用此属性时,整个模型中的块可以调用从图表导出的函数,而无需使用限定符号。此属性仅在ExportChartFunctions图表的属性为真正的

    整数和定点数据

    图表中的数据是否在整数溢出时饱和,指定为数字或逻辑1 (真正的)或0(假的)。禁用此属性时,图表中的数据将换行为整数溢出。有关详细信息,请参阅处理图表数据的整数溢出

    继承Simulink金宝app信号作为定点设计器处理™fi对象,指定为以下值之一:

    • “定点”-该图表将所有定点输入视为fi物体。

    • “定点和整数”-该图表将所有定点和整数输入视为fi物体。

    此属性仅适用于使用MATLAB的图表®作为行动语言。

    默认的fimath属性,指定为以下值之一:

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

    • 其他:UserSpecified——使用输入数学属性指定默认值fimath对象。

    该属性仅在ActionLanguage图表的性质是MATLAB的

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

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

    • 输入变量的名称fimath对象或模型工作空间。

    此属性仅适用于使用MATLAB作为操作语言的图表。

    代码生成

    生成的代码是否包含图表中变量条件的预处理器条件语句(指定为数字或逻辑1)(真正的)或0(假的)。此属性仅在使用嵌入式编码器生成代码时适用®.有关更多信息,请参见使用变量转换生成代码

    C动作语言

    当图表与Simulink输入和输出信号(指定为数字或逻辑1)交互时,是否使用强数据类型(金宝app真正的)或0(假的)。此属性仅适用于使用C作为操作语言的图表。有关详细信息,请参阅在Simulink I/O中使用强数据类型金宝app

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

    是否使用以数字或逻辑1指定的并行状态和转换的显式排序(真正的)或0(假的)。此属性仅适用于使用C作为操作语言的图表。有关详细信息,请参阅用户指定的状态/转换执行顺序

    调试

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

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

    图形外观

    此属性是只读的。

    图表的编辑器,指定为Stateflow.Editor对象。您可以使用此对象控制Stateflow的位置、大小和放大级别®编辑器窗口。

    Stateflow编辑器窗口是否显示图表(指定为数字或逻辑1)(真正的)或0(假的).

    图表的背景色,指定为表单的三元素数字向量(红绿蓝)指定红色、绿色和蓝色值的。每个元素必须在0和1之间的范围内。

    图表中框、函数和状态的颜色,指定为表单的三元素数字向量(红绿蓝)指定红色、绿色和蓝色值的。每个元素必须在0和1之间的范围内。

    图表中转换的颜色,指定为表单的三元素数字向量(红绿蓝)指定红色、绿色和蓝色值的。每个元素必须在0和1之间的范围内。

    图表中连接的颜色,指定为表单的三元素数字向量(红绿蓝)指定红色、绿色和蓝色值的。每个元素必须在0和1之间的范围内。

    图表中方框、函数和状态标签的颜色,指定为表单的三元素数字向量(红绿蓝)指定红色、绿色和蓝色值的。每个元素必须在0和1之间的范围内。

    图表中框、函数和状态标签的字体角度,指定为“正常”“斜体”

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

    图表中方框、函数和状态标签的字体权重,指定为“正常”“大胆的”

    例子:chart.StateFont.Weight='粗体;

    图表中注释、框、函数和状态标签的初始字体大小,指定为标量。

    例子:chart.StateFont.Size=8;

    图表中注释、框、函数和状态标签的字体名称,指定为字符向量。

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

    图表中转换标签的颜色,指定为表单的三元素数字向量(红绿蓝)指定红色、绿色和蓝色值的。每个元素必须在0和1之间的范围内。

    图表中过渡标签的字体角度,指定为“正常”“斜体”

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

    图表中过渡标签的字体粗细,指定为“正常”“大胆的”

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

    图表中过渡标签的初始字体大小,指定为标量。

    例子:chart.TransitionFont.Size = 8;

    图表中过渡标签的字体名称,指定为字符向量。

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

    层次结构

    此属性是只读的。

    包含图表的机器,指定为Stateflow。机器对象。

    此属性是只读的。

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

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

    图表是否被锁定,指定为数字或逻辑1 (真正的)或0(假的).启用此属性可防止图表发生更改。

    此属性是只读的。

    图表是否被锁定,指定为数字或逻辑1 (真正的)或0(假的).该属性等价于该属性锁定,但在内部用于防止在模拟过程中更改图表。

    识别

    图表的描述,指定为字符向量。

    图表的文档链接,指定为字符向量。

    图表的用户定义标记,指定为任何类型的数据。

    此属性是只读的。

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

    目标函数

    类句柄 为对象提供类句柄
    默认转换 返回容器顶层对象中的默认转换
    对话框 打开属性对话框
    找到 层次结构中的指定对象
    菲托维 放大图形对象
    得到 返回MATLAB结构,包含对象或对象数组的属性设置
    作语法分析 分析模型中的单个图表或所有图表
    设置 用指定的值设置属性
    视图 在编辑环境中显示对象

    例子

    全部折叠

    调用这个函数sfnew打开一个包含空状态流程图的新金宝appSimulink模型。

    sfnew

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

    rt = sfroot;

    访问状态流程图对象,调用找到函数金宝app仿真软件。根对象。

    图=找到(rt,“是”,“Stateflow。图表的);
    之前介绍过的R2006a