Skip to main content

Setup

The OctoMesh Zenon Adapter is delivered as a combination of a Windows service and a Zenon AddIn. This guide covers how to configure both components along with details on the necessary project and broker settings.

The whole software package can be downloaded from the Azure Portal.

Windows Service Setup

The Windows service is a self-contained executable that uses gRPC for communication. It is configured via an appsettings.json file placed at: C:\ProgramData\meshmakers\octo-zenon-adapter\.

{
"Adapter": {
"AdapterRtId": "667ac108ef60cc86e830e47e",
"TenantId": "maco",
"CommunicationControllerServicesUri": "http://reimar-lt.client.mm.local:5014",
"BrokerHost": "reimar-lt",
"BrokerPort": 5672,
"BrokerUserName": "guest",
"BrokerPassword": "guest",
"UseHostedService": false
}
}

Zenon

The zenon AddIn only needs one configuration - the URL to the Windows Service. That config file is provided in the Project -> Files -> Others and must be called octo-adapter.json

{
"GrpcAdapterServiceUri": "localhost:5026"
}

The Equipment model and the Variables must be exported as xml files. This files are then used to generate the Rt model via the octo-zenon-cli tool.

Creation of the Datamodel with the CLI tool

The octo-zenon-cli tool provides a command to generate an Rt model from Zenon XML files. The command is GenerateRtModel.

The GenerateRtModel command accepts the following arguments:

  • -v, --variables: Path to the Zenon Variables XML file. This argument is required.
  • -e, --equipment: Path to the Zenon Equipment XML file. This argument is required.
  • -o, --outputPath: Output path where the generated Rt model will be saved. This argument is required.
  • -ri, --rootNodeId: (Optional) Root Node ID. If provided, the root node will be set in the generated model.
  • -rt, --rootNodeType: (Optional) The CkTypeId of the Root Node. This argument must be provided if --rootNodeId is used.
  • -ei, --edgeAdapterId: (Optional) Edge Adapter ID. If provided, no Edge Adapter will be generated.
  • -mi, --meshAdapterId: (Optional) Mesh Adapter ID. If provided, no Mesh Adapter will be generated.

Octo Mesh Configuration

In order for octo mesh to be able to communicate with zenon there are some prerequisites that must be met.

  1. The Adapter must be created in the Octo Mesh Admin Panel
  2. A Tenant must be created
  3. The correct construction kits must be imported to this tenant (At least Basic, Industry.Basic, and in most cases a customer specific construction kit)
  4. The DataModel must be created with the octo-zenon-cli tool
  5. The DataModel must be imported to the tenant