Modbus là gì? Khái niệm và phân loại

Modbus là gì? Nhiều bạn đã nghe qua các khái niệm về RS232, RS485 thì có thể tượng tưởng được nếu chúng là phần xác thì Modbus là phần hồn. Chúng hiện diện song song với nhau. Vậy qua bài này ta sẽ đi sâu hơn để hiểu được Modbus là gì? Và chúng có vai trò gì nhé.

1. Modbus là gì?

Modbus là gì?

Modbus là một giao thức truyền thông được phát triển vào năm 1979, bởi Modicon – nay là Schneider Electric và đang được tổ chức Modbus duy trì. Hơn 40 năm hoạt động Modbus vẫn là giao thức được sử dụng phổ biến nhất, đặc biệt trong các thiết bị công nghiệp điện tử.

Modbus là một cách để các thiết bị công nghiệp điện tử như PLC, DCS, HMI và dụng cụ giao tiếp với nhau, cho phép thông tin được truyền qua các đường nối tiếp giữa các thiết bị điện tử.

Các thiết bị yêu cầu thông tin sử dụng Modbus được gọi là Modbus Master, các thiết bị cung cấp thông tin Modbus được gọi là Modbus Slaves. Một hệ thống có thể có 1 Master trên mỗi mạng Modbus, nhưng có 247 Slaves. Mỗi Slave có một địa chỉ duy nhất của riêng chúng.

Modbus gateway hay cổng Modbus còn được gọi là cổng giao tiếp Ethernet. Nó có thể chuyển đổi giữa Modbus RTU/ASCII và Modbus TCP. Các giao thức Modbus có thể phân loại thành hai loại, một loại là Modbus RTU dựa trên RS485 (hoặc ASCII) và loại còn lại là Modbus TCP dựa trên Ethernet.

2. Nguyên tắc hoạt động của Modbus

Nguyên tắc hoạt động của Modbus

MODBUS hoạt động theo nguyên tắc “Master – Slave” hay còn gọi là “Chủ – Tớ”. Có nghĩa một Master có thể kết nối được với một hay nhiều “Slave”. Ở đây Master thường là PLC, PC, DCS, RTU hay SCADA và Slave là các thiết bị cấp hiện trường.

Giao thức Modbus trao đổi thông tin bằng cách sử dụng cơ chế trả lời yêu cầu của chủ máy khách và máy chủ. Nói một cách dễ hiểu, nó là một phương pháp được sử dụng để truyền thông tin qua đường dây nối tiếp giữa các thiết bị điện tử.

Trong mạng Modbus tiêu chuẩn, có một Master và tối đa 247 Slave, mỗi Slave có một địa chỉ Slave duy nhất từ ​​1 đến 247. Master cũng có thể ghi thông tin vào các Slave.

Nguyên tắc chủ-nô có những đặc điểm sau:

  • Mỗi lần chỉ có 1 chủ được kết nối mạng.
  • Chỉ có chủ mới có thể bắt đầu giao tiếp và gửi yêu cầu cho các nô lệ.
  • Modbus có thể giải quyết từng nô lệ, bằng cách sử dụng địa chỉ cụ thể của nó; hoặc tất cả các nô lệ đồng thời sử dụng địa chỉ 0.
  • Nô lệ chỉ có thể được gửi câu trả lời cho chủ.
  • Các nô lệ không thể bắt đầu giao tiếp với chủ hoặc với các nô lệ khác.

3. Phân loại chuẩn MODBUS

3.1 Modbus RTU

Modbus RTU

Đây là giao thức truyền thông lí tưởng đối với RS232 hay RS485, tốc độ từ 1200 đến 115000 baud. Tốc độ phổ biến nhất là từ 9600 đến 19200 baud.

Dữ liệu được mã hóa theo hệ nhị phân, và chỉ cần một byte truyền thông cho một byte dữ liệu. Mỗi 1 byte (8 bit) data/message của Modbus RTU truyền đi sẽ có định dạng tổng cộng 11 bit bao gồm:

  • 1 start bit
  • 8 bit data/message, bit LSB được truyền trước
  • 1 bit parity
  • 1 stop bit

Một frame truyền của Modbus RTU sẽ bao gồm:

Địa chỉ slaveFunctionCode DataCRC
  • 1 byte
  • 1 byte
  • 0 đến 252 byte
  • 2 byte gồm 1 byte CRC thấp (trước) và 1 byte CRC cao (sau)

Để đảm bảo quá trình truyền thông trọn vẹn, thời gian cách nhau của các frame truyền Modbus RTU nên ít nhất bằng thời gian truyền của 3.5 ký tự và thời gian cách nhau để truyền 2 ký tự liên tiếp tối đa bằng thời gian truyền của 1.5 ký tự

3.2 Modbus TCP

Modbus TCP

Modbus TCP/IP hoặc Modbus TCP thực hiện việc truyền thông qua mạng TCP/IP, kết nối qua cổng 502. Modbus TCP/IP không yêu cầu tính toán checksum, vì các lớp thấp hơn đã hỗ trợ checksum.

TênChiều dài (byte)Tính năng
Transaction identifier2
  • Để đồng bộ hóa giữa các thông báo của máy chủ và máy khách
Protocol identifier2
  • 0 cho Modbus / TCP
Length field2
  • Số byte còn lại trong khung này
Unit identifier1
  • Địa chỉ máy chủ (255 nếu không được sử dụng)
Function code1
  • Mã chức năng như trong các biến thể khác
Data bytesNS
  • Dữ liệu dưới dạng phản hồi hoặc lệnh

Định dạng frame của Modbus TCP này chủ yếu được sử dụng trên mạng Ethernet. Ngoài ra còn có 2 biến thể tương tự Modbus TCP được triển khai bao gồm:

  • Modbus over TCP/IP hoặc Modbus over TCP hoặc Modbus RTU/IP: Đây là một biến thể Modbus khác với Modbus TCP ở việc checksum đã bao gồm trong gói tin (payload) như với Modbus RTU.
  • Modbus over UDP: Sử dụng Modbus qua UDP trên mạng IP, và loại bỏ các header được yêu cầu của TCP.

3.3 Modbus ASCII

Mọi thông điệp tại Modbus ASCII được mã hóa bằng hexadecimal, sử dụng đặc tính ASCII 4 bit. Đối với mỗi một byte thông tin, cần có 2 byte truyền thông.

Thành phần frame dữ liệu của Modbus ASCII bao gồm: 1 bit start, 7 bit dữ liệu với bit LSB được gởi trước, 1 bit để kiểm tra chẵn lẻ, 1 stop bit nếu dùng parity hoặc 2 bit nếu không dùng parity.

Bên cạnh frame dữ liệu, Modbus ASCII còn dùng thêm trường kiểm tra lỗi hình thành theo phương pháp Longitudinal Redundancy Check. Modbus ASCII message bắt đầu bởi dấu hai chấm (“:”, với mã ASCII là 0x3A) và kết thúc bởi cặp ký dự dòng mới ở cuối là CR/LF (mã ASCII là 0x0D và 0x0A).

Định dạng frame của Modbus ASCII:

TênChiều dài (byte)Hàm số
Start1
  • Bắt đầu bằng dấu hai chấm : (Giá trị hex ASCII là 3A)
Address2
  • Địa chỉ station
Function2
  • Cho biết các mã chức năng như đọc coil/đầu vào
Datan x 2
  • Dữ liệu + độ dài sẽ được điền tùy thuộc vào loại message.
LRC2
  • Checksum (Longitudinal redundancy check)
End2
  • Chuyển trả hàng – cặp nguồn cấp dữ liệu dòng (CR/LF) (các giá trị ASCII 0D, 0A)

Trong 3 loại giao thức thì Modbus ASCII chạy chậm nhất nhưng lại phù hợp với modem điện thoại hay kết nối sử dụng sóng radio bởi ASCII sử dụng các tính năng phân định thông điệp.

4. Sử dụng Modbus RTU

4.1 Cách kết nối Master – Slave Modbus RTU

Cách kết nối Master – Slave Modbus RTU

Hiểu được bản chất truyền tín hiệu của Modbus RTU giúp kết nối các tín hiệu chuẩn Modbus RTU một cách chính xác nhất. Tất cả các tín hiệu chuẩn Modbus RTU được mắc song song nhau trên hai dây truyền về Master qua chuẩn RS485.

4.2 Bộ chuyển đổi tin hiệu Digital sang Modbus

Bộ chuyển đổi tin hiệu Digital sang Modbus

Sử dụng Z-10-D-IN để tiết kiệm chi phí và không gian lắp đặt. Đối với những dự án lớn có hơn 100 tín hiệu Digital thì chỉ cần dùng 10 bộ Z-10-D-IN mắc song song đưa về 2 dây tín hiệu Modbus RTU là có thể giải quyết.

Điều đặc biệt là Modul chuyển đổi Digital sang Modbus này có thể nhận các loại tín hiệu Digital khác nhau : relay , PNP , NPN , Namur và cả tần số.

4.3 Bộ chuyển đổi nhiệt độ Pt100 sang Modbus

Bộ chuyển đổi nhiệt độ Pt100 sang Modbus

Bộ chuyển đổi Z-4RTD2 nhận cùng lúc 4 tín hiệu RTD loại Pt100 sang Modbus RTU RS485 2 dây. Thang đo của 4 cảm biến nhiệt độ pt100 được đọc trong thanh ghi của Z-4RTD2.

Các loại tín hiệu RTD mà Z-4RTD2 có thể nhận loại 2 dây, 3 dây, 4 dây

  • Pt100 : -200 … 650 độ C
  • NI100 : -60… 250 độ C
  • Pt500 : -200 … 750 độ C
  • Pt1000 : -200…210 độ C

4.4 Bộ chuyển đổi tín hiệu Thermocouple sang Modbus

Bộ chuyển đổi tín hiệu Thermocouple sang Modbus

Bộ chuyển đổi Z-4TC nhận 4 tín hiệu nhiệt độ dạng Thermocouple cho ra Modbus RTU.

Tương tự bộ chuyển đổi Z-4RTD2 thì bộ chuyển đổi Z-4TC nhận được 4 tín hiệu riêng biệt nhưng dạng Thermocouple

4.5 Bộ chuyển đổi tín hiệu Z-4AI

Bộ chuyển đổi tín hiệu Z-4AI

Bộ chuyển đổi Z-4AI nhận cùng lúc 4 tín hiệu analog dạng 4-20mA hoặc 0-10V độc lập nhau chuyển đổi thành tín hiệu Modbus RTU đưa về Scada.

Sai số 0.1% trên toàn Input đầu vào đảm bảo tín hiệu truyền đi không bị biến đổi so với đầu vào. Thời gian đáp ứng nhanh nhỏ hơn 10ms đáp ứng nhanh cho các yêu cầu cần độ chính xác cao.

4.6 Bộ chuyển đổi tín hiệu Z-8AI

Bộ chuyển đổi tín hiệu Z-8AI chính là giải pháp hoàn hảo với 8 tín hiệu analog đầu vào. Tín hiệu ngõ ra dạng Modbus RTU cũng với sai số 0.1% và thơi gian đáp ứng nhỏ hơn 10ms.

>>> Xem thêm: Tổng hợp Modicon – Schneider

Trả lời

Email của bạn sẽ không được hiển thị công khai.

plc schneider sử dụng cookie để cung cấp cho bạn trải nghiệm duyệt web tốt hơn. Bằng cách duyệt trang web này, bạn đồng ý với việc sử dụng cookie của chúng tôi.