“Bearbeitungszentrum BAZ” - Agent Mode
This example shows an entire BAZ setup expressed within a single commissioning file, using explicit topics and involving an agent for providing the connection and endpoint resources.
The name of the agent must be specified in the agentName parameter, for example connectware-agent or whatever other name has been given to the agent instance.
Download:
description: >
Entire simulated machining involving a protocol-mapper agent
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:
agentName:
type: string
description: Agent Name
default: connectware-agent
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:
agentName: !ref agentName
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: DashboardHow to deploy the agent
To run the above example, you must also deploy and run an agent, which is a container using the Connectware’s image protocol-mapper with some special environment variables (see also Agent Installation).
The first thing you need to set is the image and image tag (i.e. version) you are going to use. The agent’s container must use the protocol-mapper image of the exact same version as the Connectware, otherwise the system may run into unspecified behaviour. For the subsequent command the image tag (version) is stored as IMAGE_TAG= 1.6.2
Using the IMAGE_TAG environment variable, the following command will run the agent directly (but with the comment lines removed):
Then, complete the set up by registering the new agent’s user in the Connectware using the “Client Registry” process, see Agent Registration and Client Registry
Alternative ways to run the agent can be found on Agent Installation.
Last updated
Was this helpful?

