Học Automation cùng MINATA #44: Modbus TCP: dữ liệu qua Ethernet vẫn cần kỷ luật công nghiệp
Modbus TCP: dữ liệu qua Ethernet vẫn cần kỷ luật công nghiệp
Modbus TCP mang Modbus lên mạng Ethernet quen thuộc, nên dễ triển khai và đi xa. Nhưng "quen thuộc" cũng là cái bẫy: địa chỉ IP, switch, timeout và quyền truy cập vẫn phải được quản lý như một phần của hệ điều khiển, không phải cắm dây mạng là xong.
Modbus TCP khác Modbus RTU ở đâu
Cùng mô hình thanh ghi và function code, nhưng Modbus TCP bọc dữ liệu trong gói TCP/IP và bỏ CRC (Ethernet đã có kiểm tra lỗi riêng). Thay vì địa chỉ node 1–247, thiết bị được nhận diện bằng địa chỉ IP và cổng mặc định 502. Một thiết bị có thể phục vụ nhiều kết nối client cùng lúc, tùy giới hạn của nó.
Kế hoạch IP là một phần hồ sơ máy
Ghi rõ mỗi thiết bị một IP tĩnh, cùng subnet, không trùng nhau, và lưu trong hồ sơ. Khi mở rộng line, kế hoạch IP giúp tránh đụng địa chỉ. Tránh để thiết bị điều khiển lấy IP động (DHCP) trừ khi có lý do rõ, vì địa chỉ đổi sẽ làm mất kết nối.
Tách mạng và bảo mật cơ bản
Mạng máy nên tách khỏi mạng văn phòng khi có thể, qua VLAN hoặc switch riêng. Modbus TCP không có xác thực, nên đừng phơi nó ra mạng chung. Kiểm soát thiết bị nào được phép nói chuyện với PLC, và ghi log để biết ai kết nối.
Timeout, retry và dữ liệu cũ
Mạng có độ trễ và có lúc rớt gói. Đặt timeout và retry có kiểm soát: một lần chậm không nên làm cả chương trình treo, và một lần mất gói không nên làm giá trị nhảy loạn. Quan trọng như ở HMI: khi mất kết nối, hiển thị giá trị cuối cùng kèm thời điểm cập nhật hoặc đánh dấu không hợp lệ, thay vì để số cũ trông như vẫn tươi.
Tình huống kỹ thuật tham khảo
PLC đọc điện năng từ một đồng hồ đo qua Modbus TCP để hiển thị và ghi log. Khi mạng gián đoạn, HMI giữ giá trị cuối cùng kèm nhãn thời gian "cập nhật lúc ..." thay vì để trống hay hiện 0, giúp người vận hành phân biệt "mất mạng" với "tiêu thụ bằng 0".
Kế hoạch IP, phân vùng mạng và ánh xạ thanh ghi cuối cùng phải theo hồ sơ máy và tài liệu thiết bị.
Sai lầm thường gặp
- Cắm thiết bị vào mạng văn phòng, không tách vùng.
- Dùng IP động cho thiết bị điều khiển, mất kết nối khi địa chỉ đổi.
- Không đặt timeout/retry; một lần rớt gói làm treo hoặc nhảy số.
- Xóa số khi mất mạng thay vì giữ giá trị cũ kèm thời điểm.
- Copy bản đồ thanh ghi giữa các model khác nhau.
Checklist Modbus TCP
- [ ] IP tĩnh, cùng subnet, không trùng, ghi trong hồ sơ.
- [ ] Mạng máy tách khỏi mạng văn phòng khi cần.
- [ ] Timeout/retry có kiểm soát, không làm treo chương trình.
- [ ] Dữ liệu mất kết nối được đánh dấu, kèm thời điểm cập nhật.
- [ ] Bản đồ thanh ghi khớp model/firmware; kiểm soát ai được kết nối.
Ethernet tiện nhưng vẫn cần kỷ luật công nghiệp. Bài #45 chuyển sang an toàn máy và E-stop, nơi kỷ luật đó trở thành yêu cầu bắt buộc.
Đọc thêm kiến thức tự động hóa tại MINATA: https://minatavn.com/vi/blog/tu-dong-hoa
Bài liền trước — #43: Modbus RTU: đọc đúng bus RS-485 trước khi kết nối thiết bị: https://minatavn.com/vi/blog/hoc-automation-cung-minata-43-modbus-rtu
Bài tiếp theo — #45: An toàn máy và E-stop: dừng khẩn không phải một nút đỏ đơn lẻ: https://minatavn.com/vi/blog/hoc-automation-cung-minata-45-an-toan-may-e-stop
Xem tất cả bài viết kỹ thuật MINATA