Truyền thông s7-1200 qua cáp Ethernet – phần 1

Truyền thông S7-1200 qua cáp Ethernet

S7 communication là một kiểu kết nối hỗ trợ kết nối truyền nhận tín hiệu giữa 2 hay nhiều thiết bị của hãng Siemmens thông qua Profinet và Profibus.

Với kiểu kết nối này thì Siemmens đã đưa ra 2 hàm dùng để ghi và đọc dữ liệu lần lượt là Put và Get.

Ở bài viêt này chúng tôi sẽ chỉ ra lần lượt các bước làm sao để thực hiện việc truyền nhận dữ liệu giữa 2 PLC S7-1200. Hi vọng bài viết sẽ hữu ích cho những bạn đang có nhu cầu tìm hiểu vấn đề này.

Bước 1: Tạo project mới bằng Tia Portal và chọn PLC mà bạn sử dụng. Bạn có thể chọn luôn 2 CPU trên cùng 1 project hoặc trên 2 project riêng biệt. Ở đây mình sẽ làm theo 1 cách tổng quát là chọn 2 thiết bị trên 2 project khác nhau vì đôi khi có những trường hợp bạn không thể tạo được trên cùng 1 project vì 2 thiết bị của bạn khác nhau (S7-1200 và Logo) hoặc có firmware khác nhau.

Bước 2: Config để sử dụng chức năng Put-Get cho từng CPU.

Đầu tiên bạn vào Device configuration -> general -> Profinet Interface -> Ethernet addresses chọn địa chỉ IP cho từng CPU, chú ý 2 CPU phải có địa chỉ IP khác nhau nhưng phải cùng dải địa chỉ. Trong ví dụ này mình chọn địa chỉ IP cho 2 CPU lần lượt là: 192.168.0.1 cho CPU1 và 192.168.0.2 cho CPU2.

Tiếp theo một điều rất quan trọng đó là bạn phải enable chức năng PUT/GET của PLC lên. Để làm được điều đó thì sẽ có 1 chút khác biệt giữa 2 bản TIA V13 và TIA V14 là 2 bản thông dụng nhất hiện nay.

Đối với bản TIA V13 thì việc enable chức năng PUT/GET thì bạn vào Device configuration -> General -> Protection, kéo xuống dưới bạn sẽ thấy phần Connection mechanisms rồi tích vào ô Permit access with PUT/GET… Các ban có thể theo dõi hình bên dưới sẽ trực quan hơn.

s7 1200 bai viet communication

 

Đối với bản TIA V14 thì bạn làm như sau: Device configuration -> General -> Protection & Security -> Connection mechanisms tích vào ô Permit access with PUT/GET…

s7 1200 bai viet communication 2

Sau đó chúng ta sẽ tạo ra 1 Network với các bước sau:

Chọn vào Devices & networks sau đó sẽ xuất hiên 1 bảng, sau đó ta chọn vào Connections tìm đến S7-Connection và chọn.

Sau đó kích chuột phải vào vị trí jack cắm mạng trên con PLC sau đó chọn Add subnet, khi đó sẽ xuất hiện 1 network và như vậy xong.

s7 1200 bai viet communication 3

Bạn làm tất cả các bước trên cho cho cả 2 CPU.

Về phần cấu hình cơ bản như vậy là xong, giờ chúng ta đi vào phần lập trình.

Bước 3: Khởi tạo dữ liệu

Mục đích của là tạo ra 1 Datablock dùng để lưu dữ liệu cần đọc về hoặc dữ liệu cần truyền đi để tiện cho việc quản lý.

Như hình dưới mình đã tạo cho con CPU 1 một Datablock có tên là CPU1_Data và được lưu tại DB10. Trong datablock này ta tạo ra 2 biến là PLC1_Transmit_Data và PLC2_Receive_Data với kiểu dữ liệu struct. Sau đó tạo ra tiếp các  trường dữ liệu bên trong như hình với kiểu dữ liệu tương ứng với loại dữ liệu bạn muốn truyền nhận. Trong đó biến PLC1_Transmit_Data chính là nơi để lưu dữ liệu mà bạn muốn truyền đi còn PLC1_Receive là nơi để lưu dữ liệu mà bạn sẽ nhận về.

s7 1200 bai viet communication 4

Do hàm 2 hàm PUT, GET sẽ định địa chỉ của dữ liệu theo đường dẫn tuyệt đối nên nên bạn cần phải làm thêm bước sau để có thể sử dụng khối datablock mà ta vừa tạo theo dạng địa chỉ đường dẫn tuyệt đối.

Click chuột phải vào tên của Datablock đó, chọn properties nó sẽ hiện lên 1 cái bảng. Sau đó bạn tìm đến mục Attributes và bỏ dấu tích ở ô Optimized block access nếu có.

s7 1200 bai viet communication 5

Với CPU còn lại bạn cũng làm tương tự.

Bước 4: Viết chương trình (Xem tiếp phần 2)

 

 

 

 

 


BÀI VIẾT LIÊN QUAN