跳到主要內容

AI 驅動文件

您想了解什麼?

Node-RED 除錯

本指南提供 OV20i 攝像頭系統上 Node-RED 問題的全面故障排除流程。可用於現場檢修、排查生產問題以及對檢測流程的預防性維護。

注意

Safety First: 在對正在執行的檢測系統進行修改前,請始終通知生產並在修改流程前進行備份。

緊急快速修復程式

系統關鍵故障 - 立刻行動

步驟操作時長結果
1檢查相機電源 LED 狀態30 秒確認硬體正常
2訪問 OV20i Node-RED:http://camera-ip/recipes/<recipe-number>/ioblock1 分鐘編輯器可訪問性確認
3查詢紅色三角形錯誤指示標誌1 分鐘標識出故障節點
4點選 Deploy 按鈕(Full Deploy)30 秒重置所有流程
5測試基本檢測觸發2 分鐘驗證系統是否執行正常

系統恢復(如果 Editor Won't Load)

OV20i 攝像頭沒有安全模式——重啟是主要的恢復方法:

  1. 斷電並重新上電攝像頭(斷開電源 10 秒)
  2. 等待完整啟動(全部 4 個 LEDs 固定亮起 - 約 2-3 分鐘)
  3. 透過配方特定的 URL 訪問活動配方的 Node-RED
  4. 驗證流程完整性並進行必要的修復
  5. 部署變更以恢復正常執行
備註

URL 格式: http://<camera-ip>/recipes/<recipe-number>/ioblock

示例:

  • http://192.168.0.101/recipes/20/ioblock
  • http://192.168.0.105/recipes/1/ioblock

系統化除錯流程

第 1 步:確定問題範圍

快速評估問題

問題若為 Yes(是)若為 No(否)
是否可以訪問 OV20i 的 Node-RED 介面?進入第 2 步檢查網路/相機狀態
編輯器中是否能看到流程?進入第 2 步斷電重啟相機並重試
是否在節點上看到錯誤三角形?優先關注這些節點檢查流程執行情況
檢測是否正在觸發?檢查各節點輸出驗證觸發輸入
備註

訪問 URL: 使用配方特定的 URL 格式:http://<camera-ip>/recipes/<recipe-number>/ioblock

第 2 步:啟用除錯監控

為故障排除新增除錯節點

  1. 在問題流程的關鍵點放置 Debug 節點:
    • 觸發輸入之後
    • 邏輯節點的前後
    • 最終輸出處
  2. 為儘可能獲取完整資訊而配置 Debug 節點:
    • 輸出(Output): 完整的訊息物件
    • 到(To): Debug 側邊欄
    • 名稱(Name): 描述性名稱(如 “After Classification Logic”)
  3. 在編輯器中點選按鈕啟用所有 Debug 節點

除錯側邊欄管理

訪問除錯側邊欄:

  • 在右側面板點選 Debug 選項卡(錯誤圖示)
  • 使用垃圾桶圖示清除舊訊息
  • 如節點數量過多,請使用篩選訊息

除錯訊息解釋:

  • 時間戳(Timestamp) 顯示訊息發生時間
  • 節點名稱(Node name) 顯示生成該訊息的節點
  • 訊息內容(Message content) 顯示資料結構和值

第 3 步:跟蹤流程執行

跟蹤訊息路徑

  1. 從觸發源開始(注入、定時器、外部輸入)
  2. 驗證每個節點接收到了預期輸入
  3. 檢查每一步中的訊息轉換
  4. 識別流程在何處停止或產生錯誤輸出

常見流程中斷點

節點型別常見問題快速檢查
分類邏輯未達到置信度閾值檢查 ROI 對齊,重新訓練模型
Switch 節點條件邏輯錯誤驗證開關規則和訊息屬性
Join 節點等待不完整的訊息集檢查訊息部分數量
Function 節點JavaScript 錯誤檢查瀏覽器控制檯中的錯誤
HTTP 請求網路連線手動測試端點

常見 Node-RED 問題與解決方案

流程執行問題

問題:流程未觸發

症狀:

  • 除錯側邊欄中無訊息
  • 系統看起來處於非活動狀態
  • 外部觸發不起作用

診斷步驟:

  1. 檢查觸發源: 手動注入、定時器、外部輸入
  2. 驗證連線: 確保節點之間的連線
  3. 測試手動觸發: 使用 Inject 節點強制啟動流程

解決方案:

原因解決方案防止措施
禁用的流程點選 Deploy → 完全部署變更後定期部署
連線斷開正確重新連線節點編輯過程中的視覺化檢查
定時器配置錯誤檢查 Inject 節點的定時設定記錄定時要求
外部觸發失敗驗證 I/O 佈線與訊號定期進行 I/O 測試

問題:流程正在執行但結果錯誤

症狀:

  • 訊息在流動但分類結果不正確
  • 透過/失敗邏輯未正確工作
  • 結果不一致

診斷過程:

  1. 在可疑節點前後新增 Debug 節點
  2. 比較期望與實際的訊息內容
  3. 檢查節點配置以確保引數正確

解決方案:

問題區域檢查項修復措施
分類邏輯ROI 對齊,模型訓練重新訓練或調整 ROI
Switch 條件屬性名稱和值修正開關邏輯
訊息屬性資料型別和格式使用 Change 節點修正格式
上下文變數儲存的值與作用域清除/重置上下文儲存

效能問題

問題:流程執行緩慢

症狀:

  • 觸發與輸出之間的延遲
  • 檢查超時
  • 系統滯後

效能診斷:

  1. 檢查 Debug 時間戳以識別慢節點
  2. 監控攝像頭系統的 CPU 使用率
  3. 統計活動 Debug 節點(禁用/移除未使用的節點)

最佳化措施:

效能問題解決方案預期改進
除錯節點過多禁用/移除未使用的 Debug 節點提升約 10-20% 的速度
複雜的 Function 節點最佳化 JavaScript 程式碼變數改進(視具體情況而定)
高頻觸發新增延時/速率限制防止系統過載
大型訊息物件減少訊息載荷大小處理更快

維護程式

每日健康檢查

視覺流程檢查(5 分鐘)

  1. 訪問 Node-RED 編輯器
  2. 檢查錯誤指示符(紅色三角形)
  3. 驗證流程連線是否完好
  4. 檢視最近的 Debug 訊息以發現異常

流程執行測試(10 分鐘)

  1. 使用 Inject 節點進行手動觸發測試
  2. 在 Debug 側邊欄中驗證預期輸出
  3. 使用已知良品與不良品測試透過/失敗邏輯
  4. 確認外部通訊(PLC、資料庫)

月度維護任務

效能評估(15 分鐘)

流程最佳化清單:

任務措施說明
除錯節點清理禁用未使用的除錯節點僅保留必要的除錯輸出
上下文儲存審查清除不必要的儲存值防止記憶體堆積
錯誤日誌審查檢查瀏覽器控制檯中的錯誤記錄重複出現的問題
備份建立匯出流程到備份檔案按日期/版本資訊存檔

配置驗證(20 分鐘)

  1. 將當前流程與文件化標準進行比較
  2. 驗證所有關鍵路徑是否具備適當的錯誤處理
  3. 測試錯誤恢復場景
  4. 對任何變更更新文件

月度深度維護

綜合流程分析(45 分鐘)

效能指標採集:

  • 流程執行時間
  • 錯誤發生頻率分析
  • 資源使用模式
  • 通訊可靠性

流程結構回顧:

  • 消除冗餘節點
  • 整合重複邏輯
  • 更新已棄用的配置
  • 最佳化複雜的 Function 節點

備份與恢復測試(30 分鐘)

  1. 建立完整的流程匯出
  2. 在備份系統上測試匯入過程
  3. 驗證備份還原是否保持功能
  4. 記錄恢復程式

診斷工具與技術

內建 Node-RED 工具

除錯側邊欄功能

功能使用場景訪問方式
訊息過濾聚焦特定節點側邊欄中的篩選按鈕
訊息歷史回顧最近 100 條訊息在 Debug 側邊欄滾動檢視
節點定位查詢 Debug 訊息來源在訊息中單擊節點名稱
訊息匯出儲存診斷資料複製訊息內容

上下文資料檢視器

訪問上下文儲存:

  • 開啟 OV20i Node-RED 介面(http://<camera-ip>/recipes/<recipe-number>/ioblock
  • 轉到右側邊欄的 Context Data 選項卡
  • 檢視 Node/Flow/Global 上下文值

上下文除錯:

  • 節點上下文: 檢查單個節點狀態
  • 流程上下文: 驗證共享流程變數
  • 全域性上下文: 檢視系統範圍設定

網路通訊測試

HTTP 請求驗證:

  1. 使用外部工具(Postman、curl)測試端點
  2. 驗證響應格式是否與預期資料匹配
  3. 測試錯誤條件(超時、無效響應)

PLC 通訊驗證:

  1. 使用 PLC 程式設計軟體驗證連通性
  2. 獨立測試資料暫存器訪問
  3. 驗證資料格式轉換

緊急恢復程式

流程損壞恢復

損壞症狀:

  • OV20i Node-RED 介面無法載入流程
  • 攝像頭重啟後,流程顯示為空
  • 部署反覆失敗

恢復步驟:

  1. 對 OV20i 攝像頭進行電源迴圈(Power cycle):
    • 斷開電源 10 秒
    • 等待完成啟動(所有 4 個 LED 指示燈穩定)
  2. 訪問配方的 Node-RED 介面:
    • 導航至 http://<camera-ip>/recipes/<recipe-number>/ioblock
    • 如果流程損壞,請從備份匯入
  3. 從備份恢復:
    • 使用 OV20i 的配方匯入功能
    • 匯入最近的備份檔案
    • 驗證所有連線是否完好
  4. 驗證恢復結果:
    • 測試所有關鍵流程
    • 驗證外部通訊
    • 更新任何配置變更

系統資源問題

記憶體/CPU 過載

即時措施:

  1. 在 OV20i Node-RED 中禁用非必需的 Debug 節點
  2. 移除高頻率定時器觸發
  3. 簡化複雜的 Function 節點
  4. 對攝像頭進行電源迴圈(Power cycle)以重啟所有服務

長期解決方案:

  • 為 OV20i 硬體最佳化流程設計
  • 實施速率限制
  • 減少訊息載荷大小
  • 計劃維護視窗

故障排除清單

維護前清單

  • 通知生產線維護視窗
  • 建立當前流程備份
  • 記錄當前系統狀態
  • 準備回滾過程
  • 測試備份恢復過程

維護後驗證

  • 所有流程成功部署
  • 手動觸發測試透過
  • 外部通訊已驗證
  • 錯誤指示已清除
  • 效能處於可接受範圍內
  • 文件已更新

緊急響應清單

  • 系統影響已評估
  • 已通知生產線
  • 已嘗試快速修復
  • 如有需要,進行備份還原
  • 已識別根本原因
  • 已實施預防措施

文件與日誌

維護記錄

所需文件:

  • 維護日期/時間
  • 已識別並解決的問題
  • 已進行的配置變更
  • 實現的效能改進
  • 未來建議

🔗 參見下文


提示

在除錯會話中記錄所有變更。此做法有助於將來排查故障併為您的團隊積累知識。