Skip to Content
Docs其他1001 Modbus Slave 配置手册

版本: v1.0 修改日期: 2026-05-29 本手册指导实施人员、项目交付人员与第三方对接人员,在 viSCADA 平台上完成 Modbus Slave 从站设备的接入与配置,并对外提供 Modbus TCP / Modbus RTU Over TCP 读写服务。

1 文档信息

内容
文档名称viSCADA Modbus Slave 配置手册
适用平台viSCADA(需已部署 Modbus Slave 服务)
适用对象实施人员、项目交付人员、第三方对接人员
版本V1.0
编写日期2026-03-27

2 使用场景

本手册适用于以下场景:

  • 在 viSCADA 平台创建一个 Modbus 从站设备;
  • 将平台物模型属性映射为 Modbus 寄存器地址;
  • 对外提供 Modbus TCP 或 Modbus RTU Over TCP 读写服务;
  • 与第三方系统、串口服务器或下游主站系统进行数据交互。

3 术语与基础概念

3.1 平台术语

术语说明
设备类平台中的设备模板,用于定义协议、物模型、技术参数等通用能力
设备实例基于设备类创建的具体设备对象,代表实际对外提供 Modbus Slave 服务的对象
物模型属性平台中设备的数据点,用于映射 Modbus 寄存器

3.2 Modbus 相关术语

术语地址前缀读写属性常见用途
线圈寄存器(Coil)0x读写开关量控制、布尔状态
离散输入(Discrete Input)1x只读外部输入状态
输入寄存器(Input Register)3x只读模拟量采集值
保持寄存器(Holding Register)4x读写参数配置、数值下发

ℹ️ slaveId 为 Modbus 从站地址,用于主站识别从站设备;slaveUrl 为 Modbus Slave 服务地址。

4 配置流程总览

建议按以下顺序完成配置:

各步骤分别对应本手册的第 5~9 章,第 10 章提供完整配置示例,第 11 章为配置完成后的校验方法。

5 创建设备类

5.1 操作入口

平台后台 → 「设备管控」「设备类」「新增设备类」

5.2 必填配置项

字段说明配置要求
通讯协议协议类型必须选择 MODBUS
设备通讯类型通讯方式必须选择 直连设备
设备类名称业务可读名称按业务规范填写
设备类标识设备类唯一标识按命名规范填写,建议全局唯一
标准化名称数仓/业务线标准名按业务线标准填写

该步骤用于创建一个支持 Modbus 协议的从站设备模板,后续物模型属性、技术参数及设备实例均基于该设备类进行配置。

设备类新增界面 图 1 设备类新增界面

6 配置物模型属性与寄存器地址映射

6.1 操作入口

已创建的从站设备类 → 「物模型」「添加属性」

该步骤用于建立 Modbus 寄存器地址平台物模型属性 的对应关系,使平台属性可被主站通过指定寄存器地址读写。

6.2 地址标识填写规范

属性标识按 寄存器地址:数据类型 格式填写:

0x0001:BOOL 4x0001:INT 4x0005:REAL 4x0007:INT

属性标识配置示例 图 2 属性标识配置示例

6.3 属性配置要求

字段说明配置要求
属性标识寄存器地址 + 数据类型按 6.2 规范填写
读写模式读/写能力统一选择 读写
标准化名称数仓字段名按业务规范填写
数据类型平台侧类型按下表选择

数据类型选择参考:

Modbus 标识示例推荐平台数据类型适用场景
0x0001:BOOLboolean开关量
4x0001:INTint整数型寄存器
4x0005:REALdouble / float浮点数
4x0007:INTint一般数值参数

属性读写模式与数据类型配置 图 3 属性读写模式与数据类型配置

6.4 关键约束

⚠️ 以下约束为强制要求,违反将导致读写错误或数据冲突。

  1. 寄存器地址必须项目内全局唯一:同一项目中的 modbus-slave 实例按”一个设备”统一管理,寄存器地址不可重复,否则会造成地址冲突。
  2. 地址区间与数据类型必须匹配:布尔量应配置在线圈区(0x),数值型参数应配置在保持寄存器区(4x),不可错配。
  3. 同一寄存器建议仅允许一个主站读写:多主站并发操作同一地址,可能导致竞争写入、数据覆盖或状态异常。

7 创建设备实例

7.1 操作入口

平台后台 → 「设备管控」「设备管理」 → 选择对应设备类 → 「新增设备」

基于已创建的 Modbus 从站设备类创建实例,该实例代表实际对外提供 Modbus Slave 服务的设备对象。

7.2 必填字段

字段说明示例值
设备名称现场或项目名称ModbusSlave_01
设备标识唯一标识,便于检索和接口调用modbus_slave_01
标准化名称业务线标准名PID
所属设备类关联的设备类选择已创建的 Modbus 从站设备类

设备实例创建界面 图 4 设备实例创建界面

8 配置设备技术参数

8.1 操作入口

已创建的从站设备 → 「技术参数」「新增项」

8.2 必填参数

参数名参数值说明
slaveUrltcp://modbus-slave:33502Modbus Slave 服务地址,固定填写
slaveId1Modbus 从站地址,默认值

⚠️ 如需修改 slaveId,必须同步调整对应配置文件并重启服务,否则平台配置与服务实际地址不一致。

技术参数配置示例 图 5 技术参数配置示例

8.3 可选参数

除必填项外的技术参数如无特殊需求,建议保持默认(不启用)。

参数名说明启用建议
proxy是否通过代理转发通讯无特殊需求不启用
sharedChannel是否共享通道无特殊需求不启用
byteOrder字节序设置仅在多字节数据解析异常时调整
ForceContiguousRead是否强制连续读取仅在特定设备兼容场景下启用

💡 各类寄存器读写长度阈值参数,应结合实际数据规模与性能需求填写。若项目存在第三方协议适配差异,建议先联调测试后再调整可选参数。

9 对外服务与第三方对接

完成上述配置后,可根据实际场景向下游系统提供服务地址与端口。

9.1 服务端口

服务地址协议类型适用场景
modbus-slave:33502Modbus TCPviSCADA 平台与 modbus-slave 服务之间的内部读写
modbus-slave:502Modbus RTU Over TCP串口服务器对接,常用于串口透传场景

9.2 第三方对接流程

如需对接第三方系统,按以下步骤操作:

  1. 为 modbus-slave 服务配置对外 IP 映射或端口映射;
  2. 确认映射后的公网或局域网访问地址;
  3. 向对接方提供最终可访问的 IP + 端口;
  4. 明确使用协议类型:Modbus TCP 或 Modbus RTU Over TCP。

9.3 安全控制要求

对外开放端口时,必须同时落实以下控制措施:

措施说明
来源 IP 限制仅允许授权主站访问,避免未授权访问
服务隔离非必要场景不直接暴露内部服务地址
端口纳管对外映射端口纳入项目安全管理范围
写入控制若存在写入能力,需严格控制第三方主站数量与权限

10 完整配置示例

以下为一个标准的最小配置示例,可作为实施模板。

10.1 设备类

字段
设备类名称ModbusSlave 标准类
通讯协议MODBUS
设备通讯类型直连设备

10.2 物模型属性

属性名称属性标识数据类型读写模式
启停控制0x0001:BOOLboolean读写
运行状态1x0001:BOOLboolean读写
温度采集3x0001:INTint读写
设定值4x0001:INTint读写
浮点参数4x0005:REALdouble读写

10.3 设备实例

字段
设备名称ModbusSlave_01
设备标识modbus_slave_01

10.4 技术参数

参数
slaveUrltcp://modbus-slave:33502
slaveId1

10.5 对外对接信息

协议访问地址
Modbus TCP映射后 IP + 端口
Modbus RTU Over TCP映射后 IP + 端口

11 配置校验

完成配置后,按以下三步进行校验。

11.1 平台侧检查

  • 设备类已绑定 MODBUS 协议;
  • 物模型属性已全部创建;
  • 寄存器地址无重复;
  • 设备实例已绑定正确的设备类;
  • slaveUrlslaveId 填写正确。

11.2 通讯验证

使用第三方 Modbus 调试工具,重点确认:

  • 是否可连接目标 IP 与端口;
  • 是否能按配置的 slaveId 正常访问;
  • 是否可读取已映射的寄存器;
  • 对可写寄存器写入后,平台属性是否同步更新。

11.3 读写验证示例

以 10.2 的配置为例,验证:

操作预期结果
读取 0x0001返回布尔值
写入 4x0001平台数值同步更新
读取 4x0005浮点数正常解析

12 配置要点速查

实施过程中须重点关注以下三项:

要点说明对应章节
寄存器地址必须项目内全局唯一重复会导致地址冲突6.4
slaveUrlslaveId 必须正确配置否则平台与服务地址不一致8.2
对外端口开放前必须完成安全控制与联调避免未授权访问与第三方对接失败9.3
Last updated on