Executing the MVApp (Digital I/O)

The process integration MERLIC can be used in machine vision systems that are integrated in a manufacturing machine. The machine controller, e.g., a programmable logic controller (PLC), must be able to control an integrated vision system, to monitor the execution, and to query the results. Therefore, MERLIC provides a process integration mode to enable the communication with a machine controller. The process integration mode can be started with the application "MERLIC RTE" that is provided with the MERLIC installation. mode of MERLIC enables you to execute a MERLIC Vision App in single iterations. To start a single execution, you have to trigger the signal "StartSingleJob".

Digital I/O devices can not trigger the continuous execution, but MERLIC will be aware if the continuous execution was triggered by another process to avoid conflicts.

Checking the Configuration for "StartSingleJob"

  1. Open the MERLIC RTE Setup.
  2. Click on the "I/O" tab.
  3. Check which input channel is set for "StartSingleJob". The command for an MVApp execution needs to be triggered via this input channel.

Triggering the Execution of an MVApp

To start executing the MVApp in the process integration mode, you have to set the input channel that is selected for the signal "StartSingleJob" to 1. The command "StartSingleJob" is level triggered. This means that repeatedly the ready signal will be set to 1 briefly because the next inspection is triggered by the level 1 of the start signal immediately.

Signal

Description

StartSingleJob

If the selected channel for "StartSingleJob" is set to 1, a single execution of the MVApp is triggered.

Synchronization

The following graphic shows the handshaking process for the command "StartSingleJob". If the signal for the single execution has been set to 1, the "Ready" signal is set to 0 and MERLIC starts to execute the MERLIC Vision App in a single iteration. After the MVApp iteration, the "Ready" signal is set back to 1 and MERLIC checks again if any signal is set to 1. If the "StartSingleJob" signal is still set to 1, the same procedure is repeated. The "Ready" signal is set to 0 and another single execution of the MVApp is performed. Afterward, the "Ready" signal is set to 1 again.

As long as the signal for the single execution is set to 1, MERLIC will repeat to execute the command. If you want to avoid that the MVApp is executed repeatedly, you have to reset the "StartSingleJob" signal to 0 as soon as the "Ready" signal is set to 0 because the command is processed as soon as the "Ready" signal is 0.

In case a continuous execution was triggered by a concurrently running source, e.g., by a Hilscher device or by a communication interface that is connected to the MERLIC Communicator such as MQTT, the "Ready" signal is set to 0 and the result signals including "ResultState" are continuously updated as long as the continuous execution is running. When the continuous execution has finished, the last result may be set before or after the "Ready" signal is set back to 0.