Skip to content

Manufacturing Execution System (MES)

A Manufacturing Execution System (MES) enable two-way IoT communication of manufacturing business information between IFS and machines in the production facility. This can enable a new level of insight, control and efficiency in the production system. IFS Cloud can be used as a standalone MES solution or integrated with third party systems.

A common practice is to use a integration platform as a intermediate communication broker. The platform can have multiple functions. For instance it can act as: a network load balancer, a network security layer or bridge, a IoT address repository, IT protocol converter and Machine Language Translator.

Outbound

This enables you to send start and stop commands to a machine using shop floor workbench. In this example the message in Application Messages is enriched with operation information and sent outbound to a Device.

image-20220714145222686

Prerequisites

Before configuring there are some considerations:

  • Conduct a risk assessments and implement necessary safety steps. The remote start and stop action should never compromise the health and safety of any person.
  • Ensure that the Machine supports the required connections.
  • The network access, security and routing requirements have been addressed.
  • The machine language and message protocol can be handled.

Setup Outbound Communication

To setup the outbound communication the following steps need to be addressed.

Work Center - Send IoT Event to Device

In Work Center activate Send IoT Event to Device. This Work Center should contain the resource that you want to send the messages to.

image-20220714152842286

Device map

In Device Map create a Device ID and connect this to the Work Center Resource ID.

image-20220714152921558

Starting or stopping a operation using a Work Center will generate a IFS Connect Application Message. This message can be enriched with more information and sent outbound.

Enriching the message using Get Operation Info

Create a Routing address with the Transport Connector type Projection. Use the transformers TO_MIXED_CASE followed by IFS_XML_TO_JSON_GENERIC. This converts the XML file containing the Operation ID in the application message to a JSON payload. Set the Projection Method to Action and the Projection Resource to ShopFloorConnector.GetOperationInfo.

image-20220714154624342

Set up the outbound address

Set up a outbound Routing Address. The example in the images use a RESTful POST message with a Api Key. To configure a custom solution refer to IFS Connect

image-20220714161546529

image-20220714161541382

Routing Rule - Start or Stop operation

Set up a Routing Rule to trigger a outbound message when a Application Message occur. Set the MESSAGE_FUNCTION to START_OPERATION. Set the RECEIVER as the Device ID connected to the Work Center Resource in the Device Map. Set the first Destination Address to the internal Projection using GetOperationInfo and the second to the outbound address.

image-20220714162847406

Starting Machine Time on a shop order operation now triggers a outbound message to the connected device. A similar setup using MESSAGE_FUNCTION as STOP_OPERATION triggers a outbound message on stop.

To differentiate between start, stop, setup and production you can use the OperationStatus information in the GetOperationInfo payload. This is a example snippet of a response:

{
...
  "OperationStatus": "SetupStarted",
...
}

Shop Floor Connector APIs

This describes to the premium APIs available in the ShopFloorConnector projection. To see payload and response examples refer to the documentation available in API Explorer .

Get Shop Floor information

GetOperationInfo

Given an Operation ID operation information is returned.

GetNextExecutableOperation

Based on a Site, Work Center and Resource ID the GetOperationInfo information for the next Executable Operation is returned.

GetCurrentOperations

Based on a Site, Work Center and Resource ID the GetOperationInfo information for the current ongoing activities is returned

Post data from a Work Center machine:

ReceiveOrder

Given an Operation ID items are received to a Location No. Components will be backflushed if not issued.

ReportAnalysisResult

Enables incremental registration of Quality Results to a Datapoint on an Analysis No.

StartOperation

Allows starting the machine time activities Production or Setup on a given Operation ID.

StopOperation

Stops ongoing machine time activity on a given Operation ID. Interruption causes can be registered too.

ReportQuantityComplete

Registers produced quantity for a specified Operation ID. This projection can be used to close an operation.

ReportQuantityScrap

Registers scraped quantity and scrap reason for a specified Operation ID. This projection can be used to close an operation.

StartMachineDowntime

Initiates Downtime on a Resource ID or Work Center. Downtime Cause can also be entered.

StopMachineDowntime

Stops ongoing Downtime on a Resource ID or Work Center

Prerequisites

Requires a service account with suitable Permission Set and Site access.

Machine instruction

Machine Instruction allow you to store and configure machine program parameters in IFS. Example of a Machine Instruction Guideline Text connected to a operation:

image-20220714133918545

GetOperationInfo returns the operation information containing the Machine Instruction text. Example snippet of the response:

{
...
    "MachineInstructions": [
        {
            "GuidelineDescription": "PRM: P/Recpie/123",
            "GuidelineText": "<Parameter 1: 517><Parameter 2: low> <Parameter 3: 'green'>"
        }
...
}