“Bearbeitungszentrum BAZ” - Single File and Custom Topics

This example shows an entire BAZ setup expressed within a single commissioning file and by using explicit topics on the endpoint resources (obsoleting a mapping resource).

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 (https://portal.cybus.io). If your license is not eligible to use the example Docker image, please contact Cybus Sales (sales@cybus.io).

description: >
    Entire simulated machining demo setup

metadata:
    name: Simulated Machining Center
    icon: https://www.cybus.io/wp-content/themes/cybus/img/product-slide-img.png
    provider: cybus
    homepage: https://www.cybus.io
    version: 2.0.0

parameters:
    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:
    CYBUS_MQTT_ROOT: cybus/baz-simulator

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

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

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

    currentState:
        type: Cybus::Endpoint
        properties:
            protocol: Modbus
            connection: !ref modbusConnection
            topic: current-state
            subscribe: !merge
                defaultModbusAddress:
                address: 0

    currentTool:
        type: Cybus::Endpoint
        properties:
            protocol: Modbus
            connection: !ref modbusConnection
            topic: current-tool
            subscribe: !merge
                defaultModbusAddress:
                address: 2

    coolantLevel:
        type: Cybus::Endpoint
        properties:
            protocol: Modbus
            connection: !ref modbusConnection
            topic: coolant-level
            subscribe: !merge
                defaultModbusAddress:
                address: 4

    spindleSpeed:
        type: Cybus::Endpoint
        properties:
            protocol: Modbus
            connection: !ref modbusConnection
            topic: spindle-speed
            subscribe: !merge
                defaultModbusAddress:
                address: 6

    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

Last updated

Logo

© Copyright 2024, Cybus GmbH