Communication Modbus TCP

1. Giới thiệu về mạng truyền thông Modbus

  • MODBUS do Modicon (hiện nay thuộc Schneider Electric) phát triển năm 1979, là một phương tiện truyền thông với nhiều thiết bị thông qua một cặp dây xoắn đơn.
  • MODBUS là một hệ thống Master – Slave, “Master” được kết nối với một hay nhiều “Slave”. “Master” thường là một PLC, PC, DCS, hay RTU. “Slave” MODBUS RTU thường là các thiết bị hiện trường.
  • Hiện nay, có 03 chuẩn modbus đang được sử dụng phổ biến trong công nghiệp và tự động hóa là: Modbus RTU, Modbus ASCII, Modbus TCP.

Vậy MosBus TCP là gì, cách truyền nhận dữ liệu ra sao mời các bạn cùng tim hiểu.

2. Modbus TCP

  •  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.
  •  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.
  •  Định dạng gói tin của Modbus TCP được thể hiện như sau:
Transation ID Protocol ID Length Unit ID Function Code Data
  •   Bảng mã chức năng

  • Địa chỉ modbus
Địa chỉ modbus Kiểu thực thi Định dạng thanh ghi vùng nhớ
00001 – 09999 Đọc hoặc ghi Bit ngõ ra  (Q)
10001 – 19999 Chỉ đọc Bit ngõ vào (I)
30001 – 39999 Chỉ đọc Đọc Word ngõ vào ( IW)
40001 – 49999 Đọc hoặc ghi Thanh ghi Holding (Register)

 

3. Thiết kế mạng truyền thông modbus TCP trên tiaportal

  • Bước 1: Thêm hai CPU S7 vào dự án

Hình 1. Kết nối 2 CPU trong Tiaportal

  • Bước 2 : Tạo khối dữ liệu cho PLC client

Hình 2.Khối nhận dữ liệu từ PLC Server

 

Hình 3.Khối Data Connection 

  • Bước 3 : Tạo khối dữ liệu PLC Server

Hình 4. Khối truyền dữ liệu cho PLC Client

Hình 5. Khối Data Connection 

  • Bước 4 : Lập trình PLC Client

Hình 6. Khối hàm MB_Client 

Hình 7. Kích hoạt khối hàm MB_Client

  • Bước 5 : Lập trình cho PLC server

Hình 8.Khối hàm MB_Server

  • Bước 6 : Kiểm tra kết quả 

Hình 9. Kết quả truyền nhận dữ liệu