AI-POWERED DOCS
What do you want to know?
Các Mẫu Tích Hợp MES & PLC
Trang này là tài liệu tham khảo dành cho kỹ sư điều khiển về cách camera được tích hợp vào nhà máy thực tế. Nó đi kèm với Integration Builder (công cụ tạo ra các Node-RED flows) và IO Helper (công cụ tạo sơ đồ đấu nối + chuỗi lệnh gọi API).
Kiến trúc tiêu chuẩn
Trong 90% các lần triển khai, đường đi là MES → PLC → Camera, không bao giờ MES → Camera trực tiếp.
Per-part decisions (ms) Aggregate decisions (sec)
------------------------ --------------------------
Barcode scan ----+
Operator HMI ----+--> PLC --recipe ID--> Camera
MES work order --+ ^ |
| <--pass/fail-- |
| <--defect class--+
Reads result,
fires reject gate
in 10-50ms PLC packages event
{WO, lot, serial, recipe,
+----------------------------> result, defect, timestamp}
|
v
MES
(OEE, quality, traceability,
hold-the-order decisions)
|
v
ERP
Các điểm chính:
- PLC đưa ra quyết định loại bỏ (reject) cho từng sản phẩm. Nó phải phản hồi trong vài mili-giây. MES không thể làm điều này (quá chậm, không có tính tất định).
- Camera báo pass/fail cho PLC, không trực tiếp cho MES.
- Lựa chọn recipe đi qua PLC. MES có thể quyết định recipe nào sẽ chạy, nhưng PLC mới là bên ghi recipe ID vào camera (qua EtherNet/IP
O.Data[4-5]hoặc word PROFINET tương đương). - MES nhận các sự kiện đã được bổ sung ngữ cảnh từ PLC (work order, lot, serial, station, recipe, pass/fail, defect class) và đưa ra các quyết định tổng hợp (giữ đơn hàng nếu tỷ lệ phế phẩm vượt ngưỡng, cảnh báo kỹ sư chất lượng, cập nhật OEE).
- Một shift register trong PLC đồng bộ kết quả kiểm tra với vị trí cổng reject ở hạ nguồn, được đánh chỉ số bằng xung encoder.
Ba mẫu tích hợp
A. PLC báo cáo lên MES (tiêu chuẩn)
Mẫu mặc định. PLC xử lý reject thời gian thực. PLC đóng gói kết quả cùng với ngữ cảnh work order và chuyển tiếp lên MES qua OPC UA hoặc MQTT.
Khi nào sử dụng: bất kỳ dây chuyền sản xuất nào có PLC. Phổ biến trong ngành ô tô, đóng gói, thực phẩm/đồ uống, dược phẩm.
Chuỗi endpoint (thiết lập một lần trong quá trình commissioning):
| Bước | Method | Path | Mục đích |
|---|---|---|---|
| 1 | GET | /edge/download/industrial_ethernet/ethernet_ip_eds | Tải file EDS (khớp với firmware). Đưa cho lập trình viên PLC. |
| 2 | POST | /edge/recipe/change_plc_recipe_id | Ánh xạ camera recipes sang các ID thân thiện với PLC (1, 2, 3...) khớp với mã SKU của MES. |
| 3 | POST | /edge/environmental_variables | Lưu trữ ngữ cảnh nhà máy (line code, MES URL) cho Node-RED flow. |
| 4 | GET | /edge/nodered/flow | Đọc Node-RED flow recipe đang hoạt động. |
| 5 | POST | /edge/nodered/flow | Triển khai flow đã cập nhật với publisher OPC UA / MQTT. |
B. Camera publish song song với PLC (mẫu song song hiện đại)
PLC vẫn xử lý reject. Camera ĐỒNG THỜI publish một payload phong phú hơn (image_ref, defect class, confidence) trực tiếp tới MQTT hoặc OPC UA cho historian, dashboards và AI training. Chạy song song với đường PLC, không thay thế nó.
Khi nào sử dụng: các nhà máy có sáng kiến Unified Namespace (HiveMQ + Ignition + Grafana, Litmus Edge, HighByte). Các site Industry 4.0 greenfield.
Chuỗi endpoint:
| Bước | Method | Path | Mục đích |
|---|---|---|---|
| 1 | GET | /edge/nodered/flow | Đọc flow đang hoạt động. |
| 2 | POST | /edge/nodered/flow | Triển khai flow với mqtt-out (hoặc sparkplug-out) trỏ đến broker của bạn. |
| 3 | GET | /edge/capture_result | Tùy chọn: backfill các kết quả lịch sử trong quá trình đồng bộ ban đầu. |
| 4 | GET | /edge/capture_result/{capture_id}/heatmap | OV80i: lấy ảnh PNG defect heatmap cho các lần kiểm tra bị fail. |
Camera đi kèm với MQTT broker tích hợp sẵn tại ws://{camera_ip}:9001/mqtt, vì vậy các triển khai nhỏ không cần broker bên ngoài.
C. Standalone (không có PLC)
Không có PLC sản xuất. Một ứng dụng của operator hoặc cloud MES giao tiếp trực tiếp với camera qua REST: lấy work order, chuyển recipe, kích hoạt kiểm tra, nhận kết quả. Operator chính là actuator.
Khi nào sử dụng: bàn rework, kiểm tra tại phòng thí nghiệm, kiểm tra hàng nhập, cloud MES kiểu Tulip với máy tính bảng, returns/reverse logistics.
Không khuyến nghị cho: dây chuyền băng tải tốc độ cao (không có reject thời gian thực), môi trường được quy định cần logic an toàn PLC được chứng nhận.
Chuỗi endpoint (mỗi lần kiểm tra):
| Bước | Method | Path | Mục đích |
|---|---|---|---|
| 1 | POST | /edge/api/recipes/{plc_recipe_id}/activate | Chuyển sang recipe khớp với barcode / work order đã quét. |
| 2 | POST | /edge/camera/capture | Kích hoạt một lần kiểm tra qua REST. |
| 3 | GET | /edge/capture_result | Poll để lấy kết quả mới nhất (hoặc subscribe MQTT để nhận push). |
| 4 | POST | /edge/v2/capture/{capture_id}/notes | OV80i: đính kèm ngữ cảnh work-order vào capture để truy xuất nguồn gốc. |
| 5 | POST | /edge/camera/do | Tùy chọn: kích hoạt một đoạn stack-light từ ứng dụng MES. |
Schema kết quả kiểm tra chuẩn
Bất kể là mẫu nào hay phương thức truyền tải nào, đây là payload phổ dụng. Sử dụng nó làm hợp đồng giữa camera và MES của bạn.
| Field | Type | Required | Example |
|---|---|---|---|
timestamp | ISO 8601 | yes | 2026-04-13T14:23:51.234Z |
part_id | string | yes | SN-A7841 |
lot_id | string | no | L-2026-04-13-A |
work_order | string | no | WO-78451 |
station_id | string | yes | STA-INSP-3 |
recipe_name | string | yes | Bottle 330ml v3 |
result | enum (PASS / FAIL / INCONCLUSIVE) | yes | PASS |
defect_class | string[] | no | ["scratch", "dent"] |
confidence | float (0.0 to 1.0) | no | 0.987 |
image_ref | URI | no | s3://acme-vision/2026/04/13/cap-12345.jpg |
operator_id | string | no | op.jane.doe |
cycle_time_ms | integer | no | 187 |
Những hiểu lầm phổ biến
"MES cho camera biết phải dùng recipe nào." Sai trong kiến trúc PLC tiêu chuẩn. MES nói với PLC. PLC nói với camera. Ngoại lệ duy nhất là Mẫu C (không có PLC).
"MES đưa ra quyết định reject." Sai. PLC làm việc đó. MES chỉ đưa ra các quyết định tổng hợp như "giữ đơn hàng nếu scrap vượt 2%."
"Camera báo cáo trực tiếp lên MES." Sai trong các kiến trúc tiêu chuẩn. Camera báo cáo cho PLC. PLC đóng gói cùng ngữ cảnh và chuyển tiếp lên MES. Ngoại lệ là đường song song của Mẫu B, trong đó camera ĐỒNG THỜI publish một payload phong phú hơn tới MQTT/UNS cho mục đích phân tích, nhưng điều này chạy song song với đường PLC.
Bước tiếp theo
- Sử dụng IO Helper để đấu nối camera + PLC + cảm biến và tạo file EDS, bit mapping, và khung tích hợp MES.
- Sử dụng Integration Builder để tạo Node-RED flow thực tế (MQTT publisher, OPC UA writer, REST POST tới MES, v.v.) từ mô tả bằng ngôn ngữ tự nhiên.