TÀI LIỆU ĐƯỢC HỖ TRỢ BỞI AI
Bạn muốn biết điều gì?
PLC User Data
User Data là một khối dữ liệu có kích thước tối đa 464 byte mà PLC ghi vào camera qua Industrial Ethernet. Camera không tự diễn giải các byte này. Bạn gán ý nghĩa cho chúng bằng cách thêm một variable tại một offset byte, ví dụ một số sê-ri 16 ký tự tại byte 0 đến 15.
Offset của User Data chạy từ 0 đến 463. Đó là con số bạn nhập vào ô Offset (byte) khi thêm một variable. Việc toàn bộ 464 byte có đến được camera hay không phụ thuộc vào giao thức và, trên PROFINET, còn phụ thuộc vào module trong dự án PLC của bạn.
Những byte nào sẽ đến
| Dự án PLC của bạn | Các byte User Data mà camera nhận được |
|---|---|
| EtherNet/IP | Tất cả, 0 đến 463. Kích thước kết nối là cố định nên không có gì để chọn |
| PROFINET với module User Data 464 | Tất cả, 0 đến 463 |
| PROFINET với module User Data 64 | Chỉ 0 đến 63 |
| PROFINET không có module User Data | Không có byte nào |
Trên PROFINET, User Data là một module tùy chọn được đặt vào slot 14 của camera trong công cụ engineering của bạn, ví dụ TIA Portal. File GSDML cung cấp hai kích thước:
| Module | Kích thước | Dùng khi |
|---|---|---|
| User Data 64 | 64 byte | Các variable của bạn nằm gọn trong 64 byte đầu. Dữ liệu cyclic nhỏ hơn |
| User Data 464 | 464 byte | Bạn cần dùng bất kỳ byte nào từ 64 trở đi, ví dụ một chuỗi dài hoặc nhiều variable |
Khi bạn thêm một variable tại offset 64 trở lên trên camera PROFINET, biểu mẫu Add variable sẽ cảnh báo: Arrives only with the User Data 464 module.
Nếu một variable nằm trên các byte mà PLC không gửi, ví dụ tại offset 100 với module User Data 64, camera sẽ không để trống. Nó đọc các byte đó là 0, nên variable sẽ trở thành 0, false hoặc một chuỗi rỗng, và mỗi lần capture sẽ lưu giá trị đó. Một script recipe kiểm tra giá trị bị thiếu (null) sẽ không bắt được. Hãy gắn module User Data 464, hoặc chuyển variable xuống dưới byte 64.
Các byte nằm ở đâu trong PLC
User Data bắt đầu sau các byte điều khiển riêng của camera, vì vậy byte User Data đầu tiên không phải là byte 0 của dữ liệu output của PLC:
| Giao thức | Byte User Data n là |
|---|---|
| EtherNet/IP, với camera được thêm từ EDS | Tag UserData[n] |
| EtherNet/IP, dưới dạng Generic Ethernet Module | DATA[32 + n] của output assembly. Byte User Data 0 là DATA[32] |
| PROFINET | Byte n của module User Data trong slot 14 |
Sau khi một giao thức được chọn trong Industrial Ethernet, biểu mẫu Add variable sẽ hiển thị các địa chỉ này tương ứng với offset bạn chọn, dưới mục Where the PLC writes it, nên bạn không cần tự tính toán. Trên EtherNet/IP, nó liệt kê cả tag UDT Rockwell và địa chỉ Generic Ethernet Module.
Thứ tự byte
Các số dài hơn một byte (INT, DINT, REAL, v.v.) được đọc theo thứ tự byte riêng của fieldbus. Camera không bao giờ hoán đổi chúng:
| Giao thức | Thứ tự byte |
|---|---|
| EtherNet/IP | Little-endian: byte thấp nhất trước |
| PROFINET | Big-endian: byte cao nhất trước |
Ghi số từ PLC theo định dạng thông thường của nó và chúng sẽ đến chính xác. Thứ tự byte chỉ quan trọng nếu bạn xây dựng giá trị theo từng byte, ví dụ trong một mảng BYTES.
Khi nào camera đọc các byte
- Camera giải mã User Data mỗi khi một byte thay đổi, nên một variable luôn được cập nhật với các byte cuối cùng mà PLC đã ghi.
- Mỗi lần inspection sẽ lưu các giá trị mà các variable có tại thời điểm các tool của nó hoàn tất. Hãy để PLC ghi User Data trước khi nó phát trigger.
- Khi không có PLC nào được kết nối, không có gì được giải mã, và mỗi variable giữ nguyên giá trị cuối cùng của nó.
Kiểm tra PLC đang gửi gì
Mở Integration > I/O Live Monitor. Fieldbus User Bytes hiển thị các byte mà camera đang nhận, trực tiếp. Nếu một variable đọc ra 0 hoặc giá trị sai, hãy kiểm tra các byte ở đó trước, sau đó đến kích thước module và offset.
Tiếp theo nên xem gì
- Variables: thêm một variable trên PLC User Data
- Industrial Ethernet: thiết lập EtherNet/IP hoặc PROFINET
- PLC handshakes: tín hiệu trigger và kết quả