Skip to main content

功能块:ModbusServer

图书馆: IoDrvModbusTCPSlave

该功能块通过 Modbus TCP 处理多达 10 个并行客户端连接请求。 Modbus 请求在映射输入和保持寄存器的数据范围内工作。

支持以下 Modbus 功能码:

  • 0x01 读取线圈

  • 0x02 读取离散输入

  • 0x03 读取保持寄存器

  • 0x04 读取输入寄存器

  • 0x05 写单线圈

  • 0x06 写单个寄存器

  • 0x0F 写入多个线圈

  • 0x10 写多个寄存器

  • 0x17 读/写多个寄存器

ModbusServer 功能块使用在 Modbus TCP 服务器的设备编辑器选项卡上配置的参数。

27. 输入 (VAR_INPUT)

名称

数据类型

初始值

描述

wPort

WORD

502

服务器端口(TCP/IP 协议栈)502 是 Modbus 默认

pInputData

POINTER TO WORD

指向字的指针;指向 Modbus 输入寄存器的映射

uiInputDataSize

UINT

1024

输入数据数组的长度(每个寄存器的字数):默认值:1024

pOutputData

POINTER TO WORD

指向字的指针;指向 Modbus 保持寄存器的映射

uiOutputDataSize

UINT

输出数据数组的长度(每个寄存器的字数):

tCurrentTime

UDINT

当前 PLC 时间(以毫秒为单位) 如果配置了超时,则必须在执行功能块之前对其进行更新。

tTimeout

UDINT

超时(毫秒)。如果它不为零并且在超时之前没有发生 Modbus 写入错误,则输出数据设置为零。

xEnable

BOOL

FALSE

开始请求处理的标志

xReset

BOOL

FALSE

重新启动与服务器的正常通信;重置上升沿的状态字和错误位



28. 输出 (VAR_OUTPUT)

名称

数据类型

初始值

描述

xBusy

BOOL

FALSE

请求正在进行时为 TRUE

xError

BOOL

FALSE

有关发现的错误的信息

byClientConnections

BYTE

0

连接数