Skip to main content

仿真的运行

点击"开始仿真"按钮,开始一次仿真的运行。

仿真开始的时候,使用工作站当前的对象取值。在活跃场景中包含的对象开始运行。智能组件根据起始 状态开始运行,传播信号,执行动作。控制器启动任务的执行。

当有控制器的任务编译失败时,不能开始仿真。所以在开始仿真前需要保证所有控制器的任务编译成功, 包括没有包含在仿真场景中的控制器任务。

仿真中的机器人任务

如果活跃场景包含机器人任务,则当所有机器人任务运行结束时,仿真会自动结束。如果活跃场景中不包含 机器人任务,则仿真不会自动结束。

仿真中的智能组件

在仿真运行时,智能组件本身具有两种状态:激活态和关闭态。

智能组件的激活主要通过信号。对于一些智能组件,用户可以点击诸如execute或者active等信号将其激活,也可 以通过信号连接的方式来控制智能组件。

智能组件的关闭主要有两种形式:一是像激活一样,通过信号来关闭。二是一些智能组件执行完本身的功能后自动 关闭。

在一个仿真时步内如果激活一个智能组件,它会在本时步内立即开始执行动作。特别需要注意:如果关闭一个智能 组件,它会在执行完这个仿真时步的动作后在下个仿真时步关闭。也就是说,关闭一个组件会经历一个仿真时步的 延迟。

如果一个仿真时步内组件被激活后关闭或者关闭后激活,这个组件都会执行一次动作后在下个仿真时步关闭,这与 激活或者关闭发起的顺序无关。如果用户希望控制激活和关闭顺序的先后,可以将后发起的命令延迟到下个时间步 执行。

对于一些不依赖于时间的组件,比如Queue等,它们一直处于关闭态。它们的动作在信号传递的瞬间就执行,而不 依赖于组件本身是否处于激活态。