Skip to content

Configuring UNS Export Integration#

This guide walks administrators through the end-to-end configuration of the UNS Export Integration, which publishes Canonical Data Model (CDM) events from the MES to an MQTT broker following the Unified Namespace (UNS) pattern.

Overview#

The UNS Export Integration connects the Critical Manufacturing MES event pipeline to external systems through a standardized, real-time messaging layer. The integration uses:

  • Canonical Data Model (CDM) events as the data source — standardized, ISA-95-aligned manufacturing events generated by the MES.
  • Light CDM Events — a simplified variant optimized for real-time performance, containing only essential event properties.
  • MQTT (Message Queuing Telemetry Transport) — a lightweight Publish/Subscribe protocol that delivers events to the UNS broker.

The architecture flow is:

flowchart LR
    %% Node Definitions with specialized shapes
    A["<b>MES HOST</b><br/>(Source System)"]
    B["<b>HouseKeeper<br/>Light CDM Builder</b>"]
    C(["<b>Kafka</b><br/>(Event Bus)"])
    E["<b>UNS Connector</b>"]
    Broker[("<b>External MQTT<br/>Broker</b>")]
    UNS{{"<b>Unified Namespace</b><br/>(Topic Hierarchy)"}}

    subgraph MES ["Critical Manufacturing MES"]
        direction LR
        A -->|"Replication<br/>Events"| B   
        B -->|"Light CDM<br/>Events"| C
        C -->|"Event<br/>Trigger"| E
    end

    %% External Connection
    E -->|"MQTT Publish"| Broker
    Broker --- UNS

    %% Styling & Colors
    classDef mesNode fill:#e1f5fe,stroke:#01579b,stroke-width:2px,color:#01579b;
    classDef infraNode fill:#fff3e0,stroke:#e65100,stroke-width:2px,color:#e65100;
    classDef connector fill:#f3e5f5,stroke:#4a148c,stroke-width:2px,color:#4a148c;
    classDef unsNode fill:#e8f5e9,stroke:#1b5e20,stroke-width:2px,color:#1b5e20;

    class A,B,D mesNode;
    class C,Broker infraNode;
    class E connector;
    class UNS unsNode;

    %% Subgraph Styling
    style MES fill:#fafafa,stroke:#333,stroke-dasharray: 5 5,color:#333

When to use this guide

Use this guide if you need to configure the UNS Export Integration for the first time or reconfigure it after an environment change. For a hands-on tutorial covering a complete example scenario, see Real-Time Shop-Floor Insights with UNS and MQTT.

Prerequisites#

Before configuring the UNS Export Integration, verify that:

Requirement Details
License The IoT Data Platform Advanced module must be included in your license.
MES Analytics The MES Analytics feature must be enabled during installation.
MQTT Broker An MQTT broker (for example, EMQX, HiveMQ, or Mosquitto) must be deployed and reachable from the MES environment.
Network The MES containers must be able to reach the MQTT broker host and port.
Cortex The Cortex chatbot must be available for creating automation controllers through the guided business scenario.

Step 1: Enable Light CDM Events and UNS#

Light CDM Events and UNS connectivity are configured during the MES environment installation or through a subsequent environment update.

  1. Navigate to the DevOps Center portal.
  2. Open the target environment configuration.
  3. In the Data Platform section, configure:

    Setting Value Description
    Light CDM Events > Enabled true Activates the HouseKeeper CDM Builder Light container, which generates simplified CDM events optimized for real-time use.
    UNS > Enabled true Deploys the Data Platform UNS Connector container, enabling MQTT publishing.
    MQTT Broker Address Hostname or IP The address of the target MQTT broker (for example, mqtt-broker.internal or 192.168.1.50).
    MQTT Broker Port Port number Typically 1883 for unencrypted or 8883 for TLS-encrypted connections.
    MQTT Broker Username Username Credentials for broker authentication.
    MQTT Broker Password Password Credentials for broker authentication.

    Table: Data Platform UNS Configuration Parameters

  4. Save the configuration and apply the environment update.

Warning

Enabling Light CDM Events and UNS triggers the deployment of the HouseKeeper CDM Builder Light and the Data Platform UNS Connector containers, respectively. If these containers are not visible in the Service Resources step, refresh the browser to update the list.

For detailed installation steps, see Installation.

Step 2: Verify Light CDM Events Availability#

Critical Manufacturing MES includes several CDM event definitions. Only those with the Has Light Variant property enabled can be used with the UNS Export Integration.

The following events have light variants out of the box:

To verify which events are available in your environment:

  1. Navigate to Data Platform > IoT Event Definition.
  2. Check the Has Light Variant column. Only events marked as enabled can be selected during automation controller creation.

Note

The properties included in the light variant for each event are documented in the MES Canonical Event Definition ⧉. Light events include only essential properties, balancing efficiency with completeness.

Enriching Light Events with Additional Properties#

If you need data beyond the default set of properties in a light event, you can enable additional properties per entity type.

  1. Navigate to Administration > Entity Type.
  2. Select the relevant entity type (for example, Resource).
  3. Open the Properties tab and select Manage.
  4. Locate the desired property (for example, CostPerHour) and enable the Is To Enrich CDM toggle.
  5. Select Update.
  6. Select Generate on the top ribbon, then confirm in the wizard to regenerate the schema.

Warning

After enabling additional properties, you must regenerate the entity type schema. The system will not include the new properties in CDM events until regeneration is complete.

Step 3: Create the Automation Controller#

The UNS Export Integration business scenario uses Cortex, the MES chatbot, to guide you through automation controller creation.

Accessing the Business Scenario#

  1. Navigate to the Data Platform menu entry.
  2. Open the Activity Center and select the Chatbot tab.
  3. If the chatbot was previously opened in another scope, select Restart to reload business scenarios for the Data Platform scope.
  4. Select the UNS Export Integration business scenario and confirm with the send icon.

Note

The UNS Export Integration business scenario is included with installation when MES Analytics is enabled. It becomes functional only when Light CDM Events are enabled and the UNS with its MQTT broker is properly configured.

Naming the Controller#

The system prompts you to provide a name for the new automation controller. Choose a clear, descriptive name that reflects its purpose and the target environment. Examples:

Naming Convention Example
Environment-based Production-UNS-01
Scope-based ResourceEvents-UNS-01
Facility-based SiteA-UNS-Export

Selecting IoT Event Definitions#

The system displays only events with the Has Light Variant enabled. You can select one or more IoT event definitions:

  1. Select the first event definition (for example, ResourceStateChange).
  2. When prompted, select Yes to add more events (for example, MaterialOperations).
  3. Select No when the selection is complete.
  4. Confirm the creation of the Master Data Package by selecting Yes.

The system generates a Master Data Package containing all the necessary configuration objects.

Step 4: Load the Master Data Package#

After Cortex generates the package:

  1. A link to the Master Data Package is provided in the chat. Open it.
  2. On the top ribbon, select Run > Load.
  3. Select the AutomationController object and select Load.
  4. Wait for the success confirmation message.

The load creates the following objects:

Object Description
AutomationController The controller entity with scope DataPlatform, containing the task packages required for CDM event processing and MQTT publishing.
AutomationControllerWorkflow The Setup workflow that defines the event processing pipeline: trigger, transform, and publish.
AutomationControllerIoTEventDef The bindings between the controller and the selected CDM event definitions (light variants).

Step 5: Verify the Deployment#

After loading the Master Data Package:

  1. Navigate to Data Platform > Data Platform Workflows.
  2. Confirm that the new automation controller object appears in the list.
  3. Verify the controller status shows as active.

The automation controller workflow follows three steps:

  1. Trigger on job execution — starts automatically when a configured CDM event occurs.
  2. Execute custom code — transforms the raw CDM event data and constructs the MQTT topic following the UNS hierarchy pattern.
  3. Send to MQTT — publishes the transformed payload via the UnsExportIntegration.SendToMqtt distributed message action to the MQTT broker.

Step 6: Validate MQTT Connectivity#

To confirm that CDM events are reaching the MQTT broker:

  1. Connect to the MQTT broker using an MQTT client such as MQTT Explorer or MQTTX ⧉.
  2. Use the same host address, port, and credentials configured in Step 1.
  3. Subscribe to the root topic # (all topics) or a specific hierarchy level (for example, +/+/+/+/ResourceStateChange).
  4. Perform a manufacturing operation in MES — for example, change a resource state from Standby to Productive.
  5. Verify that the MQTT client receives the published event within seconds.

Published events follow this topic pattern:

Enterprise/Site/Area/Resource/Event

For example:

DefaultEnterprise/DefaultSite/Cookie-Manufacturing/Baker-01/ResourceStateChange

Tip

Spaces in entity names are replaced with hyphens (-) in MQTT topics for compatibility. If an entity is not associated with an Enterprise, Site, or Area, default values are used (for example, DefaultEnterprise).

Post-Configuration Tasks#

Monitoring Event Flow#

After configuration, regularly verify that events are flowing correctly:

  • MQTT Client — subscribe to relevant topics and verify message delivery and payload structure.
  • Data Platform Workflows — check the automation controller status in the MES for errors or warnings.
  • Broker Dashboard — if your MQTT broker provides a management dashboard (for example, EMQX Dashboard, HiveMQ Control Center), monitor connected clients, message throughput, and delivery statistics.

Adding or Removing Event Subscriptions#

To modify which CDM events are published to the MQTT broker:

  1. Use Cortex to create a new automation controller with the desired event selections, or
  2. Modify the existing automation controller's IoT Event Definition bindings in Data Platform > Data Platform Workflows.

Scaling Considerations#

Consideration Recommendation
High event volume Deploy the MQTT broker in a clustered configuration for high availability.
Multiple sites Create separate automation controllers per site or area to manage topic scope.
Security Use TLS-encrypted connections (port 8883 by default) and configure broker-level ACLs for topic-level access control.
Retention Configure MQTT retained messages and broker persistence settings based on consumer requirements.

Table: UNS Scaling Recommendations