Đăng Ký
Kết quả 1 đến 8 của 8
  1. #1
    Thành viên Mới
    Ngày tham gia
    Oct 2015
    Bài viết
    9
    Thanks
    1
    Thanked 1 Time in 1 Post

    Truyền thông giữa 2 con S7 - 1200 dùng lệnh TSEND_C và TRCV_C

    Mình đang gặp vấn đề về truyền thông giữa 2 con S7 - 1200. Giả sử con PLC1 có địa chỉ IP cuối là 0.3, con này là con để truyền dữ liệu.Mình muốn truyền 1 khối dữ liệu được đóng gói trong khối DB ( gồm 2 giá trị kiểu Real) được truyền bằng lệnh TSEND_C.
    Con PLC2 có địa chỉ IP cuối 0.2 là con nhận dữ liệu từ con thứ PLC 1, dùng lệnh TRCV_C để nhận. Mình đã cấu hình đầy đủ thông số đều ok hết. Nhưng kết quả nhận được của con PLC 2 là chỉ nhận được 1 giá trị đầu tiên của con PLC1, còn giá trị thứ 2 thì không nhận được.
    Mình muốn hỏi tại sao lại không nhận được tất cả các giá trị đã đóng gói trong khối DB đã gửi đi.
    Mong mọi người giúp đỡ
    Lần sửa cuối bởi khoatoan, ngày 10-07-2016 lúc 09:28 PM.

  2. #2
    Thành viên cấp 1
    Ngày tham gia
    Apr 2011
    Bài viết
    16
    Thanks
    3
    2 lượt trong 2 bài viết
    Hi khoatoan,
    - Nếu xài TIA V13 SP1 trở xuống, bạn có thể gởi chương trình mình test dùm cho nhe.

  3. #3
    Thành viên Mới
    Ngày tham gia
    Oct 2015
    Bài viết
    9
    Thanks
    1
    Thanked 1 Time in 1 Post
    Vậy b đưa gmail dùm mình, mình gửi chương trình cho. Có gì test dùm mình với, cảm ơn b nhùi

  4. #4
    Thành viên Mới
    Ngày tham gia
    Mar 2015
    Bài viết
    6
    Thanks
    1
    0 lượt trong 0 bài viết
    Cái này do LEN của bạn chưa đủ.
    Nếu là 2 giá trị kiểu Real thì nhập LEN phải là 8 (8 byte).

  5. #5
    Thành viên cấp 3
    Ngày tham gia
    Dec 2014
    Đang ở
    Hà Nội
    Bài viết
    103
    Thanks
    3
    26 lượt trong 20 bài viết
    Trích dẫn Gửi bởi khoatoan Xem bài viết
    Mình đang gặp vấn đề về truyền thông giữa 2 con S7 - 1200. Giả sử con PLC1 có địa chỉ IP cuối là 0.3, con này là con để truyền dữ liệu.Mình muốn truyền 1 khối dữ liệu được đóng gói trong khối DB ( gồm 2 giá trị kiểu Real) được truyền bằng lệnh TSEND_C.
    Con PLC2 có địa chỉ IP cuối 0.2 là con nhận dữ liệu từ con thứ PLC 1, dùng lệnh TRCV_C để nhận. Mình đã cấu hình đầy đủ thông số đều ok hết. Nhưng kết quả nhận được của con PLC 2 là chỉ nhận được 1 giá trị đầu tiên của con PLC1, còn giá trị thứ 2 thì không nhận được.
    Mình muốn hỏi tại sao lại không nhận được tất cả các giá trị đã đóng gói trong khối DB đã gửi đi.
    Mong mọi người giúp đỡ
    Anh gửi cho em vào gmail em xem với : [email protected]

  6. #6
    Thành viên Mới
    Ngày tham gia
    Oct 2015
    Bài viết
    9
    Thanks
    1
    Thanked 1 Time in 1 Post
    mình gửi vào gmail bạn rồi đó, có gì bạn tham khảo nhé. Rồi mọi người cùng thảo luận.

  7. #7
    Thành viên cấp 3
    Ngày tham gia
    Dec 2014
    Đang ở
    Hà Nội
    Bài viết
    103
    Thanks
    3
    26 lượt trong 20 bài viết
    Trích dẫn Gửi bởi khoatoan Xem bài viết
    mình gửi vào gmail bạn rồi đó, có gì bạn tham khảo nhé. Rồi mọi người cùng thảo luận.
    Em không có PLC thật nên em ko test được cho anh, down vào PLCSIM thì ko down được. Em thấy anh đang để độ dài dữ liệu truyền là 0 trong khi cả khối DB của anh có tận 18 bytes. Cái tham số LEN trong đó mặc định là 0, nếu LEN bằng 0 thì chỉ truyền 1 byte thôi anh nhé, anh thử để 18 xem có truyền được cả khối DB đó không! Với lại cái anh để tham số DATA truyền là P#DB1.DBX0.0 BYTE 18 nữa nhé. Của anh đang là P#DB1.DBX0.0 REAL 3. Em gửi link ví dụ truyền.
    https://www.fshare.vn/file/CG1GWXPGUNI8
    Lần sửa cuối bởi kochodoi, ngày 10-14-2016 lúc 03:50 PM.

  8. #8
    Little PLC

    Ngày tham gia
    Mar 2011
    Đang ở
    Mọi câu hỏi hãy đưa lên diễn dàn. Tôi không dùng hộp thư riêng.
    Bài viết
    3,151
    Thanks
    257
    1,085 lượt trong 567 bài viết
    Trích dẫn Gửi bởi khoatoan Xem bài viết
    Mình đang gặp vấn đề về truyền thông giữa 2 con S7 - 1200. Giả sử con PLC1 có địa chỉ IP cuối là 0.3, con này là con để truyền dữ liệu.Mình muốn truyền 1 khối dữ liệu được đóng gói trong khối DB ( gồm 2 giá trị kiểu Real) được truyền bằng lệnh TSEND_C.
    Con PLC2 có địa chỉ IP cuối 0.2 là con nhận dữ liệu từ con thứ PLC 1, dùng lệnh TRCV_C để nhận. Mình đã cấu hình đầy đủ thông số đều ok hết. Nhưng kết quả nhận được của con PLC 2 là chỉ nhận được 1 giá trị đầu tiên của con PLC1, còn giá trị thứ 2 thì không nhận được.
    Mình muốn hỏi tại sao lại không nhận được tất cả các giá trị đã đóng gói trong khối DB đã gửi đi.
    Mong mọi người giúp đỡ
    Có thể sử dụng coi lại trạng thái trigger của lệnh. Tạo 1 pointer với khoảng 10 real xem dữ liệu truyền nhận sao.
    Hidden Content

    Trần Văn Hiếu
    Email: Hidden Content
    Sđt: (+84)987 - 338 - 334

Đánh dấu

Quyền viết bài

  • Bạn Không thể gửi Chủ đề mới
  • Bạn Không thể Gửi trả lời
  • Bạn Không thể Gửi file đính kèm
  • Bạn Không thể Sửa bài viết của mình
  •  
Back to Top