14 Параметры modbus.get

Обзор

В таблице ниже представлены детальные описания параметров элемента данных.

Параметры

Параметр Описание По умолчанию Пример
endpoint Протокол и адрес конечной точки, задаваемые как protocol://connection_string

Возможные значения протокола: rtu, ascii (только Agent 2), tcp

Формат строки подключения:

для tcpaddress:port
для последовательной линии: rtu, asciiport_name:speed:params
где
'speed' — 1200, 9600 и т. д.
'params' — биты данных (5,6,7 или 8), четность (n,e или o для none/even/odd), стоповые биты (1 или 2)
protocol: none

rtu/ascii protocol:
port_name: none
speed: 115200
params: 8n1

tcp protocol:
address: none
port: 502
tcp://192.168.6.1:511
tcp://192.168.6.2
tcp://[::1]:511
tcp://::1
tcp://localhost:511
tcp://localhost
rtu://COM1:9600:8n
ascii://COM2:1200:7o2
rtu://ttyS0:9600
ascii://ttyS1
slave id Адрес устройства Modbus, для которого предназначен запрос (от 1 до 247), см. MODBUS Messaging Implementation Guide (стр. 23)

tcp-устройство (не GW) будет игнорировать это поле
serial: 1

tcp: 255 (0xFF)
2
function Пустое значение или значение поддерживаемой функции:

1 — Read Coil,
2 — Read Discrete Input,
3 — Read Holding Registers,
4 — Read Input Registers
empty 3
address Адрес первого регистра, coil или input.

Если 'function' пуст, то 'address' должен находиться в диапазоне:
Coil — 00001 - 09999
Discrete input — 10001 - 19999
Input register — 30001 - 39999
Holding register — 40001 - 49999

Если 'function' не пуст, поле 'address' будет иметь значение от 0 до 65535 и использоваться без изменений (PDU)
empty function: 00001

non-empty function: 0
9999
count Количество последовательных значений 'type', которые будут считаны с устройства, где:

для Coil или Discrete input 'type' = 1 бит
для остальных случаев: (count*sizeof(type))/2 = фактическое количество регистров для чтения
Если 'offset' не равен 0, его значение будет добавлено к 'фактическому количеству'
Допустимый диапазон для 'фактического количества' — 1:65535
1 2
type Тип данных:

для Read Coil и Read Discrete Input — bit

для Read Holding Registers и Read Input Registers:
int8 — 8 бит
uint8 — 8 бит (без знака)
int16 — 16 бит
uint16 — 16 бит (без знака)
int32 — 32 бита
uint32 — 32 бита (без знака)
float — 32 бита
uint64 — 64 бита (без знака)
double — 64 бита
bit
uint16
uint64
endianness Тип порядка байтов:
be — Big Endian
le — Little Endian
mbe — Mid-Big Endian
mle — Mid-Little Endian

Ограничения:
для 1 бита — be
для 8 бит — be,le
для 16 бит — be,le
be le
offset Количество регистров, начиная с 'address', результат чтения которых будет отброшен.

Размер каждого регистра составляет 16 бит (необходимо для поддержки оборудования, которое не поддерживает произвольный доступ при чтении).
0 4