某数据中心机房需要对机房动环设备进行集中监控管理。现场部署了多台精密空调、UPS电源、温湿度传感器、漏水检测器等动环设备,这些设备均支持SNMP协议进行数据采集。然而,客户的上位监控平台(SCADA系统)仅支持Modbus TCP/RTU协议进行数据接入。
选用上海仰科VFBOX系列协议转换网关,型号为VB303-1200#128-S-1,该网关支持:
VFBOX VB303-1200网关硬件参数:
| 项目 | 参数 |
|---|---|
| 电源 | DC 9-30V(使用12V/2A电源适配器) |
| 网口 | 1个Ethernet,默认IP:192.168.1.199 |
| 串口 | 2个RS485/RS232(本项目使用网口通信) |
| 安装方式 | 标准35mm导轨安装 |
接线步骤:
| 设备 | IP地址 | 说明 |
|---|---|---|
| VFBOX网关 | 192.168.1.199 | 网关默认IP,后续修改为192.168.1.50 |
| 精密空调 | 192.168.1.10 | SNMP Agent,端口161 |
| UPS电源 | 192.168.1.11 | SNMP Agent,端口161 |
| 温湿度传感器 | 192.168.1.12 | SNMP Agent,端口161 |
| 漏水检测器 | 192.168.1.13 | SNMP Agent,端口161 |
| 监控平台 | 192.168.1.100 | Modbus TCP Master,端口502 |
步骤1:新建工程
步骤2:配置网关IP
步骤3:修改网关IP(可选)
如需修改网关IP为192.168.1.50:
菜单:工具 → 配置网络 - IP地址:192.168.1.50 - 子网掩码:255.255.255.0 - 默认网关:192.168.1.1(如需连接外网)
点击"设置"后网关自动重启,约1分钟后使用新IP连接。
添加精密空调设备:
点击"新建设备",选择驱动类型:SNMP
![选择SNMP驱动] /image2. )
输入设备名称:AirConditioner_01
配置SNMP服务器参数:
IP地址:192.168.1.10
端口号:161(SNMP默认端口)
Community:public(根据实际设备配置)
SNMP版本:V2C(或V1/V3,根据设备支持情况)
![配置SNMP参数] /image3. )
添加其他动环设备:
按照相同步骤添加:
以精密空调为例,配置需要采集的数据点:
| 数据点 | OID | 数据类型 | 标签名称 | 说明 |
|---|---|---|---|---|
| 回风温度 | 1.3.6.1.4.1.XXX.1.1.1 | Float | AC1_ReturnTemp | 单位:℃ |
| 回风湿度 | 1.3.6.1.4.1.XXX.1.1.2 | Float | AC1_ReturnHumi | 单位:%RH |
| 压缩机状态 | 1.3.6.1.4.1.XXX.1.2.1 | Boolean | AC1_Compressor | 运行/停止 |
| 风机状态 | 1.3.6.1.4.1.XXX.1.2.2 | Boolean | AC1_FanStatus | 运行/故障 |
| 设定温度 | 1.3.6.1.4.1.XXX.1.3.1 | Float | AC1_SetTemp | 可读写 |
新建标签步骤:
标签名称:AC1_ReturnTemp(必须以字母开头,英文+数字)
数据类型:Float(根据实际数据类型选择)
读写控制:读(监控数据)或读写(可控制参数)
OID地址:输入完整的SNMP OID
描述:精密空调01回风温度
![新建标签] /image4. )
批量导入标签技巧:
若数据点较多,可先导出CSV模板,在Excel中批量编辑后导入:
步骤1:启用Modbus Slave服务
启用:Yes
站号:1(网关作为Modbus从站的地址)
侦听端口:502(Modbus TCP标准端口)
字节顺序:根据监控平台要求选择(默认1234)
![启用Modbus TCP] /image5. )
步骤2:配置Modbus RTU(可选)
若监控平台通过串口连接:
步骤3:添加转发数据映射
将采集的SNMP数据映射到Modbus寄存器地址:
| 数据标签 | Modbus数据区 | 寄存器地址 | 数据类型 | 功能码 |
|---|---|---|---|---|
| AC1_ReturnTemp | 4X Holding Registers | 40001 | Float | 03/06/10 |
| AC1_ReturnHumi | 4X Holding Registers | 40003 | Float | 03/06/10 |
| AC1_Compressor | 0X Digital Coils | 00001 | Boolean | 01/05/0F |
| AC1_FanStatus | 0X Digital Coils | 00002 | Boolean | 01/05/0F |
| AC1_SetTemp | 4X Holding Registers | 40005 | Float | 03/06/10 |
| UPS1_InputVoltage | 4X Holding Registers | 40011 | Float | 03 |
| UPS1_BatteryLevel | 4X Holding Registers | 40013 | Float | 03 |
| TH1_Temperature | 4X Holding Registers | 40021 | Float | 03 |
| TH1_Humidity | 4X Holding Registers | 40023 | Float | 03 |
| WL1_LeakStatus | 0X Digital Coils | 00011 | Boolean | 01 |
操作方法:
在Modbus Slave配置界面,展开4X Holding Registers
点击"添加"按钮(图标:![] /image50. ))
在弹出的对话框中选择要转发的标签(如AC1_ReturnTemp)
系统自动分配寄存器地址,或手动指定地址
点击OK保存
![添加转发数据] /image6. )
重复上述步骤,将所有需要转发的标签添加到对应的数据区
寄存器地址说明:
- 4X Holding Registers(40001-49999):模拟量数据,支持Float、Long等
- 0X Digital Coils(00001-09999):开关量数据,Boolean类型
- 3X Analog Inputs(30001-39999):只读模拟量(若监控平台只读)
- 1X Digital Inputs(10001-19999):只读开关量
步骤1:验证工程
步骤2:下载工程
点击"下载"按钮(图标:![] /image32. ))
确认网关IP地址正确
等待下载完成,输出窗口显示"Download OK"
![下载工程] /image82. )
步骤3:查看采集数据
Quality显示"Good"表示通信正常
更新时间为当前时间表示数据正在刷新
![查看数据] /image84. )
步骤4:Modbus通信测试
使用Modbus Poll或类似工具测试:
验证是否能正确读取到动环设备数据。
如需对采集数据进行运算处理,可使用用户标签:
示例:温度单位转换(℃转℉)
对于可写参数(如空调设定温度),配置写数据模式:
设置失败值:
当设备通信故障时,标签显示指定值而非保持最后值:
设备状态监控:
系统自动生成DeviceName_Status标签:
| 检查项 | 检查内容 | 结果 |
|---|---|---|
| 网络连通性 | 电脑能ping通网关和所有动环设备IP | ✓ |
| 采集通信 | VFBOX Studio查看数据,Quality为Good | ✓ |
| 数据准确性 | 对比设备本地显示与网关采集值一致 | ✓ |
| Modbus转发 | 监控平台能正确读取所有寄存器数据 | ✓ |
| 写数据测试 | 监控平台修改设定温度,设备响应正确 | ✓ |
| 断电恢复 | 网关重启后自动恢复通信 | ✓ |
| 连续运行 | 72小时无故障运行 | ✓ |
问题1:SNMP采集失败
问题2:Modbus数据乱码
问题3:监控平台连接不上
| 优势 | 说明 |
|---|---|
| 协议兼容性强 | 支持300+种工业协议,适配各类动环设备 |
| 配置简单 | 图形化界面,无需编程,工程可复用 |
| 稳定可靠 | 工业级设计,-40℃~85℃工作温度 |
| 扩展灵活 | 支持用户标签运算、多协议同时转发 |
| 远程维护 | 支持4G无线接入(选配1110/1210型号) |
项目文档归档: