Trong các hệ thống tự động hóa công nghiệp, PLC Modbus TCP được sử dụng phổ biến để thu thập và trao đổi dữ liệu với các thiết bị điều khiển. Tuy nhiên, trong thực tế không phải thiết bị nào cũng hỗ trợ Modbus TCP. Nhiều thiết bị mạng công nghiệp như switch, router hoặc một số thiết bị giám sát lại sử dụng SNMP (Simple Network Management Protocol) để cung cấp thông tin trạng thái và thông số vận hành.

Điều này tạo ra một bài toán: PLC sử dụng Modbus TCP làm thế nào để đọc dữ liệu từ một thiết bị chỉ hỗ trợ SNMP Agent? Hai giao thức có cơ chế hoạt động và cấu trúc dữ liệu khác nhau nên PLC không thể trực tiếp gửi yêu cầu SNMP nếu không có một thiết bị trung gian.
Giải pháp sử dụng ADFweb HD67176-A1 – Modbus TCP Slave / SNMP Manager Converter cho phép kết nối hai hệ thống này. HD67176-A1 đóng vai trò Modbus TCP Slave ở phía PLC và đồng thời đóng vai trò SNMP Manager ở phía thiết bị cần giám sát. Nhờ đó, PLC có thể đọc dữ liệu từ thiết bị SNMP Agent thông qua các thanh ghi Modbus TCP.
I. Bài toán kết nối PLC Modbus TCP với thiết bị SNMP Agent
Hãy hình dung một hệ thống trong đó PLC cần giám sát một switch công nghiệp. PLC hiện tại sử dụng Modbus TCP để giao tiếp với các thiết bị trong hệ thống, trong khi switch chỉ hỗ trợ giao thức SNMP và cung cấp dữ liệu thông qua SNMP Agent.
Ví dụ, switch có thể cung cấp các thông tin như trạng thái các cổng Ethernet, số lượng gói tin, lưu lượng truyền nhận, bộ đếm lỗi, nhiệt độ hoặc các thông số chẩn đoán khác thông qua SNMP.
Trong khi đó, PLC chỉ có khả năng gửi các yêu cầu Modbus TCP. Vì vậy, nếu không có thiết bị chuyển đổi giao thức, PLC không thể trực tiếp truy vấn dữ liệu SNMP từ switch.
Modbus TCP Master
Modbus TCP Slave
SNMP Manager
SNMP Agent
II. Modbus TCP Master, Modbus Slave, SNMP Manager và SNMP Agent
1. PLC đóng vai trò Modbus TCP Master
Trong mô hình này, PLC là Modbus TCP Master. PLC chủ động gửi yêu cầu đọc dữ liệu đến HD67176-A1, thiết bị đóng vai trò Modbus TCP Slave.
Ví dụ, PLC có thể gửi yêu cầu đọc một vùng thanh ghi Modbus đã được cấu hình trên HD67176-A1. Giá trị mà PLC nhận được chính là dữ liệu mà HD67176-A1 đã thu thập từ thiết bị SNMP Agent.
2. HD67176-A1 đóng vai trò SNMP Manager
Ở phía SNMP, HD67176-A1 chuyển sang vai trò SNMP Manager. Thiết bị này chủ động gửi các yêu cầu SNMP đến thiết bị cần giám sát, chẳng hạn như switch hoặc router có hỗ trợ SNMP Agent.
Trong trường hợp sử dụng cơ chế SNMP GET, HD67176-A1 gửi yêu cầu truy vấn đến một OID (Object Identifier) cụ thể. SNMP Agent trên thiết bị đích xử lý yêu cầu và trả về giá trị tương ứng.
Modbus TCP Master
Read Register
Modbus TCP Slave
SNMP Manager
Switch / Router
OID → Value
3. SNMP Agent trả lời yêu cầu của SNMP Manager
SNMP Agent là thành phần chạy trên thiết bị được giám sát. Agent lưu trữ hoặc cung cấp các thông tin quản lý thiết bị dưới dạng các đối tượng SNMP. Mỗi thông tin được xác định bằng một OID.
Khi nhận được yêu cầu SNMP GET từ HD67176-A1, SNMP Agent trả về giá trị tương ứng. HD67176-A1 sau đó sử dụng giá trị này để cung cấp dữ liệu cho PLC thông qua giao diện Modbus TCP.
III. HD67176-A1 chuyển dữ liệu SNMP thành dữ liệu Modbus TCP như thế nào?
Đây chính là chức năng quan trọng nhất của giải pháp. HD67176-A1 hoạt động như một cầu nối giữa hai mô hình giao tiếp hoàn toàn khác nhau.
Quá trình có thể được hiểu đơn giản theo các bước sau:
- PLC gửi yêu cầu Modbus TCP đến HD67176-A1 để đọc một thanh ghi.
- HD67176-A1 xác định dữ liệu SNMP tương ứng đã được cấu hình.
- HD67176-A1 gửi SNMP GET đến OID tương ứng trên SNMP Agent.
- SNMP Agent trả về giá trị cho HD67176-A1.
- HD67176-A1 xử lý và lưu giá trị theo cấu hình Modbus.
- HD67176-A1 trả Response Modbus TCP về PLC.
PLC gửi
Modbus TCP
HD67176-A1
xác định OID
SNMP GET
đến Agent
Agent trả
giá trị
HD67176-A1
chuyển đổi dữ liệu
PLC nhận
Modbus Response
IV. Ví dụ: PLC giám sát trạng thái cổng Ethernet của switch qua SNMP
Một ứng dụng điển hình là sử dụng PLC để giám sát trạng thái của một industrial Ethernet switch. Switch hỗ trợ SNMP Agent và cung cấp thông tin trạng thái từng cổng Ethernet thông qua các OID.
Ví dụ, doanh nghiệp muốn PLC biết Port 1 của switch đang Link hay Down. PLC không cần phải hiểu cấu trúc SNMP. Thay vào đó, HD67176-A1 sẽ đảm nhiệm việc truy vấn OID của Port 1 và cung cấp kết quả dưới dạng dữ liệu mà PLC có thể đọc bằng Modbus TCP.
Đọc Modbus Register
Modbus Register
↕
SNMP OID
SNMP Agent
Với cách triển khai này, PLC có thể sử dụng dữ liệu SNMP trong chương trình điều khiển của mình. Chẳng hạn, PLC có thể tạo cảnh báo khi một port mất kết nối, đưa trạng thái lên HMI hoặc kết hợp trạng thái mạng với các logic điều khiển của hệ thống.
V. Khi nào nên sử dụng giải pháp Modbus TCP – SNMP?
Giải pháp này phù hợp khi hệ thống đã có sẵn PLC hoặc SCADA sử dụng Modbus TCP, nhưng thiết bị cần giám sát lại cung cấp dữ liệu thông qua SNMP Agent.
- PLC cần giám sát industrial Ethernet switch hỗ trợ SNMP.
- PLC cần thu thập trạng thái hoặc thông số vận hành từ thiết bị mạng.
- Hệ thống SCADA/PLC đã chuẩn hóa giao tiếp Modbus TCP.
- Không muốn thay thế thiết bị SNMP hiện hữu bằng thiết bị hỗ trợ Modbus.
- Cần đưa dữ liệu quản lý mạng vào hệ thống điều khiển công nghiệp.
- Cần kết hợp thông tin trạng thái mạng với logic điều khiển của PLC.
VI. ADFweb HD67176-A1 – cầu nối giữa Modbus TCP và SNMP
HD67176-A1 được thiết kế cho bài toán kết nối Modbus TCP Slave với SNMP Manager. Thiết bị nằm giữa PLC và thiết bị SNMP Agent, giúp PLC có thể truy cập dữ liệu từ các thiết bị sử dụng SNMP mà không cần PLC phải hỗ trợ trực tiếp giao thức SNMP.
Điểm quan trọng cần nhớ là HD67176-A1 không đơn thuần chuyển đổi dữ liệu Ethernet. Thiết bị thực hiện chuyển đổi giữa hai giao thức và hai mô hình giao tiếp: phía Modbus TCP, HD67176-A1 là Slave chờ Master truy vấn; phía SNMP, HD67176-A1 là Manager chủ động truy vấn các Agent.
| Phía giao tiếp | Vai trò HD67176-A1 | Thiết bị đối tác |
|---|---|---|
| Modbus TCP | Slave | PLC / SCADA Master |
| SNMP | Manager | Switch / Router Agent |
Nhờ mô hình này, các dữ liệu vốn chỉ có thể truy cập thông qua SNMP có thể được đưa vào hệ thống PLC/SCADA sử dụng Modbus TCP, mở rộng khả năng giám sát thiết bị mạng trong các hệ thống tự động hóa công nghiệp.
VII. Kết luận
Trong một hệ thống tự động hóa, việc PLC sử dụng Modbus TCP trong khi thiết bị cần giám sát chỉ hỗ trợ SNMP Agent là một bài toán thường gặp khi tích hợp thiết bị mạng công nghiệp. Thay vì thay đổi PLC hoặc thiết bị hiện hữu, có thể sử dụng một bộ chuyển đổi giao thức làm trung gian.
ADFweb HD67176-A1 giải quyết bài toán này bằng cách đóng vai trò Modbus TCP Slave đối với PLC và SNMP Manager đối với thiết bị SNMP Agent. PLC chỉ cần đọc dữ liệu bằng Modbus TCP, trong khi HD67176-A1 đảm nhiệm việc truy vấn và thu thập dữ liệu SNMP ở phía thiết bị mạng.
Đây là một giải pháp phù hợp để tích hợp dữ liệu từ switch, router và các thiết bị công nghiệp hỗ trợ SNMP vào hệ thống PLC/SCADA hiện có, đặc biệt trong các hệ thống cần đồng thời quản lý thiết bị mạng và giám sát quá trình tự động hóa.