Virtual Modbus relay

sim-modbus-relay service simulates 8-port Modbus relay.

Features provided

The service provides either 8 coil registers (c@0-7) or a single holding (h@0) register with bits mapped to relay ports.

Deployment

Note

A Virtual Modbus port must be deployed first.

eva svc create sim.modbus1.relay1 /opt/eva4/sim/svc-tpl-sim-modbus-relay.yml

where the service configuration template is:

command: sim/sim-modbus-relay
bus:
  path: var/bus.ipc
config:
  port_svc: sim.modbus1.port
  # Modbus unit ID
  unit: 3
  # h for h@0 (holding, bit per port), c for coil 0-7
  reg: c
  # boolean (true/false) or number (0/1)
  output_type: number
user: nobody

EAPI methods

The following methods can be called via the local bus (see EAPI commons):

var.get

Description

Get relay ports status

Parameters

none

Returns

Relay ports status

Return payload example:

{
    "port1": 0,
    "port2": 0,
    "port3": 1,
    "port4": 0,
    "port5": 0,
    "port6": 1,
    "port7": 1,
    "port8": 1
}