预订演示
前页 后页

触发器

触发器表示可以激活离开当前状态的转换的信号和事件。触发器可能代表真实世界A信号或事件,例如:

  • A按钮被按下
  • 收到A消息
  • A踏板
  • A开关被抛出
  • 正在进入或退出A并发区域中的状态

让触发器产生影响

  • 必须定义在模拟接收到信号或事件时将触发的转换
  • 当前仿真状态或其父级必须具有接受该触发器的传出转换
  • 激活的转换必须是无人看守的,或者有一个将评估为True的看守

管理触发器

行动

细节

也见

创建触发器

触发器的元素要么被创建为信号的实例,要么被创建为匿名事件。触发器连接到“转移

”中的转换转移

属性对话框,如下所示。在此示例中,已根据信号“Signal_Pushdown”定义了一个名为“触发器”的简单示例。

  • 省略类型和规范细节会导致简单的匿名触发器。
  • 如果需要参数,这些参数在信号上定义并且必须在事件触发时提供
Trigger creation on a transition

触发器A出现在浏览器窗口的“项目”选项卡中,如下所示:

Trigger Icons in Project Browser

触发器 转移 仿真事件窗口

使用触发器

触发器通过将它们连接到转换来部署,如前面的示例中一样,并在模拟期间通过根据需要将它们“触发”到正在运行的模拟中来使用。

使用触发器时应考虑以下几点:

  • A发出有效触发器信号或触发之前,不会发生“触发”转换
  • 当收到触发器时,它将激活依赖于该触发器的所有当前等待转换(即,触发器是广播的)
  • 对当前子状态的所有父级的所有触发器进行评估;这允许父状态在必要时退出所有子状态
  • 一旦在模拟中使用,触发器就会被消耗,如果再次需要,必须重新触发
  • 可保存触发器集并手动或自动触发,以方便不同事件模型下的自动模型模拟
重新触发器信号 连接器类型特定选项

射击触发器

触发触发器意味着在当前模拟中发出信号或激活触发器。这可以根据当前仿真的状态和并发性激活零个、一个或多个等待转换。

触发触发器可以通过多种方式实现。最有效的是“等待触发器”列表。

在模型仿真过程中,如果模拟器由于所需的触发器不可用(触发)而陷入僵局,则所有可能的候选触发器列表显示在触发器事件仿真事件窗口的“等待”列表中。

Available Triggers are listed when simulation is at an impasse

双击此列表中的触发器会将其触发到仿真程序中。其它方式启动触发器包括:

  1. 双击事件窗口中的未发出信号的触发器。
    Event history in the simulation interface of Enterprise Architect
    您还可以在这些事件上使用上下文菜单来发出未发出信号的事件,或重新发出先前已触发的事件的信号。
  2. 使用转移
    的上下文菜单转移
    需要启动并选择“触发器仿真的信号”菜单选项。
仿真事件窗口 连接器类型特定选项

了解更多