跳到主要內容

AI 驅動文件

您想了解什麼?

MES 與 PLC 整合模式

本頁面是控制工程師的參考文件,介紹相機如何融入實際工廠環境。它與 Integration Builder(用於生成 Node-RED 流程)和 IO Helper(用於生成接線方案和 API 呼叫序列)配合使用。

標準架構

在 90% 的安裝場景中,路徑是 MES → PLC → 相機,而不是 MES → 相機直連。

                        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

關鍵要點:

  • PLC 負責單個零件的剔除決策。它必須在毫秒級內響應。MES 無法勝任此任務(速度太慢、非確定性)。
  • 相機 將 pass/fail 結果上報給 PLC,而不是直接上報給 MES。
  • 程式選擇 透過 PLC 進行。MES 可以決定 應該 執行哪個程式,但由 PLC 將程式 ID 寫入相機(透過 EtherNet/IP O.Data[4-5] 或等效的 PROFINET 字)。
  • MES 從 PLC 接收帶上下文的事件(工單、批次、序列號、工位、程式、透過/失敗、缺陷類別),並做出聚合決策(若廢品率超過閾值則暫停工單、提醒質量工程師、更新 OEE)。
  • PLC 移位暫存器 根據編碼器脈衝索引,將檢測結果與下游剔除閘門的位置進行同步。

三種模式

A. PLC 向 MES 上報(標準模式)

預設模式。PLC 處理實時剔除。PLC 將結果與工單上下文一起打包,透過 OPC UA 或 MQTT 轉發到 MES。

適用場景: 任何帶 PLC 的生產線。常見於汽車、包裝、食品飲料、製藥行業。

Endpoint 呼叫序列(除錯時一次性配置):

步驟方法路徑用途
1GET/edge/download/industrial_ethernet/ethernet_ip_eds下載 EDS 檔案(與韌體匹配)。提供給 PLC 程式設計人員。
2POST/edge/recipe/change_plc_recipe_id將相機程式對映為與 MES SKU 程式碼匹配的 PLC 友好 ID(1、2、3...)。
3POST/edge/environmental_variables為 Node-RED 流程持久化工廠上下文(線體程式碼、MES URL)。
4GET/edge/nodered/flow讀取當前活動程式的 Node-RED 流程。
5POST/edge/nodered/flow部署已更新的流程,包含 OPC UA / MQTT 釋出器。

B. 相機與 PLC 並行釋出(現代並行模式)

PLC 仍負責剔除操作。相機同時將更豐富的資料負載(image_ref、缺陷類別、置信度)直接釋出到 MQTT 或 OPC UA,供歷史資料庫、儀表板和 AI 訓練使用。與 PLC 路徑並行執行,而非替代它。

適用場景: 採用統一名稱空間(Unified Namespace)方案的工廠(HiveMQ + Ignition + Grafana、Litmus Edge、HighByte)。新建的工業 4.0 站點。

端點呼叫順序:

步驟方法路徑用途
1GET/edge/nodered/flow讀取當前活動的流程。
2POST/edge/nodered/flow部署包含 mqtt-out(或 sparkplug-out)並指向您的 broker 的流程。
3GET/edge/capture_result可選:在初始同步期間回填歷史結果。
4GET/edge/capture_result/{capture_id}/heatmapOV80i:為失敗的檢查拉取缺陷熱力圖 PNG。

相機內建 MQTT broker,地址為 ws://{camera_ip}:9001/mqtt,因此小型部署無需外部 broker。

C. 獨立模式(無 PLC)

無生產 PLC。操作員應用程式或雲端 MES 透過 REST 直接與相機通訊:拉取工單、切換程式、觸發檢查、獲取結果。操作員充當執行器。

適用場景: 返工臺、實驗室檢查、來料檢查、使用平板電腦的 Tulip 風格雲端 MES、退貨/逆向物流。

不推薦用於: 高速輸送線(無實時剔除)、需要認證 PLC 安全邏輯的受監管環境。

端點呼叫順序(每次檢查):

步驟方法路徑用途
1POST/edge/api/recipes/{plc_recipe_id}/activate切換到與掃描的條形碼 / 工單匹配的程式。
2POST/edge/camera/capture透過 REST 觸發單次檢查。
3GET/edge/capture_result輪詢最新結果(或訂閱 MQTT 以獲取推送)。
4POST/edge/v2/capture/{capture_id}/notesOV80i:為捕獲附加工單上下文以便追溯。
5POST/edge/camera/do可選:從 MES 應用程式觸發指示燈柱某一段。

標準檢查結果架構

無論採用何種模式或傳輸方式,以下是通用的資料負載。將其作為相機與 MES 之間的契約使用。

欄位型別必需示例
timestampISO 86012026-04-13T14:23:51.234Z
part_idstringSN-A7841
lot_idstringL-2026-04-13-A
work_orderstringWO-78451
station_idstringSTA-INSP-3
recipe_namestringBottle 330ml v3
resultenum (PASS / FAIL / INCONCLUSIVE)PASS
defect_classstring[]["scratch", "dent"]
confidencefloat (0.0 到 1.0)0.987
image_refURIs3://acme-vision/2026/04/13/cap-12345.jpg
operator_idstringop.jane.doe
cycle_time_msinteger187

常見誤區

"MES告訴相機使用哪個程式。" 在標準PLC架構中是錯誤的。MES告訴PLC。PLC告訴相機。唯一的例外是模式C(無PLC)。

"MES做出剔除決策。" 錯誤。由PLC做出。MES僅做出聚合決策,例如"如果廢品率超過2%則暫停訂單"。

"相機直接向MES報告。" 在標準架構中是錯誤的。相機向PLC報告。PLC打包上下文資訊並轉發給MES。例外情況是模式B的並行路徑,其中相機還會將更豐富的有效負載釋出到MQTT/UNS以用於分析,但這與PLC路徑並行執行。

下一步

  • 使用 IO Helper 連線相機 + PLC + 感測器,並生成EDS檔案、位對映和MES整合腳手架。
  • 使用 Integration Builder 根據自然語言描述生成實際的 Node-RED 流程(MQTT釋出者、OPC UA寫入器、REST POST到MES等)。