Skip to main content

Overview

The OctoMesh Zenon Adapter creates a seamless connection between the Zenon runtime and OctoMesh. This integration uses a dual-component architecture to enable real-time data transfer of Zenon variables through gRPC communication.

The adapter consists of two main components:

  • Windows Service
    Runs as a background service to connect to octo mesh and provide a endpoint for communication with the AddIn. The service integrates with the Windows Service Control Manager.

  • Zenon AddIn
    Installed directly within a Zenon project, the AddIn reads variables from Zenon and sends the data to OctoMesh. It is configured via an octo-adapter.json file placed in the Zenon project.

In addition to the adapter components, a command-line tool—Octo.Edge.Zenon.Importer.Cli—is provided to convert Zenon XML files (for variables and equipment) into a runtime model (Rt model) for import into OctoMesh.

Key Features

  • Architecture:
    A combination of a Windows service and a Zenon AddIn communicating via gRPC over localhost.

  • Functionality:
    Reads/Writes Zenon variables, CEL events and Alarms and forwards data to OctoMesh.

  • Importer CLI:
    Converts Zenon XML files into a YAML Rt model, with options for setting a root node and adapter IDs.

How It Works

  1. Windows Service:

    • Initializes at system startup as a service.
    • Listens on HTTP/2 (via Kestrel) on a specified port.
    • Reads its configuration from an appsettings.json file located at C:\ProgramData\meshmakers\octo-zenon-adapter\.
  2. Zenon AddIn:

    • Reads the configuration from octo-adapter.json within the Zenon project.
    • Connects to the Windows service via gRPC (using the URI specified in the JSON file).
  3. Importer CLI:

    • Run via the command octo-zenon-cli -c GenerateRtModel with required arguments for the Zenon variables and equipment XML files.
    • Outputs a runtime model YAML file that can be imported into OctoMesh.

Next Steps