工控網(wǎng)首頁
>

應(yīng)用設(shè)計(jì)

>

網(wǎng)關(guān)實(shí)現(xiàn)機(jī)房動(dòng)環(huán)設(shè)備SNMP轉(zhuǎn)Modbus協(xié)議轉(zhuǎn)換項(xiàng)目案例

網(wǎng)關(guān)實(shí)現(xiàn)機(jī)房動(dòng)環(huán)設(shè)備SNMP轉(zhuǎn)Modbus協(xié)議轉(zhuǎn)換項(xiàng)目案例

2026/4/15 11:23:13

 一、項(xiàng)目背景

 

1.1 項(xiàng)目概況

某數(shù)據(jù)中心機(jī)房需要對機(jī)房動(dòng)環(huán)設(shè)備進(jìn)行集中監(jiān)控管理。現(xiàn)場部署了多臺精密空調(diào)、UPS電源、溫濕度傳感器、漏水檢測器等動(dòng)環(huán)設(shè)備,這些設(shè)備均支持**SNMP協(xié)議**進(jìn)行數(shù)據(jù)采集。然而,客戶的上位監(jiān)控平臺(SCADA系統(tǒng))僅支持**Modbus TCP/RTU協(xié)議**進(jìn)行數(shù)據(jù)接入。

 

 1.2 項(xiàng)目需求

- **協(xié)議轉(zhuǎn)換**:將動(dòng)環(huán)設(shè)備的SNMP協(xié)議數(shù)據(jù)轉(zhuǎn)換為Modbus協(xié)議數(shù)據(jù)

- **數(shù)據(jù)整合**:采集多臺動(dòng)環(huán)設(shè)備的數(shù)據(jù),統(tǒng)一轉(zhuǎn)發(fā)給監(jiān)控平臺

- **實(shí)時(shí)性**:數(shù)據(jù)刷新周期不超過5秒

- **穩(wěn)定性**:7×24小時(shí)穩(wěn)定運(yùn)行,滿足機(jī)房監(jiān)控要求

 

1.3 方案選型

選用**上海仰科VFBOX系列協(xié)議轉(zhuǎn)換網(wǎng)關(guān)**,型號為**VB303-1200#128-S-1**,該網(wǎng)關(guān)支持:

- 采集協(xié)議:SNMP(S)

- 轉(zhuǎn)發(fā)協(xié)議:Modbus Slave(1)

- 采集點(diǎn)位:128點(diǎn)

- 硬件接口:1個(gè)網(wǎng)口 + 2個(gè)RS485串口

 

---

 二、系統(tǒng)架構(gòu)設(shè)計(jì)

┌─────────────────────────────────────────────────────────┐

│                    監(jiān)控平臺(SCADA)                      │

│                 通信協(xié)議:Modbus TCP                      │

│                      IP: 192.168.1.100                   │

└─────────────────────────┬───────────────────────────────┘

                          │ 網(wǎng)線連接

                          ▼

┌─────────────────────────────────────────────────────────┐

│              VFBOX 網(wǎng)關(guān)(VB303-1200)                    │

│  ┌─────────────────┐        ┌─────────────────────┐    │

│  │   SNMP Client   │        │   Modbus Slave      │    │

│  │   (采集協(xié)議)     │?──────?│   (轉(zhuǎn)發(fā)協(xié)議)         │    │

│  │   端口: 20356    │        │   端口: 20305/502   │    │

│  └─────────────────┘        └─────────────────────┘    │

└─────────────────────────┬───────────────────────────────┘

                          │ 網(wǎng)線連接(同一局域網(wǎng))

        ┌─────────────────┼─────────────────┐

        ▼                 ▼                 ▼

┌─────────────┐    ┌─────────────┐    ┌─────────────┐

│  精密空調(diào)    │    │   UPS電源    │    │  溫濕度傳感器 │

│ SNMP Agent  │    │ SNMP Agent  │    │ SNMP Agent  │

│ 192.168.1.10│    │ 192.168.1.11│    │ 192.168.1.12│

└─────────────┘    └─────────────┘    └─────────────┘

 三、硬件部署與接線

 

 3.1 網(wǎng)關(guān)硬件安裝

 

**VFBOX VB303-1200網(wǎng)關(guān)硬件參數(shù)**:

| 項(xiàng)目 | 參數(shù) |

|:---|:---|

| 電源 | DC 9-30V(使用12V/2A電源適配器)|

| 網(wǎng)口 | 1個(gè)Ethernet,默認(rèn)IP:192.168.1.199 |

| 串口 | 2個(gè)RS485/RS232(本項(xiàng)目使用網(wǎng)口通信)|

| 安裝方式 | 標(biāo)準(zhǔn)35mm導(dǎo)軌安裝 |

 

**接線步驟**:

1. 將網(wǎng)關(guān)安裝到機(jī)房弱電箱的DIN導(dǎo)軌上

2. 使用網(wǎng)線將網(wǎng)關(guān)網(wǎng)口接入機(jī)房局域網(wǎng)交換機(jī)

3. 連接12V直流電源(V+接正極,V-接負(fù)極)

4. 確認(rèn)POW電源指示燈常亮,表示供電正常

 3.2 網(wǎng)絡(luò)IP規(guī)劃

 

| 設(shè)備 | IP地址 | 說明 |

|:---|:---|:---|

| VFBOX網(wǎng)關(guān) | 192.168.1.199 | 網(wǎng)關(guān)默認(rèn)IP,后續(xù)修改為192.168.1.50 |

| 精密空調(diào) | 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 |

| 監(jiān)控平臺 | 192.168.1.100 | Modbus TCP Master,端口502 |

 

四、VFBOX Studio軟件配置

 

 4.1 工程創(chuàng)建與基礎(chǔ)設(shè)置

 

**步驟1:新建工程**

1. 在電腦(IP設(shè)置為192.168.1.198)上安裝VFBOX Studio軟件

2. 以管理員權(quán)限啟動(dòng)軟件

3. 點(diǎn)擊"新建工程",輸入工程名稱:`IDC_Environment_Monitor`

4. 設(shè)備類型選擇:`VB30X-1200`(與網(wǎng)關(guān)標(biāo)簽型號一致)

 

**步驟2:配置網(wǎng)關(guān)IP**

- 點(diǎn)擊菜單"網(wǎng)關(guān)IP地址",輸入:`192.168.1.199`

- 點(diǎn)擊"獲取硬件ID",確認(rèn)輸出窗口顯示網(wǎng)關(guān)ID,驗(yàn)證通信正常

 

**步驟3:修改網(wǎng)關(guān)IP(可選)**

如需修改網(wǎng)關(guān)IP為192.168.1.50:

```

菜單:工具 → 配置網(wǎng)絡(luò)

- IP地址:192.168.1.50

- 子網(wǎng)掩碼:255.255.255.0

- 默認(rèn)網(wǎng)關(guān):192.168.1.1(如需連接外網(wǎng))

```

點(diǎn)擊"設(shè)置"后網(wǎng)關(guān)自動(dòng)重啟,約1分鐘后使用新IP連接。

 

 4.2 配置SNMP采集設(shè)備

 

**添加精密空調(diào)設(shè)備**:

 

1. 點(diǎn)擊"新建設(shè)備",選擇驅(qū)動(dòng)類型:**SNMP**

 

   ![選擇SNMP驅(qū)動(dòng)]     /image2.    )

 

2. 輸入設(shè)備名稱:`AirConditioner_01`

 

3. 配置SNMP服務(wù)器參數(shù):

   - IP地址:`192.168.1.10`

   - 端口號:`161`(SNMP默認(rèn)端口)

   - Community:`public`(根據(jù)實(shí)際設(shè)備配置)

   - SNMP版本:V2C(或V1/V3,根據(jù)設(shè)備支持情況)

 

   ![配置SNMP參數(shù)]     /image3.    )

 

4. 點(diǎn)擊"完成",設(shè)備添加成功

 

**添加其他動(dòng)環(huán)設(shè)備**:

按照相同步驟添加:

- `UPS_01`(IP:192.168.1.11)

- `TempHumi_01`(IP:192.168.1.12)

- `WaterLeak_01`(IP:192.168.1.13)

 

 4.3 配置采集數(shù)據(jù)標(biāo)簽

 

以精密空調(diào)為例,配置需要采集的數(shù)據(jù)點(diǎn):

 

| 數(shù)據(jù)點(diǎn) | OID | 數(shù)據(jù)類型 | 標(biāo)簽名稱 | 說明 |

|:---|:---|:---|:---|:---|

| 回風(fēng)溫度 | 1.3.6.1.4.1.XXX.1.1.1 | Float | AC1_ReturnTemp | 單位:℃ |

| 回風(fēng)濕度 | 1.3.6.1.4.1.XXX.1.1.2 | Float | AC1_ReturnHumi | 單位:%RH |

| 壓縮機(jī)狀態(tài) | 1.3.6.1.4.1.XXX.1.2.1 | Boolean | AC1_Compressor | 運(yùn)行/停止 |

| 風(fēng)機(jī)狀態(tài) | 1.3.6.1.4.1.XXX.1.2.2 | Boolean | AC1_FanStatus | 運(yùn)行/故障 |

| 設(shè)定溫度 | 1.3.6.1.4.1.XXX.1.3.1 | Float | AC1_SetTemp | 可讀寫 |

 

**新建標(biāo)簽步驟**:

1. 選中設(shè)備`AirConditioner_01`

2. 點(diǎn)擊"新建標(biāo)簽"

3. 配置參數(shù):

   - 標(biāo)簽名稱:`AC1_ReturnTemp`(必須以字母開頭,英文+數(shù)字)

   - 數(shù)據(jù)類型:`Float`(根據(jù)實(shí)際數(shù)據(jù)類型選擇)

   - 讀寫控制:`讀`(監(jiān)控?cái)?shù)據(jù))或`讀寫`(可控制參數(shù))

   - OID地址:輸入完整的SNMP OID

   - 描述:`精密空調(diào)01回風(fēng)溫度`

 

   ![新建標(biāo)簽]     /image4.    )

 

4. 重復(fù)上述步驟,為每臺設(shè)備添加所有需要采集的數(shù)據(jù)標(biāo)簽

 

**批量導(dǎo)入標(biāo)簽技巧**:

若數(shù)據(jù)點(diǎn)較多,可先導(dǎo)出CSV模板,在Excel中批量編輯后導(dǎo)入:

1. 選中設(shè)備,導(dǎo)出標(biāo)簽為CSV文件

2. 在Excel中按格式添加多個(gè)標(biāo)簽

3. 刪除設(shè)備原有標(biāo)簽,導(dǎo)入編輯好的CSV文件

 

---

 

4.4 配置Modbus轉(zhuǎn)發(fā)服務(wù)

 

**步驟1:啟用Modbus Slave服務(wù)**

1. 點(diǎn)擊菜單"服務(wù)" → "Modbus Slave"

2. 配置Modbus TCP參數(shù):

   - 啟用:`Yes`

   - 站號:`1`(網(wǎng)關(guān)作為Modbus從站的地址)

   - 偵聽端口:`502`(Modbus TCP標(biāo)準(zhǔn)端口)

   - 字節(jié)順序:根據(jù)監(jiān)控平臺要求選擇(默認(rèn)1234)

 

   ![啟用Modbus TCP]     /image5.    )

 

**步驟2:配置Modbus RTU(可選)**

若監(jiān)控平臺通過串口連接:

- 啟用:`Yes`

- 選擇串口:`COM2`(確保與采集設(shè)備使用的串口不沖突)

- 波特率:`9600`(與監(jiān)控平臺一致)

- 數(shù)據(jù)位:`8`,校驗(yàn):`無`,停止位:`1`

 

**步驟3:添加轉(zhuǎn)發(fā)數(shù)據(jù)映射**

將采集的SNMP數(shù)據(jù)映射到Modbus寄存器地址:

 

| 數(shù)據(jù)標(biāo)簽 | Modbus數(shù)據(jù)區(qū) | 寄存器地址 | 數(shù)據(jù)類型 | 功能碼 |

|:---|:---|:---|:---|:---|

| 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 |

 

**操作方法**:

1. 在Modbus Slave配置界面,展開`4X Holding Registers`

2. 點(diǎn)擊"添加"按鈕(圖標(biāo):![]     /image50.    ))

3. 在彈出的對話框中選擇要轉(zhuǎn)發(fā)的標(biāo)簽(如`AC1_ReturnTemp`)

4. 系統(tǒng)自動(dòng)分配寄存器地址,或手動(dòng)指定地址

5. 點(diǎn)擊OK保存

 

   ![添加轉(zhuǎn)發(fā)數(shù)據(jù)]     /image6.    )

 

6. 重復(fù)上述步驟,將所有需要轉(zhuǎn)發(fā)的標(biāo)簽添加到對應(yīng)的數(shù)據(jù)區(qū)

 

> **寄存器地址說明**:

> - 4X Holding Registers(40001-49999):模擬量數(shù)據(jù),支持Float、Long等

> - 0X Digital Coils(00001-09999):開關(guān)量數(shù)據(jù),Boolean類型

> - 3X Analog Inputs(30001-39999):只讀模擬量(若監(jiān)控平臺只讀)

> - 1X Digital Inputs(10001-19999):只讀開關(guān)量

 

---

 

 4.5 工程下載與調(diào)試

 

**步驟1:驗(yàn)證工程**

- 點(diǎn)擊工具欄"驗(yàn)證"按鈕,檢查工程配置完整性

- 確認(rèn)無錯(cuò)誤提示

 

**步驟2:下載工程**

1. 點(diǎn)擊"下載"按鈕(圖標(biāo):![]     /image32.    ))

2. 確認(rèn)網(wǎng)關(guān)IP地址正確

3. 等待下載完成,輸出窗口顯示"Download OK"

 

   ![下載工程]     /image82.    )

 

**步驟3:查看采集數(shù)據(jù)**

1. 點(diǎn)擊"查看數(shù)據(jù)"按鈕

2. 在彈出的窗口中查看實(shí)時(shí)數(shù)據(jù):

   - Quality顯示"Good"表示通信正常

   - 更新時(shí)間為當(dāng)前時(shí)間表示數(shù)據(jù)正在刷新

 

   ![查看數(shù)據(jù)]     /image84.    )

 

**步驟4:Modbus通信測試**

使用Modbus Poll或類似工具測試:

- 連接類型:Modbus TCP

- IP地址:192.168.1.50(網(wǎng)關(guān)IP)

- 端口:502

- 從站地址:1

- 功能碼:03(讀保持寄存器)

- 起始地址:40001

- 讀取數(shù)量:10

 

驗(yàn)證是否能正確讀取到動(dòng)環(huán)設(shè)備數(shù)據(jù)。

 

---

 

五、高級功能配置(可選)

 

 5.1 用戶標(biāo)簽數(shù)據(jù)處理

 

如需對采集數(shù)據(jù)進(jìn)行運(yùn)算處理,可使用用戶標(biāo)簽:

 

**示例:溫度單位轉(zhuǎn)換(℃轉(zhuǎn)℉)**

1. 點(diǎn)擊"用戶標(biāo)簽" → "新建標(biāo)簽"

2. 標(biāo)簽名稱:`AC1_ReturnTemp_F`

3. 數(shù)據(jù)類型:`Float`

4. 表達(dá)式:`(AC1_ReturnTemp * 9/5) + 32`

5. 點(diǎn)擊"校驗(yàn)"驗(yàn)證表達(dá)式正確性

6. 將此用戶標(biāo)簽添加到Modbus轉(zhuǎn)發(fā)列表

 

### 5.2 數(shù)據(jù)觸發(fā)模式

 

對于可寫參數(shù)(如空調(diào)設(shè)定溫度),配置寫數(shù)據(jù)模式:

1. 點(diǎn)擊設(shè)備,進(jìn)入"屬性"設(shè)置

2. 找到"觸發(fā)模式"選項(xiàng):

   - **Cycle**:周期寫入(不推薦,增加網(wǎng)絡(luò)負(fù)擔(dān))

   - **Trigger-datachange**:數(shù)據(jù)變化時(shí)寫入(推薦)

   - **Trigger**:觸發(fā)式寫入

 5.3 通信故障處理

 

**設(shè)置失敗值**:

當(dāng)設(shè)備通信故障時(shí),標(biāo)簽顯示指定值而非保持最后值:

1. 雙擊標(biāo)簽,在"失敗值"欄輸入:`-9999`

2. 監(jiān)控平臺接收到-9999可判斷為通信故障

 

**設(shè)備狀態(tài)監(jiān)控**:

系統(tǒng)自動(dòng)生成`DeviceName_Status`標(biāo)簽:

- 值=0:通信正常

- 值≠0:通信故障

可將此標(biāo)簽轉(zhuǎn)發(fā)給監(jiān)控平臺,用于設(shè)備在線狀態(tài)指示。

 

六、項(xiàng)目調(diào)試與驗(yàn)收

 

 6.1 調(diào)試檢查清單

 

| 檢查項(xiàng) | 檢查內(nèi)容 | 結(jié)果 |

|:---|:---|:---:|

| 網(wǎng)絡(luò)連通性 | 電腦能ping通網(wǎng)關(guān)和所有動(dòng)環(huán)設(shè)備IP | ? |

| 采集通信 | VFBOX Studio查看數(shù)據(jù),Quality為Good | ? |

| 數(shù)據(jù)準(zhǔn)確性 | 對比設(shè)備本地顯示與網(wǎng)關(guān)采集值一致 | ? |

| Modbus轉(zhuǎn)發(fā) | 監(jiān)控平臺能正確讀取所有寄存器數(shù)據(jù) | ? |

| 寫數(shù)據(jù)測試 | 監(jiān)控平臺修改設(shè)定溫度,設(shè)備響應(yīng)正確 | ? |

| 斷電恢復(fù) | 網(wǎng)關(guān)重啟后自動(dòng)恢復(fù)通信 | ? |

| 連續(xù)運(yùn)行 | 72小時(shí)無故障運(yùn)行 | ? |

 

 6.2 常見問題處理

 

**問題1:SNMP采集失敗**

- 檢查OID是否正確(使用MIB Browser工具驗(yàn)證)

- 確認(rèn)Community字符串匹配

- 檢查防火墻是否開放UDP 161端口

 

**問題2:Modbus數(shù)據(jù)亂碼**

- 調(diào)整字節(jié)順序(設(shè)備屬性中修改寄存器順序:1234/4321/3412/2143)

- 確認(rèn)數(shù)據(jù)類型匹配(Float占2個(gè)寄存器地址)

 

**問題3:監(jiān)控平臺連接不上**

- 確認(rèn)網(wǎng)關(guān)Modbus TCP已啟用

- 檢查端口502是否被占用

- 使用`vbtrace.exe 20305 192.168.1.50`查看通信日志

 

---

 七、項(xiàng)目總結(jié)

 

7.1 實(shí)施效果

- 成功實(shí)現(xiàn)SNMP到Modbus的協(xié)議轉(zhuǎn)換

- 單臺網(wǎng)關(guān)采集4臺動(dòng)環(huán)設(shè)備,共32個(gè)數(shù)據(jù)點(diǎn)

- 數(shù)據(jù)刷新周期2秒,滿足實(shí)時(shí)監(jiān)控要求

- 網(wǎng)關(guān)連續(xù)運(yùn)行30天無故障,穩(wěn)定性達(dá)標(biāo)

 

7.2 方案優(yōu)勢

 

| 優(yōu)勢 | 說明 |

|:---|:---|

| 協(xié)議兼容性強(qiáng) | 支持300+種工業(yè)協(xié)議,適配各類動(dòng)環(huán)設(shè)備 |

| 配置簡單 | 圖形化界面,無需編程,工程可復(fù)用 |

| 穩(wěn)定可靠 | 工業(yè)級設(shè)計(jì),-40℃~85℃工作溫度 |

| 擴(kuò)展靈活 | 支持用戶標(biāo)簽運(yùn)算、多協(xié)議同時(shí)轉(zhuǎn)發(fā) |

| 遠(yuǎn)程維護(hù) | 支持4G無線接入(選配1110/1210型號)|

 

7.3 后續(xù)擴(kuò)展建議

1. **增加4G無線功能**:選用VB303-1210型號,實(shí)現(xiàn)遠(yuǎn)程監(jiān)控

2. **數(shù)據(jù)上云**:啟用MQTT服務(wù),同時(shí)轉(zhuǎn)發(fā)數(shù)據(jù)至云平臺

3. **邊緣計(jì)算**:使用Lua腳本或梯形圖編程,實(shí)現(xiàn)本地邏輯控制

4. **歷史數(shù)據(jù)存儲**:啟用SQLite服務(wù),本地保存歷史數(shù)據(jù)

 

**項(xiàng)目文檔歸檔**:

- 工程文件:`IDC_Environment_Monitor`文件夾(備份保存)

- 配置文件:`prj.ini`、`Workbench.ini`

- 標(biāo)簽點(diǎn)表:Excel版本《動(dòng)環(huán)設(shè)備Modbus地址映射表》

- 驗(yàn)收報(bào)告:《VFBOX網(wǎng)關(guān)現(xiàn)場調(diào)試報(bào)告》

 

審核編輯(
王靜
)
投訴建議

提交

查看更多評論
其他資訊

查看更多

IEC61850轉(zhuǎn)Modbus網(wǎng)關(guān)實(shí)現(xiàn)電力綜保IEC61850轉(zhuǎn)Modbus協(xié)議轉(zhuǎn)換項(xiàng)目案例

網(wǎng)關(guān)實(shí)現(xiàn)電力配電柜Modbus數(shù)據(jù)轉(zhuǎn)DNP3協(xié)議傳輸項(xiàng)目案例

生產(chǎn)線西門子plc轉(zhuǎn)Modbus接入管理平臺項(xiàng)目案例

基于網(wǎng)關(guān)實(shí)現(xiàn)DLT645電表數(shù)據(jù)接入園區(qū)管理Modbus平臺的項(xiàng)目案例

實(shí)現(xiàn)配電電力設(shè)備Modbus與IEC61850管理平臺無縫對接的項(xiàng)目案例