主要内容

有限状态机模型

Stateflow®是一个基于图形化编程环境有限状态机。Stateflow,您可以测试和调试设计,考虑不同的仿真场景,生成代码从你的状态机。

有限状态机是表征的动态系统,从一个模式转换操作(状态)到另一个。状态机:

  • 作为一个高级的起点为一个复杂的软件设计过程。

  • 使您能够专注于所需的操作模式和条件通过从一个模式到另一个模式。

  • 帮助你保持清晰和简洁的设计模型尽管模型复杂性增加的水平。

控制系统设计在很大程度上依赖于状态机来管理复杂的逻辑。应用包括设计飞机、汽车和机器人控制系统。

的例子Stateflow图表

Stateflow图表,你把州,转换和数据来实现有限状态机。这个Stateflow图提出了一种简化模型的逻辑在四速自动变速传动系统的汽车。图表代表每个齿轮位置状态,显示为一个矩形标记第一个,第二个,第三,或第四。他们所代表的齿轮一样,这些国家是独家,所以只有一个状态是活跃的。

Stateflow图与状态标记为第一,第二,第三,第四。图表的状态之间的转换速度是高于或低于指定的金额。

图的左边的箭头代表默认转换,显示第一个状态变得活跃。当你执行图,这种状态在画布上突出显示。另一个箭头表示状态之间的转换。定义状态机的动态,你把每个转换与布尔条件或一个触发事件。例如,这个图表监控汽车的速度和转向一个不同的齿轮速度穿过一个固定的阈值。在仿真过程中,突出显示在图表的变化随着不同状态变得活跃。

图表显示状态和转换激活动画。

这种图表提供了一个简单的设计,忽视了发动机转速和扭矩等重要因素。你可以建立一个更全面的和现实的模型,将这Stateflow图表在MATLAB与其他组件®或仿真金宝app软件®。下面的例子描述了三种可能的方法。

执行图作为一个MATLAB对象

这个例子展示了一个修改版的自动传输系统包含状态等级,时序逻辑,输入事件。

  • 层次结构:图表由一个超级大国gear_logic周围的四速自动变速器在前面的示例图。这个超级大国控制汽车的速度和加速度。在执行期间,gear_logic总是积极的。

  • 时序逻辑:在国家gear_logic,操作在每一个(0.25秒)决定了汽车的速度。操作员每一个创建一个MATLAB定时器执行并更新图的图表数据速度每0.25秒。

  • 输入事件:输入事件加速,巡航,经济放缓重置价值的图表数据δ。这些数据确定汽车加速或维护它的速度在每个执行步骤。

可以执行这个图表在MATLAB作为对象直接通过命令窗口或通过使用一个脚本。你也可以计划一个MATLAB应用程序控件的状态表通过一个图形用户界面。例如,该用户界面输入事件发送到图表当你点击一个按钮。图表,MATLAB函数小部件控制指标的值和灯的接口。开始这个例子中,在应用程序设计师将来发布,点击运行。示例继续运行,直到你关闭用户界面窗口。

另外,在Stateflow编辑状态图选项卡上,单击运行。控制车速,符号窗格中,使用加速,经济放缓,巡航按钮。停止的例子,点击停止

关于执行Stateflow图表为MATLAB对象的更多信息,看一下在MATLAB环境下执行

作为仿真软件模拟图块与当地事件金宝app

这个示例提供了一个更复杂的自动传输系统的设计。Stateflow图表作为一个整体出现在一个仿真软件模型。金宝app另一块模型中代表相关的汽车零部件。图表与其他块通过共享数据接口的输入和输出连接。打开图,单击左下角的箭头shift_logic块。

这个图表结合国家层次结构、并行性活跃的状态数据,当地的事件,和时序逻辑。

  • 层次结构:国家gear_state包含一个修改版的四速自动变速器。国家selection_state包含亚态,代表稳态,上移,降低速度模式的操作。当环境需要一个转向齿轮或高或低,这些国家变得活跃。

  • 并行性:平行状态gear_stateselection_state显示为虚线边界矩形。这些国家同时操作,即使亚态里面打开和关闭。

  • 活动状态数据:输出值齿轮在仿真反映出齿轮的选择。图表生成活性亚态这个值gear_state

  • 当地的事件:布尔条件,这个图表使用本地事件向上下来触发齿轮之间的转换。这些事件产生的发送命令selection_state当车速范围之外的操作选择的装备。仿真软件金宝app的功能calc_th操作的范围决定了边界值基于所选择的装置和发动机转速。

  • 时序逻辑:为了防止齿轮的快速连续变化,selection_state使用时序逻辑操作符推迟的广播向上下来事件。这些事件的状态广播一个只有改变齿轮所需的时间比预定的时间TWAIT

运行的仿真模型:

  1. 双击用户输入块。在信号编辑器对话框中,选择一个预定义的brake-to-throttle概要文件的活跃的场景列表。默认的配置文件通过操作

  2. 点击运行。在Stateflow编辑器中,图表动画仿真过程中突显出活跃的状态。减缓动画,调试选项卡上,选择动画速度下拉列表。

  3. 在街区范围,检查模拟的结果。每个范围显示一个图形的输入信号在模拟。

作为仿真软件模拟图块与时间条件金宝app

这个示例提供了另一种替代汽车的传动系统建模。Stateflow图表作为一个整体出现在一个仿真软件模型。金宝app另一块模型中代表相关的汽车零部件。图表与其他块通过共享数据接口的输入和输出连接。打开图,单击左下角的箭头Gear_logic块。

这个图表结合国家层次、活动状态数据和时序逻辑。

  • 层次结构:该模型将四速自动变速器图表在一个超级大国齿轮。极权主义国家监控车辆和引擎速度和触发装置的变化。的左上角上列出的行动状态齿轮确定操作阈值选择的装备和布尔条件的值向上下来。标签恩,杜表明国家行动时执行国家首先变得活跃(=条目),随后在每个时间步而活跃状态(=)。

  • 活动状态数据:输出值齿轮在仿真反映出齿轮的选择。图表生成活性亚态这个值齿轮

  • 时序逻辑:为了防止齿轮的快速连续变化,布尔条件向上下来使用时序逻辑运算符持续时间控制齿轮之间的过渡。条件是有效的,当车速范围之外的操作选择齿轮比预定的时间更长TWAIT(以秒为单位)。

运行的仿真模型:

  1. 双击用户输入块。在信号编辑器对话框中,选择一个预定义的brake-to-throttle概要文件的活跃的场景列表。默认的配置文件通过操作

  2. 点击运行。在Stateflow编辑器中,图表动画仿真过程中突显出活跃的状态。减缓动画,调试选项卡上,选择动画速度下拉列表。

  3. 在块范围,检查的结果模拟。的范围显示一个图在模拟齿轮选择。

下一个步骤