Ropam Elektronik

MODBUS TCP/IP

MODBUS TCP/IP zaimplementowany jest w centralach:
– NeoGSM-IP-64
– OptimaGSM + AP-IP.
Protokół obsługuje następujące typy danych:
–  IR  (input registers),
–  CS  (coil status),
–  IS  (input status).
oraz następujące funkcje protokołu MODBUS:
– Read Coil Status  (funkcja  01),
– Read Input Status (funkcja  02),
– Read Input Registers (funkcja 04),
– Write (Force) Single Coil  (funkcja  05).
Port MODBUS TCP/IP: 502 (SLAVE: 255)
Protokół pozwala na integracje centrali:
– ze sterownikami PLC np. odczyt I/O, sterowanie,
– z systemami inteligentnego domu np. alarm, odczyt czujek, sterowanie wyjściami,
– z serwerami  np. Home Assistant odczyt stanu czujek. sterowanie wyjściami, odczyt temperatury, wilgotności, CO2, TVOC itd.
przykładowy kod dla Home Assistant *(dla NeoGSM-IP-64):

# Example configuration.yaml entry for a TCP connection
modbus:
name: hub1
type: tcp
host: 192.168.1.125
port: 502

# Example configuration.yaml entry
binary_sensor:
– platform: modbus
scan_interval: 1
inputs:
– name: czujka I1
hub: hub1
slave: 255
address: 0
input_type: discrete_input

# Example configuration.yaml entry
switch:
platform: modbus
scan_interval: 1
coils:
– name: sterowanie O1
hub: hub1
slave: 255
coil:0

# Example configuration.yaml entry
–  platform: modbus
registers:
– name: temperatura_1
hub: hub1
unit_of_measurement: °C
scale: 0.1
precision: 1
register_type: input
slave: 255
register: 0

registers:
– name: wilgotnosc_1
hub: hub1
unit_of_measurement: %RH
scale: 1
precision: 1
register_type: input
slave: 255
register: 8

registers:
– name: powietrze_TVOC
hub: hub1
unit_of_measurement: ppb
scale: 1
precision: 1
register_type: input
slave: 255
register: 16

registers:
– name: powietrze_CO2
hub: hub1
unit_of_measurement: ppm
scale: 1
precision: 1
register_type: input
slave: 255
register: 17

registers:
– name: zasieg_GSM

hub: hub1
slave: 255
register: 19
register_type: input

registers:
– name: zasilanie _DC

hub: hub1
slave: 255
register: 21
scale: 0.001
precision: 1
unit_of_measurement: V
register_type: input