跳到主要內容

AI 驅動文件

您想了解什麼?

透過 MQTT 觸發

本教程向您展示如何使用簡單的 MQTT 訊息遠端觸發您的 OV10i 攝像頭。只需幾個步驟,您就可以擁有一個能夠從網路任何位置捕獲和處理影象的系統 - 無需複雜的程式設計!

您將構建: 一個簡單的遠端觸發器,讓您透過在網路上傳送基本訊息來啟動相機檢查。

預計時間: 20-30 分鐘

技能等級: 初級

實際示例: 想象一下操作員平板電腦上的一個按鈕,按下它即可立即觸發相機檢查零件 - 這正是我們要構建的功能,只不過使用的是 MQTT 訊息而不是按鈕。

先決條件

開始之前,請確保您具備:

  • OV10i 攝像頭已連線並正常工作
  • 已設定並準備好使用的程式
  • MQTT 通訊已配置(如有需要,請參閱 MQTT 通訊設定 指南)
備註

您的相機觸發器必須在影象設定中設定為 Manual - 這會告訴相機等待您的遠端命令,而不是自動捕獲。

為什麼 MQTT 觸發很簡單

OV10i 使遠端觸發變得簡單:

  • 無需編碼 - 只需拖動並連線幾個節點
  • 即時工作 - 傳送訊息,立即獲取結果
  • 可靠的訊息傳遞 - MQTT 確保您的命令到達相機
  • 任何裝置都可以觸發 - 平板電腦、計算機、PLC 或感測器

適用於: 遠端檢查控制、自動化生產線,或任何需要從其他位置觸發相機的場景。

第一步:快速相機檢查

1.1 將相機設定為手動觸發

  1. 進入您的程式編輯器
  2. 點選"影象設定"
  3. 找到觸發模式並將其設定為 "Manual"
  4. 點選儲存

為什麼選擇 Manual? 這會告訴相機"等待我的命令",而不是自動拍照。

1.2 查詢您的程式編號

  1. 在程式編輯器中檢視瀏覽器位址列
  2. 找到 /recipe/ 後面的數字(示例:如果 URL 顯示 /recipe/10,則您的程式編號為 10)
  3. 記下該編號 - 幾分鐘後您會用到它

image.png

第二步:開啟流程構建器

2.1 進入 Node-RED

  1. 在您的程式編輯器中,點選 "Configure IO" 或在麵包屑選單中選擇 "IO模組"

2.2 重新開始

如果您在畫布上看到其他節點,那沒關係 - 我們只需在它們旁邊新增新的觸發流程即可。

讓我們開始吧!

第三步:MQTT 觸發的簡單秘訣

您需要了解的全部內容:相機需要 2 條快速訊息才能遠端拍照。

  1. 第一條訊息: "嘿相機,準備接收遠端命令"
  2. 第二條訊息: "現在拍照!"

3.1 將以下 5 個節點拖到您的畫布上

從左側面板,將以下節點拖到主區域:

  1. Inject(來自 Input 部分) - 這將是您的"觸發按鈕"
  2. Change(來自 Function 部分) - 用於訊息 1
  3. Delay(來自 Function 部分) - 訊息之間的短暫停頓
  4. Change(來自 Function 部分) - 用於訊息 2
  5. MQTT Out(來自 Network 部分) - 向相機傳送訊息

image.png

第四步:配置節點

4.1 設定觸發按鈕

  1. 雙擊 Inject 節點
  2. 將名稱更改為 "Remote Trigger"
  3. 點選 "Done"

4.2 設定訊息 1(準備命令)

  1. 雙擊第一個 Change 節點
  2. 將名稱更改為 "Get Ready"
  3. 點選 "Add" 並選擇 "SET"
  4. msg.topic 設定為 stream_mode/set
  5. 再次點選 "Add" 並選擇 "SET"
  6. msg.payload 設定為 HMI_MODE
  7. 點選 "Done"

作用: 告訴相機"準備接收遠端命令"。

image.png

4.3 新增短暫延遲

  1. 雙擊 Delay 節點
  2. 將延遲設定為 10 毫秒
  3. 點選 "Done"

為什麼? 給相機一點時間來做好準備。

4.4 設定訊息 2(拍照命令)

  1. 雙擊第二個 Change 節點
  2. 將名稱更改為 "Take Picture"
  3. 點選 "Add" 並選擇 "SET"
  4. msg.topic 設定為 hmi/[YOUR_RECIPE_NUMBER]/capture_mode
  5. 將 [YOUR_RECIPE_NUMBER] 替換為你的實際程式編號(例如 hmi/10/capture_mode
  6. 再次點選 "Add" 並選擇 "SET"
  7. msg.payload 設定為 single
  8. 點選 "Done"

作用: 告訴相機"立即拍一張照片!"

image.png

4.5 設定訊息傳送器

  1. 雙擊 MQTT Out 節點
  2. 選擇你的 MQTT broker(應已配置好)
  3. 將名稱更改為 "Send to Camera"
  4. 點選 "Done"

第五步:連線所有節點

這是有趣的部分! 現在我們連線各個節點以建立流程。

5.1 建立連線

按以下方式在節點之間連線:

  1. Remote Trigger → Get Ready → Send to Camera
  2. Remote Trigger → Delay → Take Picture → Send to Camera

圖示指南:

Remote Trigger ──→ Get Ready ──→ Send to Camera

└──→ Delay ──→ Take Picture ──→ Send to Camera

5.2 如何連線節點

  1. 從節點右側的小方塊處點選並拖動
  2. 將連線拖放到下一個節點的左側
  3. 你會看到一條灰色的線將它們連線起來

第六步:測試遠端觸發

6.1 啟用你的流程

  1. 點選右上角的紅色 "Deploy" 按鈕
  2. 你應該會看到 "Successfully deployed" 訊息

6.2 試用

  1. 將零件放置在相機前(用於測試)
  2. 點選 "Remote Trigger" 節點上的按鈕
  3. 觀察相機拍照!

成功標誌:

  • 相機 LED 短暫閃爍
  • 你會聽到檢查處理的聲音
  • 新影象出現在庫中

6.3 檢視結果

前往庫頁面 - 你應該會看到一張帶有最新時間戳的新影象。點選它可檢視檢查結果!

如果成功: 恭喜!你已成功遠端觸發了相機。

如果失敗: 請檢視下方的故障排除部分。

第七步:從其他裝置使用(可選)

想從手機、平板或其他電腦觸發? 方法如下:

7.1 從任何 MQTT 應用

下載任意 MQTT 應用,連線到相機的 IP 地址,埠為 1883,然後:

  1. 傳送第一條訊息:
    • Topic: stream_mode/set
    • Message: HMI_MODE
  2. 稍等片刻,然後傳送第二條訊息:
    • Topic: hmi/[YOUR_RECIPE_NUMBER]/capture_mode
    • Message: single

7.2 從命令列

在 Windows/Mac/Linux 上:

# First message
mosquitto_pub -h [CAMERA_IP] -t "stream_mode/set" -m "HMI_MODE"

# Second message (replace 10 with your recipe number)
mosquitto_pub -h [CAMERA_IP] -t "hmi/10/capture_mode" -m "single"

就這樣! 您的相機將從網路上的任何位置拍攝影象。

第 8 步:驗證與測試

8.1 端到端測試

完整工作流驗證:

測試操作預期結果狀態
手動觸發點選 inject 按鈕影象被捕獲並處理
HMI 模式啟用檢查相機狀態相機切換到 HMI 模式
檢查執行驗證處理Debug 顯示檢查結果
外部觸發傳送 MQTT 命令遠端觸發正常工作

8.2 效能驗證

監控以下指標:

  • 觸發響應時間: 從 MQTT 訊息到影象捕獲
  • 處理時長: 完成檢查所需時間
  • 結果交付: Debug 輸出時序
  • 系統可靠性: 多次測試中的穩定觸發

8.3 生產就緒

部署到生產環境之前:

  1. 使用實際零件和檢查條件進行測試
  2. 驗證與外部系統的整合
  3. 確認 MQTT 通訊的網路可靠性
  4. 記錄觸發主題和訊息格式

第 9 步:快速故障排除

無法工作?以下是最常見的修復方法:

9.1 相機不拍照

問題快速修復
點選觸發時沒有任何反應檢查 "Take Picture" 節點中的程式編號是否正確
相機拍照但不進行檢查確保您的程式處於活動狀態並有已訓練的模型
觸發有時有效驗證在影象設定中已將觸發器設定為 Manual

9.2 MQTT 問題

問題快速修復
MQTT 節點上有紅點檢查設定中的 MQTT broker 連線
Deploy 按鈕顯示為灰色先在畫布的任意位置點選,然後再嘗試 Deploy
節點無法連線確保您是從右側的小方塊開始拖動
備註

仍無法解決? 請再次確認 MQTT 通訊已正確設定(參見 MQTT 通訊設定 指南)。

您做到了!🎉

恭喜! 現在您已經可以遠端控制 OV10i 相機。只需幾次點選,您就構建了一個能夠實現以下功能的系統:

  • 從網路上的任何位置觸發檢查
  • 與手機、平板、電腦配合使用 - 任何能夠傳送 MQTT 訊息的裝置
  • 與其他系統整合,如 PLC、感測器或自定義應用程式
  • 透過使用不同的程式編號擴充套件到多個相機

下一步

現在基礎功能已經可以工作了,您可以:

簡單的後續步驟

  • 使用 MQTT 應用從不同裝置進行測試
  • 為不同的程式建立多個觸發器
  • 將其新增到您的生產工作流中

高階想法

  • 連線到 PLC 用於自動化生產線
  • 構建自定義應用程式,觸發多個相機
  • 新增結果轉發,將檢查資料傳送到其他位置
  • 建立帶有觸發按鈕的操作員儀表板

實際應用示例

以下是其他使用者使用 MQTT 觸發的方式:

  • 質量控制站: 操作員掃描條形碼,系統觸發相機檢查
  • 傳送帶生產線: 感測器檢測到部件,自動觸發檢查
  • 人工檢查: 使用帶有簡單"檢查"按鈕的平板電腦供操作員使用
  • 生產監控: 中央系統協調多個相機

可能性無窮無盡 - 一切都始於您剛剛構建的這個簡單系統!

🔗 另請參閱