Truyền thông 2 PLC bằng lệnh PUT/GET

0
689

Giới thiệu

Lệnh PUT/GET là một trong các phương pháp giúp kết nối 2 PLC Siemens với nhau. Đây là kiểu kết nối nằm trong bộ S7 connection và là kiểu truyền thông đơn phương – tức là bạn chỉ cần lập trình trên 1 thiết bị, thiết bị còn lại không cần lập trình truyền thông gì cả.

Đầu tiên, để hiểu được PUT/GET, chúng ta hãy cùng tìm hiểu về bộ S7-connection nhé.

S7 Connection là gì?

S7 connection là một phương thức truyền thông dành cho các PLC của hãng Siemens. Vì vậy chỉ những PLC thuộc hãng Siemens mới có thể giao tiếp được với nhau thông qua chuẩn này. S7 Connection gồm có các cặp lệnh truyền nhận BSEND/BRCV, USEND/URCV và PUT/GET.

Các lệnh truyền thông trong S7-connection không phụ thuộc vào kiểu kết nối vật lý. Các bạn có thể dùng cáp Profinet/IE, Profibus hoặc MPI đều có thể dùng được và cấu hình giống như nhau.

Trong đó, PUT/GET là kiểu cấu hình đơn phương, bạn chỉ cần cấu hình trên 1 thiết bị. Còn BSEND/BRCV và USEND/URCV là cấu hình song phương. Chúng ta phải cấu hình trên cả 2 thiết bị mới có thể truyền nhận được.

Bảng tóm tắt các đặc điểm của S7-Connection

Trong bài ngày hôm nay, chúng ta sẽ tìm hiểu cặp lệnh truyền thông đầu tiên trong bộ S7-connection. Đó là Put/Get

Các thông số trong cặp lệnh PUT/GET

Về nguyên lý, lệnh PUT/GET sẽ được lập trình trên 1 PLC. Vì vậy chúng ta sẽ xem xét PLC nào chủ động thì sẽ lập trình PUT/GET trên PLC đấy.

Lệnh PUT

Ta có sơ đồ kết nối như sau: PLC local sẽ lấy dữ liệu trong DB1 gửi sang và ghi vào DB2 của PLC partner.

Khi đó lệnh PUT sẽ có các ngõ vào ra như sau:

Trong đó chi tiết các thông số:

Các bạn lưu ý là ID có kiểu Word và dạng số Hex. Vì vậy chúng ta phải ghi dưới dạng W#16#ID.

Cấu trúc ghi địa chỉ DB như sau: P#DBa.DBXx.y BYTE n

Trong đó: a: chỉ số của DB; x, y: chỉ số của bit bắt đầu dãy ô nhớ. n: số byte sẽ truyền/nhận

Lệnh GET

Tương tự như vậy, ta có sơ đồ kết nối như sau: PLC local sẽ lấy dữ liệu từ DB3 gửi sang và lưu vào DB2 của mình (PLC Local).

Khi đó lệnh GET sẽ có các ngõ vào ra như sau:

Trong đó chi tiết các thông số:

Lưu ý khi thực hiện lệnh PUT/GET

Lưu ý 1: Các bạn phải tắt chế độ Optimized block access của DB đi. Khi đó các biến nhớ trong DB có địa chỉ xác định thì mới có thể truyền thông được.

Lưu ý 2: Đối với các dòng PLC S7-1200/S7-1500 thì các bạn phải vào Properties của PLC và bật cho phép tính năng Put/Get hoặc động nhé. Như vậy thì PLC khác mới có thể dùng PUT/GET truy cập vào ô nhớ của PLC được.

Ví dụ thực hành trên TIA Portal

Trong ví dụ này, chúng ta sẽ được thực hành truyền thông 2 PLC với kiểu kết nối Profinet và Profibus. Các bạn sẽ thấy được tính năng của S7-connection là không phụ thuộc vào kiểu kết nối, tức là dù kết nối nào thì cũng lập trình tương tự như nhau.

Các bạn xem clip phía dưới để xem ví dụ thực hành trên TIA Portal nhé.

(Video đang edit, mình sẽ post sau :D)

 

 

 

 

 

 

 

 

BÌNH LUẬN

Please enter your comment!
Please enter your name here