Direct and Group Mapping

Direct Mapping

Direct mapping is a simple form of mapping data from a MSI Message into the system. In this case, each parameter of a message is mapped to exactly one IO-Item. In order to use direct mapping, the Mapping Type has to be configured as "Direct"

Mapping Type - Direct
Figure 1. Mapping Type - Direct

Open the Direct Mapping table property to configure the mapping. This table basically maps the Object Name to an Object Path. The Object name must be identical to the definition in the tag list, otherwise the mapping will fail and no messages will be sent or received.

Direct Mapping Table
Figure 2. Direct Mapping Table
It is also possible to define a property of an object in the I/O-Model as Source or Target of the information in an MSI message by using the appropriate property path.

Whenever a MSI message shall be sent to the MES System, the message processor must be notified to do so. In the case of the direct mapping, a Trigger Item is configured. Whenever this trigger item is true, a new message is generated and sent. After the message was generated, the Trigger Item is automatically reset to false. In the case of a bidirectional message, it is possible to automatically clear the trigger on reception of a new message, so that no overlapping communications can exist. This is activated with the configuration Trigger Auto Reset.

Using Central Mapping

If the central mapping shall be used, then direct mapping becomes even easier to configure. An additional parameter 'EquipmentId' must be filled in the configuration, and the flag 'use central mapping' must be activated. And for all object names in the Taglist, there must be an entry for EquipmentId= <EquipmentId> and Tag= <ObjectName> in the central mapping table. The Path from this entry will then be used for this individual mapping.

Group Mapping

Group mapping is used if there is a group of identical or exchangeable devices configured within the system. In order to qualify as 'exchangeable', the layout of the I/O Items (regarding MSI) must be identical, only the base path may differ (for example, they are located under a different connector).

In order to use group mapping, the Mapping Type has to be configured to "Group" which will change the available Options below.

First of all, the device which is to receive or send a message has to be identified. To do this, open the Device List table property.

Device List Table Property
Figure 3. Device List Table Property

The columns in the Device List table should be configured as follows:

  • DeviceName: Name of the device used in the message (if sent from MES to Shopfloor)

  • Device Path: this is the path of the device, all tags must be below this path

  • Trigger Item: This Trigger Item is checked and - if set to true - a message will be sent. After the generation of the message, the Trigger Item is reset automatically.

If a message is received and there is no matching 'DeviceName' in the DeviceList, this message is rejected.

In the case of a bidirectional message, it is possible to automatically clear the trigger on reception of a new message, so that no overlapping communications can exist. This is activated with the configuration Trigger Auto Reset.

It is important that the name of a device sent from MES to Shopfloor matches the DeviceName in this table exactly, otherwise the device will not be found and the message can not be received correctly.

In addition to the list of the devices, it is important to configure how the parameters shall be mapped to the device in question. To do this, open the Group Mapping table property:

Group Mapping Table Property
Figure 4. Group Mapping Table Property
  • ObjectName: name of the parameter in the TagList.

  • TagName: this is the second half of the path that will be addressed for that information. The full path is calculated as DevicePath .. "/" .. TagName. This allows for structured tag layouts, where tags are defined in the subfolder of the device folder.

  • DeviceSelector: this flag identifies which ObjectName shall be used as DeviceSelector; the first one found will be used. The content of the parameter defined by that ObjectName must match one of the DeviceNames in the Device List table!

The DeviceSelector is still functional, but it is obsolete. Instead of specifying the DeviceSelector, the related line in the Taglist (same ObjectName) shall be marked as 'Shopfloor Qualifier'.

This also cross-checks that the value at the path related to that ObjectName matches the value given in the MSI Message. If these two values don’t match, the message is not received, but rejected.

Using Central Mapping

The central mapping can also be used in combination with the group mapping, but this is a bit more complicated, as the group requires message specific information, which does well fit into a central mapping.

If the central mapping is used then the 'DeviceName' of the Device List must be configured in order to identify which devices are allowed to receive this message. If a message is received and there is no matching 'DeviceName' in the DeviceList, this message is rejected. Additionally the 'Trigger Item' must be configured in the case of a message with 'Receive' or 'Bidirection' Communcation Mode. The 'Device Path' of the Device List is ignored for Central Mapping.

The Group Mapping is ignored, but the in the TagList, the line which identifies the DeviceName must be marked as 'Shopfloor Qualifier'. This also lead to a double check of the DeviceName, only if the content of the message matches the value at the related path, the message is accepted.

It must also be assured, that the combination of 'DeviceName' and 'ObjectName' can be found in the central mapping as 'EquipmentId' and 'Tag'.