MERLIC States

When using MERLIC in process integration mode 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., MERLIC runs through different types of internal states. During the execution, you can query the current state of MERLIC, e.g., to check if MERLIC is ready to receive commands.

The basic framework of the internal MERLIC states is based on the vision state machine that is specified in the "OPC UA Companion Specification Vision - Part 1". The states and transitions that are provided in MERLIC are adopted from the OPC UA standard. However, not all states and transitions are identical copies in MERLIC.

The graphic below shows an overview of all internal states of MERLIC and its transitions when using MERLIC process integration. Transitions that are triggered by commands are labeled with the respective name of the command, for example, the transition from the state "Ready" to "SingleExecution" via the command "StartSingleJob". Transitions that are triggered automatically by MERLIC due to internal conditions are displayed in orange without any label, for example, the transition from the state "SingleExecution" to "Ready" is performed automatically after a single execution. The states "Halted" and "Preoperational" even allow self-transitions. These are also depicted in the graphic.

Depending on the type of device that is used for the process integration, the set of available MERLIC states and commands may differ as well as the procedure how the MERLIC states are queried.

In case of a Hilscher card, each of the MERLIC states can be visualized in your system. In case of devices with digital inputs and outputs, only the internal state for "Ready" and "Error" can be transmitted.

The following states are supported:

CurrentState

Description

Error

This state indicates that an error occurred. If MERLIC is in this state, a restart of MERLIC is required.

An error occurs in the following cases:

For more information see the topic Protocols for the Data Exchange.

Halted

This state indicates that MERLIC stopped all operations and all resources are in a state that allows a safe power-down, e.g., the resources are released.

Initialized

This state indicates that MERLIC is initialized but no recipe has been loaded yet.

OperationalFrontendAccessMode

This state indicates that MERLIC is currently controlled only via the Frontend. A Frontend user who acquired control is able to make changes at the MVApp and start the execution. In this state, the communication device or the connected industrial control system is not allowed to trigger any commands. See the topic Write Access in the Frontend for more information.

OperationalAutomaticMode

This state indicates that MERLIC is in the operational mode that comprises the states "Initialized", "Ready", "SingleExecution", and "ContinuousExecution".

Preoperational

This is the state of MERLIC directly after the start up. This state is not visible to the device that is used for the process integration if the communication to the respective device has not been established yet, but it will be taken into account after MERLIC was in the Halted state.

Ready

In this state, a recipe has been loaded and MERLIC is ready for the execution. In case of Hilscher PCI cards and digital I/O devices, it is also possible to change the recipe if MERLIC is in this state.

SingleExecution

This state indicates that MERLIC is currently running a single execution.

ContinuousExecution

This state indicates that MERLIC is currently running continuously. Continuous executions consist of a series of single executions without entering the Ready state between executions.

Get More Information

Checking the MERLIC State (Hilscher)

Get detailed information about the available MERLIC states when using a Hilscher PCI card for the process integration. In addition, learn how to check the current state during the process integration mode.

Checking the MERLIC State (Digital I/O)

Get detailed information about the available MERLIC states when using a digital I/O device or a camera device with GenICam compliant digital I/O channels for the process integration. In addition, learn how to check the current state during the process integration mode.