执行 MVApp(I/O 相机)

为流程集成使用带数字 I/O 通道的相机设备时,您可以使用命令“StartSingleJob”分步执行 MERLIC Vision App (MVApp)。无法通过数字 I/O 设备触发连续执行。不过,MERLIC 会注意到是否有另一个进程触发了连续执行,以避免冲突。

触发单次执行

要启动执行,您需要了解设备输入通道的配置情况。确切地说,您必须了解为“StartSingleJob”信号选择了哪个输入通道,以便正确设置信号。

  1. 如果不确定 I/O 设备的配置,请查询输入通道的当前配置:
    1. 打开 MERLIC RTE Setup 并转到“I/O”选项卡。
    2. 选择 I/O 设备并检查为“StartSingleJob”选择了哪个输入通道。

  2. 将“StartSingleJob”信号的输入通道设为 1,以触发单次执行。命令是基于级别触发的。这意味着“Ready”信号将被重复短暂地设置为 1,因为下一次检查将由“StartSingleJob”信号的 1 级立即触发。

信号

描述

StartSingleJob

如果为 “StartSingleJob” 选择的通道设置为 1,则将触发 MVApp 单次执行。

同步

下图通过对命令 “StartSingleJob” 的示例展示了所述的handshaking过程。如果将单次执行的信号设置为 1,则 “Ready” 信号会设置为 0,并且 MERLIC 开始在单次迭代中执行 MVApp。在 MVApp 迭代之后,“Ready” 信号将被设置回 1,MERLIC 将再次检查是否有任何信号被设置为 1。如果 “StartSingleJob” 信号仍设置为 1,则会重复相同的过程。“Ready” 信号会设置为 0,然后执行 MVApp 的另一次单次执行。之后,“Ready” 信号再次设置为 1。

只要单次执行的信号设置为 1,MERLIC 就会重复执行该命令。如果要避免 MVApp 重复执行,必须在“Ready”信号设置为 0 时立即将“StartSingleJob”信号重置为 0,因为“Ready”信号为 0 时,命令就会立即被处理。

如果连续执行由并发运行的源触发,例如,由 Hilscher 设备或通讯插件(如 MQTT)触发,则“Ready”信号设置为 0,并且只要连续执行正在运行,包括“ResultState”的结果信号就会持续更新。当连续执行完成时,可以在“Ready”信号设置回 0 之前或之后设置最后一个结果。