LogoLogo
Contact Uscybus.io
Connectware 1.8.0
Connectware 1.8.0
  • Getting Started
    • Introduction
    • Installing Connectware
      • System Requirements
      • Acquiring your License Key
      • Installing Connectware on Docker
      • Installing Connectware on Kubernetes
    • Connectware Admin UI
    • Basic Components of Connectware
    • Connecting your First Machine
      • Your First Service Commissioning File
  • Documentation
    • Services
      • Service Commissioning Files
        • Structure of Service Commissioning Files
          • description
          • metadata
          • parameters
          • definitions
          • resources
            • Cybus::Connection
            • Cybus::Endpoint
            • Cybus:Mapping
            • Cybus::Container
              • Docker problem with network changes
            • Cybus::Link
            • Cybus::IngressRoute
            • Cybus::User
            • Cybus::Role
            • Cybus::Volume
            • Cybus::File
            • Cybus::Server
            • Cybus::Node
        • Sample Service Commissioning Files
          • Modbus
            • “Bearbeitungszentrum BAZ” - Single File
            • “Bearbeitungszentrum BAZ” - Multiple Files
            • “Bearbeitungszentrum BAZ” - Single File and Custom Topics
            • “Bearbeitungszentrum BAZ” - Agent Mode
          • Machine Condition Monitoring : OPC UA + InfluxDB + Grafana Dashboard
            • “Machine Condition Monitoring Example” - Single File
          • Machine Utilization Example (Multi file service composition) : Modbus TCP + InfluxDB + Grafana + MSS
            • “Machine Utilization Example” - Machine Connectivity
            • “Machine Utilization Example” - Dashboards with role based access permission
            • “Machine Utilization Example” - Push data to MSSQL Database
      • Services View
      • Setting Up and Configuring Services
        • Installing Services
        • Enabling Services
        • Updating Services
        • Disabling Services
        • Deleting Services
      • Service Details View
      • ServiceID
      • Inter-Service Referencing
      • Deviation
      • Service Logs
        • Logs of Individual Services
        • Logs of All Services
      • Rule Engine
        • Data Processing Rules
        • Rule Sandbox
      • API Definition
    • Resources
      • Servers
      • Containers
      • Volumes
      • Connections
      • Endpoints
      • Mappings
      • Nodes
      • API Definition
    • User Management
      • Users and Roles View
      • Users
      • Roles
      • Permissions
      • Password Policy Rules
      • Default Admin User
      • MQTT Users
      • Adding a MQTT Publish Prefix for Users
      • Multi-Factor Authentication
      • Long lived JSON Web Tokens
      • Access Permissions for Admin-UI
        • UI Access
        • Minimum Access Role Pages
      • API Definition
    • Client Registry
      • Implicit Flow
      • Explicit Flow
      • Granting Access
      • API Definition
    • Certificates
    • Monitoring
      • Data Explorer
      • Live Data
    • Workbench
      • Flows in Git Repositories
    • System Status
      • Info
      • Metrics
      • Status
      • Retrieving More System Information
      • System Health
      • API Definition
    • Backup and Restore
      • Volumes
      • User Database
    • Configuration
      • Environment Variables
      • LDAP Configuration
      • MFA Configuration
    • Agents
      • Agents View
      • Installing Agents
        • Installing Agents via Docker
        • Installing Agents via Docker Compose
        • Installing Agents via Kubernetes
        • Using Mutual TLS for Agents
      • Registering Agents in Connectware
      • Using Agents
      • Monitoring Agents
      • Troubleshooting Agents
    • Industry Protocol Details
      • ADS
        • AdsConnection
        • AdsEndpoint
      • BACnet
        • BacnetConnection
        • BacnetEndpoint
      • EtherNet/IP
        • EthernetIpConnection
        • EthernetIpEndpoint
      • Focas
        • FocasConnection
        • FocasEndpoint
      • Generic VRPC
        • GenericVrpcConnection
        • GenericVrpcEndpoint
      • Hottinger Baldwin Messtechnik (HBM)
        • HbmdaqConnection
        • HbmdaqEndpoint
      • Heidenhain DNC
        • HeidenhainConnection
        • HeidenhainEndpoint
      • HTTP/REST
        • HttpConnection
        • HttpEndpoint
      • HTTP Server
        • HttpServer
        • HttpNode
      • InfluxDB
        • InfluxdbConnection
        • InfluxdbEndpoint
      • Kafka
        • KafkaConnection
        • KafkaEndpoint
      • Modbus/TCP
        • ModbusConnection
        • ModbusEndpoint
      • MQTT
        • MqttConnection
        • MqttEndpoint
      • MSSQL
        • MssqlConnection
        • MssqlEndpoint
      • OPC DA
        • OpcdaConnection
        • OpcdaEndpoint
      • OPC UA
        • OPC UA Client
          • OpcuaConnection
          • OpcuaEndpoint
        • OPC UA Server
          • OpcuaServer
          • OpcuaNode
        • OPC UA Object Types
        • OPC UA Server References
          • OpcuaReferenceNode
          • OpcuaObjectNode
      • Siemens SIMATIC S7
        • S7Connection
        • S7Endpoint
      • Shdr
        • ShdrConnection
        • ShdrEndpoint
      • Sinumerik
        • SinumerikConnection
        • SinumerikEndpoint
      • Sopas
        • SopasConnection
        • SopasEndpoint
      • SQL
        • SqlConnection
        • SqlEndpoint
      • Werma WIN Ethernet
        • WermaConnection
        • WermaEndpoint
      • Systemstate
        • SystemstateConnection
        • SystemstateEndpoint
      • API Definition
    • Connectware Licensing
    • Changelog
      • General changes from 0.x to 1.0
        • Upgrading from 0.x to 1.0
    • Upgrade Guide
      • Upgrading from 1.x to 1.7.0
      • Upgrading from 1.x to 1.5.0
Powered by GitBook
LogoLogo

Cybus

  • Terms and Condition
  • Imprint
  • Data Privacy

© Copyright 2025, Cybus GmbH

On this page

Was this helpful?

  1. Documentation
  2. Services
  3. Service Commissioning Files
  4. Sample Service Commissioning Files
  5. Modbus

“Bearbeitungszentrum BAZ” - Multiple Files

Previous“Bearbeitungszentrum BAZ” - Single FileNext“Bearbeitungszentrum BAZ” - Single File and Custom Topics

Last updated 6 months ago

Was this helpful?

This example show a BAZ setup split in three files. One file will express the resources needed for modbus machine simulation. Another one expresses the connectivity layer. The third file expresses the resources needed for visualizing machining data on a dashboard.

Download:

The example below uses an additional Docker image provided by Cybus that requires a suitable license. You can check the current capabilities and permissions of your Connectware license in the Cybus Portal (). If your license is not eligible to use the example Docker image, please contact Cybus Sales ().

description: >
    This Service simulates a shop floor equipped with a single machine talking
    the modbus protocol

metadata:
    name: Simulated Shop Floor
    icon: https://www.cybus.io/wp-content/uploads/2017/10/for-whom1.svg
    provider: cybus
    homepage: https://www.cybus.io

parameters:
    modbusPort:
        type: integer
        default: 10502

resources:
    modbusMachine:
        type: Cybus::Container
        properties:
            image: registry.cybus.io/cybus-services/baz-machine-simulator:0.0.1
            ports:
                - !sub '${modbusPort}:10502/tcp'

Download:

description: >
    This service provides a connectivity to all endpoints provided by the
    simulated shop floor

metadata:
    name: Connectivity Layer
    icon: https://www.cybus.io/wp-content/uploads/2017/10/connection.svg
    provider: cybus
    homepage: https://www.cybus.io

parameters:
    agentName:
        type: string
        default: protocol-mapper

    modbusPort:
        type: integer
        default: 10502
    dockerBridgeNetworkIp:
        type: string
        default: 172.17.0.1
        description: The IP address of the docker bridge network gateway, see "docker network inspect bridge"

definitions:
    defaultModbusAddress:
        fc: 3
        length: 2
        interval: 1000
        dataType: uint16BE

resources:
    modbusConnection:
        type: Cybus::Connection
        properties:
            agentName: !ref agentName
            protocol: Modbus
            targetState: connected
            connection:
                host: !ref dockerBridgeNetworkIp
                port: !ref modbusPort

    currentState:
        type: Cybus::Endpoint
        properties:
            agentName: !ref agentName
            protocol: Modbus
            connection: !ref modbusConnection
            subscribe: !merge
                defaultModbusAddress:
                address: 0

    currentTool:
        type: Cybus::Endpoint
        properties:
            agentName: !ref agentName
            protocol: Modbus
            connection: !ref modbusConnection
            subscribe: !merge
                defaultModbusAddress:
                address: 2

    coolantLevel:
        type: Cybus::Endpoint
        properties:
            agentName: !ref agentName
            protocol: Modbus
            connection: !ref modbusConnection
            subscribe: !merge
                defaultModbusAddress:
                address: 4

    spindleSpeed:
        type: Cybus::Endpoint
        properties:
            agentName: !ref agentName
            protocol: Modbus
            connection: !ref modbusConnection
            subscribe: !merge
                defaultModbusAddress:
                address: 6

Download:

The example file below uses an additional Docker image provided by Cybus, see comment at the topmost file for details.

description: >

    This Service visualizes data of a the simulated-shop floor connectivity
    layer.

metadata:
    name: Data Visualization
    version: 1.0.0
    icon: https://www.cybus.io/wp-content/uploads/2017/10/for-whom3.svg
    provider: cybus
    homepage: https://www.cybus.io

parameters:
    connectivityService:
        type: string
        default: connectivitylayer

definitions:
    CYBUS_MQTT_ROOT: cybus/baz-simulator

resources:
    dashboard:
        type: Cybus::Container
        properties:
            image: registry.cybus.io/cybus-services/baz-dashboard:0.2.3
            volumes:
                - !sub '${dashboardData}:/root/.node-red'
            environment:
                MQTT_HOST: !ref Cybus::MqttHost
                MQTT_USER: !ref Cybus::MqttUser
                MQTT_PASS: !ref Cybus::MqttPassword
                MQTT_PORT: !ref Cybus::MqttPort
                HTTP_ROOT: /

    dashboardData:
        type: Cybus::Volume

    dashboardRoute:
        type: Cybus::IngressRoute
        properties:
            container: !ref dashboard
            type: http
            slug: dashboard
            target:
                path: /
                port: 1880

    dashboardLink:
        type: Cybus::Link
        properties:
            ingressRoute: !ref dashboardRoute
            href: ui/
            name: Dashboard

    mapping:
        type: Cybus::Mapping
        properties:
            mappings:
                - subscribe:
                      endpoint: !ref '${connectivityService}::currentState'
                  publish:
                      topic: !sub '${CYBUS_MQTT_ROOT}/current-state'

                - subscribe:
                      endpoint: !ref '${connectivityService}::currentTool'
                  publish:
                      topic: !sub '${CYBUS_MQTT_ROOT}/current-tool'

                - subscribe:
                      endpoint: !ref '${connectivityService}::coolantLevel'
                  publish:
                      topic: !sub '${CYBUS_MQTT_ROOT}/coolant-level'

                - subscribe:
                      endpoint: !ref '${connectivityService}::spindleSpeed'
                  publish:
                      topic: !sub '${CYBUS_MQTT_ROOT}/spindle-speed'

                # debug

                - subscribe:
                      endpoint: !ref '${connectivityService}::spindleSpeed'
                  rules:
                      - transform:
                            expression: |
                                {
                                  "value": $
                                }
                  publish:
                      topic: debug/spindleSpeed
https://portal.cybus.io
sales@cybus.io
591B
simulated-shop-floor.yml
2KB
connectivity.yml
3KB
dashboard.yml