Tổng quan về truyền thông Modbus
- Thứ năm - 11/03/2021 09:36
- In ra
- Đóng cửa sổ này
Trong phần này chúng ta sẽ đi tìm hiểu về một giao thức được sử dụng khá là rộng dãi trong công nghiệp đó là giao thức Mosbus TCP/IP và giao thức Mosbus RTU
Giao thức Modbus là gì ?
Modbus do Modicon phát triển năm 1979. Nay thuộc cty Schneider Electric. Modbus là một giao thức truyền thông với nhiều thiết bị thông qua một cặp dây xoắn đơn. Ban đầu, ngành công nghiệp sử dụng các chuẩn RS232, RS485 để truyền thông. Modbus được sử dụng trên RS485 để đạt tốc độ cao hơn, khoảng cách truyền xa hơn. Do đó, nó đã nhanh chóng được sử dụng trong ngành tự động hóa. Và công ty này cho ra mắt nó hoàn toàn miễn phí.
Cách Modbus truyền thông
Modbus có mô hình dạng Master – Slave. Mỗi thiết bị trong mạng modbus được cung cấp một địa chỉ duy nhất. Như các thiết bị đo, cảm biến: Cảm biến Pt100, Cảm biến áp suất, cảm biến báo mức sử dụng sóng Radar. Trong frame truyền từ Master đến các Slave có chứa ID định danh của thiết bị Slave.
Modbus TCP truyền thông trên nền Ethernet. Thông tin từ Slave truyền về PLC, hệ thống SCADA quản lý tập trung
Truyền thông Modbus-RTU
Giới thiệu về giao thức Modbus RTU
Modbus RTU – Giao thức này dựa trên nền tảng chính là RS485 (hoặc có thể là RS232) .Giao thức sử dụng cổng truyền thông nối tiếp và ứng dụng cho các giao thức truyền thông nhỏ gọn , được biểu diễn với kiểu dữ liệu số nhị phân.Định dạng RTU theo các lệnh /dữ liệu với một cơ chế kiểm tra lỗi tuần hoàn để đảm bảo độ tin cậy của dữ liệu . Một gói tin của RTU phải được truyền liên tục mà không có khoảng ngắt giữa các ký tự
Kết nối phần cứng của giao thức Modbus RTU
Trong một mạng giao tiếp các thiết bị sử dụng giao thức Modbus RTU, các cảm biến hoặc các cơ cấu chấp hành thường đảm nhiệm vai trò Slave . Các thiết bị như máy tính ,PLC , vi điều khiển , thiết bị HMI,.. có thể là các thiết bị Master , nhưng đôi khi chúng cũng có thể đóng vai trò là Slave
- Cách đấu nối như sau
- A- (Master) <——> A- (Slave)
- B+ (Master) <——> B+ (Slave)
- GND (Master) <——-> GND (Slave)
Dây GND cần nối trong trường hợp khu vực đấu nối ở vùng nhiều sấm sét, máy móc hoạt động dòng lớn, nhiễu phức tạp…để tránh bị phá hỏng thiết bị hoặc tín hiệu thu được bị sai. Điện thế chênh lệch giữa GND hai bên tối đa là 7V.
Cách thức hoạt động của giao thức modbus RTU
- Modbus RTU sẽ hoạt động dựa trên nguyên tắc truyền tín hiệu thông qua Master (bên nhận) và Slave (bên truyền tín hiệu) thông qua địa chỉ thanh ghi. Các phương thức truyền tín hiệu của Modbus RTU có các dạng như RS-232, RS-485, Dùng đường truyền vật lí RS485 nên để giao tiếp được giữa master và slave ta phải cài đặt các thông số về tốc độ truyền baudrate (4800.9600.115200…), số data bit (7-8), bit stop (0-1-2) , Flag Parity kiểm tra chẵn lẻ (None, Event, Odd). Các thông số trên phải giống nhau giữa master và slave và bên master phải biết được ID của slave cần giao tiếp.
- Mỗi thiết bị trong mạng modbus sẽ được cung cấp một địa chỉ duy nhất. Trong mạng modbus chỉ có 1 node được gán là Master (ta gọi là Master, các node còn lại gọi là Node) mới có thể khởi tạo lệnh. Trong frame truyền có chứa địa chỉ của thiết bị slave (1 đến 247), chỉ thiết bị có ID tương ứng mới đáp ứng, mặc dù các thiết bị khác có thể nhận được nó (một ngoại lệ là các lệnh có thể phát được cụ thể được gửi đến nút 0, được thực hiện nhưng không được xác nhận). Tất cả các lệnh Modbus chứa thông tin tổng kiểm tra (check sum CRC) để cho phép người nhận phát hiện lỗi truyền. Master sẽ đọc và ghi các dữ liệu vào thanh ghi của thiết bị slave.
Ưu nhược điểm của Modbus RTU
Ưu điểm:
- Có thể dùng cho nhiều loại thiết bị có chung cổng Modbus RTU
- Giảm số lượng dây kết nối về cho PLC, tối ưu hóa không gian nhà xưởng hay nơi làm việc.
- Tiết kiệm một số lượng lớn module mở rộng PLC.
- Ổn định và ít bị nhiễu hơn so với tín hiệu analog 4-20ma
- Các dạng tín hiệu 2 dây RS-485 đều có khả năng truyền đi xa lên đến 1200m mà không sợ mất tín hiệu hay dữ liệu.
- Các module hoạt động độc lập nên sẽ dễ dàng quản lý
Nhược điểm:
- Tín hiệu sẽ chậm hơn việc sử dụng trực tiếp như tín hiệu analog hay digital
- Chỉ phù hợp cho các điều khiển có thời gian từ 1s trở xuống
- Cần trang bị một PLC hay Scada có cấu hình mạnh để đọc hết các thanh ghi của nhiều modbus
Truyền thông Modbus TCP/IP
Modbus TCP/IP là gì
Modbus-TCP/IP là giao thức Modbus được sử dụng trên đường truyền Ethernet, sử dụng mô hình TCP/IP để truyền thông.
Modbus-TCP là 1 mạng Ethernet công nghiệp mở được nhận diện bởi Modbus-IDA User Organization.
Phương thức truyền thông Modbus TCP/IP
- Cũng như các loại Modbus khác, Modbus TCP/IP cũng sử dụng mô hình Master-Slave để truyền thông. Tuy nhiên, được triển khai trên nền Ethernet, sử dụng bộ giao thức TCP trên nền IP.
- Modbus TCP làm cho định nghĩa Master-Slave truyền thống thay đổi. Vì Ethernet cho phép giao tiếp ngang hàng. Trong mạng TCP, các Slave có thể chủ động truyền thông tin về các thiết bị quản lý trung tâm – Master. Sử dụng địa chỉ IP trên các Master để quản lý tập trung từ phần mềm.
- Modbus TCP/IP được sử dụng trên các mạng TCP/ IP hiện đại, có 2 loại triển khai Modbus TCP:
- Modbus RTU qua TCP, đơn giản chỉ là sử dụng TCP làm lớp vận chuyển cho các thông điệp RTU.
- Modbus TCP bình thường và có một số thay đổi trong định dạng tin nhắn.
- Vì được truyền trên nền TCP/IP nên tốc độ truyền của Modbus TCP/IP cao, đáp ứng realtime. Cao hơn hẳn Modbus RTU.
- Có thể kết hợp modbus TCP/IP với modbus RTU. Được gọi là Hybird Modbus. Như hình dưới
Modbus RTU sử dụng RS485, RS232. Modbus TCP sử dụng trên nền Ethernet. Nên muốn kết hợp được 2 loại modbus này cần tìm một thiết bị có hỗ trợ 2 cổng kết nối này. Điều này bạn sẽ rất có lợi khi mở rộng quy mô sản xuất, số lượng thiết bị.