VFBOX 网关实现 Modbus 传感器数据接入 SNMP 机房监控平台项目案例

VFBOX 网关实现 Modbus 传感器数据接入 SNMP 机房监控平台项目案例

一、项目背景与需求分析

某数据中心机房需要对环境参数进行实时监控,现场已部署温湿度传感器、水浸传感器及 UPS 状态监测装置。这些末端传感器均采用Modbus RTU 串口通信协议,通过 RS485 总线与现场设备相连。

机房现有的集中监控平台(如动环监控系统、NMS 网管平台)统一采用SNMP 协议进行数据汇聚,平台通过轮询 SNMP Agent 的方式获取各子系统数据。因此,亟需一款协议转换网关,实现:

  1. 南向采集:作为 Modbus 主站,实时采集各传感器寄存器数据;
  2. 北向转发:作为 SNMP Agent,将采集到的数据映射为 SNMP MIB 节点,供监控平台通过 SNMP 协议读取。

经过技术评估,选用VFBOX 系列协议转换网关实现 Modbus 到 SNMP 的协议转换。


二、系统方案设计

2.1 网络拓扑

┌─────────────────┐ RS485 ┌─────────────────┐ Ethernet ┌─────────────────┐ │ 温湿度传感器 │◄──────┬─────────►│ │◄─────────────────►│ 机房监控平台 │ │ (Modbus RTU) │ │ │ VFBOX 网关 │ SNMP v1/v2c │ (SNMP Manager) │ └─────────────────┘ │ │ (协议转换) │ └─────────────────┘ │ │ │ ┌─────────────────┐ │ │ IP: 192.168.1.199 │ │ UPS 监测模块 │◄──────┘ │ │ ┌─────────────────┐ │ (Modbus RTU) │ └─────────────────┘ │ 工程师站 │ └─────────────────┘ │ (VFBOX Studio) │ │ 192.168.1.198 │ └─────────────────┘

2.2 设备选型

根据现场接口需求,选用VB303-1100#128-1-D型号网关(或同系列满足接口要求的型号):

组件选型说明
网关硬件VB303-1100:1×Ethernet(接监控平台)、1×RS485/RS232(接 Modbus 传感器)
采集点数128 点(满足机房 20~30 个环境参数采集需求)
采集协议K=1(Modbus RTU 主站)
转发协议L=D(SNMP Agent 服务)
供电DC 12V/2A 工业电源

三、硬件安装与接线

3.1 电源接线

网关采用直流 9~36V 宽压供电,将 12V 电源正极接网关端子V+,负极接V-,并确保接地端子可靠连接大地。

3.2 串口接线(Modbus 侧)

将温湿度传感器、UPS 监测模块的 RS485 接口并联接入网关COM1端口:

  • 传感器A+→ 网关A
  • 传感器B-→ 网关B

注意:RS485 总线末端需加装 120Ω 终端电阻,确保通信稳定。网关默认串口参数为9600bps,8 数据位,无校验,1 停止位,与传感器保持一致。

3.3 网口接线(SNMP 侧)

将网关Ethernet1口通过网线接入机房管理交换机,默认 IP 为192.168.1.199。工程师配置电脑临时设置为192.168.1.198,用于工程配置与调试。


四、软件配置流程(VFBOX Studio)

在工程师站(192.168.1.198)安装VFBOX Studio配置软件,以管理员权限运行,按以下步骤配置。

4.1 新建工程并连接网关

  1. 打开 VFBOX Studio,点击“新建工程”
  2. 输入工程名称(如DataCenter_ModbusToSNMP);
  3. 设备类型选择与实际网关型号一致(如VB30X-1100);
  4. 点击“网关 IP 地址”,输入192.168.1.199
  5. 点击“授权-查看授权”,确认网关支持 Modbus 采集与 SNMP 转发功能。

4.2 配置 Modbus 采集(南向)

以采集温湿度传感器数据为例:

步骤 1:添加采集设备

  • 左侧导航栏点击“新建设备”
  • 驱动类型选择“Modbus RTU”
  • 输入设备名称,如Sensor_TH_01
  • 选择连接接口为COM1,确认波特率、数据位、校验位、停止位与传感器一致(默认 9600-8-N-1);
  • 输入 Modbus站号(设备地址),如1

步骤 2:添加数据标签
选中设备Sensor_TH_01,点击“新建标签”,依次添加:

标签名称数据类型寄存器地址读写控制说明
Temp_01Float40001温度值(℃)
Humi_01Float40003湿度值(%RH)
Alarm_01Boolean10001水浸报警状态

地址说明:网关采用 PLC 地址模式(从 1 开始)。40001对应 Modbus 功能码 03(保持寄存器),10001对应功能码 02(离散量输入)。

步骤 3:批量添加(可选)
若需采集多台相同传感器,可选中已建好的设备,点击“复制"→"粘贴”快速生成Sensor_TH_02,再修改站号及标签名称即可。

4.3 配置 SNMP 转发(北向)

  1. 左侧导航栏切换到“服务”“SNMP”
  2. “启用”设置为Yes
  3. 点击“MIB”按钮,进入 MIB 节点配置;
  4. 按顺序添加需要转发的标签:
    • 在弹出的标签选择器中,依次勾选Temp_01Humi_01Alarm_01等标签;
    • 点击OK保存,系统会自动将采集标签映射到 SNMP MIB 节点。

关键点:SNMP 转发配置本质上是将采集标签(Tag)绑定到 SNMP Agent 的 MIB 库中,外部监控平台通过 OID 即可访问到对应的 Modbus 设备数据。

4.4 工程下载与数据验证

  1. 点击工具栏“下载”按钮,将工程下载至网关;
  2. 下载完成后,点击“查看数据”
  3. 在弹出的数据窗口中,确认各标签的“状态”显示为Good,且“更新时间”为当前系统时间,表明 Modbus 采集成功。

五、机房监控平台对接

5.1 SNMP 访问参数

工程下载后,网关即作为 SNMP Agent 运行,监控平台可通过以下参数访问:

参数
Agent IP192.168.1.199(或实际修改后的 IP)
端口161(默认)
Communitypublic(根据实际安全策略修改)
协议版本SNMP v1/v2c

5.2 数据映射关系示例

监控平台侧配置 OID 与物理量的对应关系如下(具体 OID 以网关 MIB 实际生成为准):

OID 节点对应标签数据类型物理含义
1.3.6.1.4.1.xxx.1.1.0Temp_01Float机房温度
1.3.6.1.4.1.xxx.1.2.0Humi_01Float机房湿度
1.3.6.1.4.1.xxx.1.3.0Alarm_01Integer水浸报警(0正常/1报警)

监控平台通过定时轮询上述 OID,即可实时获取机房环境数据,实现与原有 Modbus 传感器的数据打通。


六、调试与问题排查

6.1 采集不到 Modbus 数据

  • 检查接线:确认 RS485 的 A、B 线未接反,终端电阻已加装;
  • 检查参数:在设备属性中核对站号、波特率是否与传感器一致;
  • 扫描间隔:适当增大扫描间隔(如 1000ms),避免总线冲突;
  • VBtrace 诊断:在 VFBOX Studio 命令行输入vbtrace.exe 20304 192.168.1.199,查看 Modbus 收发报文。

6.2 SNMP 平台读取不到数据

  • 网络连通性:在监控平台侧ping 192.168.1.199,确认网络可达;
  • Community 字符串:确认平台侧 Community 与网关配置一致;
  • 防火墙:确认机房交换机未屏蔽 UDP 161 端口。

6.3 数据值异常

  • 字节顺序:若 Float 数据值明显异常,在设备属性中调整“寄存器顺序”(尝试 1234、4321、3412、2143 等顺序);
  • 失败值设置:在标签属性中设置“失败值”(如 0 或 -999),当传感器离线时,网关会显示该预设值,便于平台识别通信故障。

七、项目总结

本项目通过部署VFBOX 协议转换网关,成功解决了机房现场 Modbus RTU 传感器与上层 SNMP 监控平台之间的协议壁垒。项目实施后:

  • 协议统一:末端 20+ 个 Modbus 传感器数据全部转换为标准 SNMP 协议,无缝接入现有网管平台;
  • 施工简便:无需修改原有传感器接线,仅通过网关串口并接即可,工期缩短至半天;
  • 稳定可靠:网关为工业级设计,支持 9~36V 宽压供电,满足机房 7×24 小时运行要求;
  • 扩展灵活:后续若新增 Modbus 设备,仅需在 VFBOX Studio 中复制粘贴设备模板、添加标签并重新下载,无需改动监控平台侧配置。

该方案同样适用于电力配电房、环保监测站、楼宇自控等需要将 Modbus 设备数据接入 SNMP 网管平台的场景,具有良好的推广价值。