14 modbus.get 参数

概述

下表显示了 modbus.get 监控项 参数的详细信息。

参数

Parameter Description Defaults Example
endpoint 端点的协议和地址,定义为 protocol://connection_string

可能的协议值:rtuascii(仅 Agent 2)、tcp

连接字符串格式:

使用 tcp 时 - address:port
使用串行线路时:rtuascii - port_name:speed:params
其中
'speed' - 1200、9600 等
'params' - 数据位(5、6、7 或 8)、奇偶校验(n、e 或 o,分别表示无校验/偶校验/奇校验)、停止位(1 或 2)
protocol: 无

rtu/ascii 协议:
port_name: 无
speed: 115200
params: 8n1

tcp 协议:
address: 无
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)
3
address 第一个寄存器、线圈或输入的地址。

如果 'function' 为空,则 'address' 应位于以下范围内:
线圈 - 00001 - 09999
离散输入 - 10001 - 19999
输入寄存器 - 30001 - 39999
保持寄存器 - 40001 - 49999

如果 'function' 不为空,则 'address' 字段范围为 0 到 65535,并且将不作修改直接使用(PDU)
空 function: 00001

非空 function: 0
9999
count 将从设备读取的连续 'type' 数量,其中:

对于 Coil 或 Discrete input,'type' = 1 bit
对于其他情况:(count*sizeof(type))/2 = 实际读取的寄存器数量
如果 'offset' 不为 0,则该值将加到“实际数量”上
“实际数量”的可接受范围为 1:65535
1 2
type 数据类型:

对于 Read Coil 和 Read Discrete Input - bit

对于 Read Holding Registers 和 Read Input Registers:
int8 - 8bit
uint8 - 8bit(无符号)
int16 - 16bit
uint16 - 16bit(无符号)
int32 - 32bit
uint32 - 32bit(无符号)
float - 32bit
uint64 - 64bit(无符号)
double - 64bit
bit
uint16
uint64
endianness 字节序类型:
be - 大端序
le - 小端序
mbe - 中间大端序
mle - 中间小端序

限制:
对于 1 bit - be
对于 8 bits - be、le
对于 16 bits - be、le
be le
offset 从 'address' 开始计算、其结果将被丢弃的寄存器数量。

每个寄存器的大小为 16bit(用于支持不支持随机读取访问的设备)。
0 4