跳至內容
測試伺服器
開發伺服器

攝影機vTool#

Camera vTool 可讓您方便地存取相機裝置。

下載 pylon Software Suite 以使用 Camera vTool。

攝影機vTool

指派相機#

如果您尚未定義任何特定的 Property,Camera vTool 將隨機分配可用的相機。在單相機設計中,這可讓您快速開始使用。

如果您想在多相機設計中將特定的相機指定給 Camera vTool,請參閱以下章節。

使用 Camera vTool 對話方塊#

Basler 建議使用 Camera vTool 對話方塊將相機指定給 Camera vTool。

若要這樣做:

  1. 在 配方管理 窗格中的 vTool Settings 區域,按一下 Open Settings 或按兩下該 vTool。
    Camera vTool 對話方塊
  2. 選取您要指派的相機,然後點擊 Assign.
    相機名稱旁會顯示一個綠色打勾記號。這表示相機現在已指定給 vTool:
    Camera vTool 對話方塊:已指定的相機

此外,對話方塊也會顯示用來識別裝置的 Property。在罕見的情況下,您可能需要編輯這些 Property。若要這麼做,請使用 Features pane。

使用 Features 窗格#

您也可以使用 Features 窗格將相機指派給 Camera vTool。

這僅在罕見的使用情境下才需要,例如,在未將實體相機連接至電腦的情況下,您想要檢視或變更相機指派。

若要使用 Features 窗格指派特定相機:

  1. 在 Workbench 中選取 Camera vTool。
  2. 開啟 Features - All 窗格。
  3. 按一下 vTool > Device Enumeration Control > Device List Update > Execute 來列出可用的相機。
  4. 使用 Device Selector 參數瀏覽可用的相機。
    這可讓您檢閱個別相機的特定資訊,以協助您挑選所需的相機。
  5. 識別出所需的相機後,按一下 Device Choose > Execute,將該特定相機指派給 Camera vTool。
  6. 若要指定您要指派的相機必須符合的其他裝置 Property,請使用 vTool > Device Enumeration Control 群組中的 Device Property * 參數。

    資訊

    有關裝置資訊 Property 的更多資訊,可在 pylon C++ API 的 CDeviceInfo 類別與 Pylon/Key 命名空間的文件中找到。這可讓您精細控制相機選取,並確保可以在多部電腦上使用正確的相機執行相同的 Recipe。

    如果系統連接了多部相機,Basler 建議使用 DeviceClass 與 UserDefinedName Property。您必須先設定相機的 DeviceUserID 參數,然後才能使用 UserDefinedName Property 選取相機。

    請注意,USB 相機需要重設或重新上電,才能使用新設定的 DeviceUserID。

設定相機#

將相機指派給 Camera vTool 後,請按一下 Workbench 工具列中的 Lock Resources 按鈕,與所指派的相機裝置建立獨佔連線。

Lock Resources 圖示

您現在可以在 Features - All 窗格中設定相機。

將相機設定儲存至 Recipe 中#

儲存 Recipe 時不會自動儲存相機設定,因為在儲存 Recipe 時,指派給 Camera vTool 的相機裝置可能未連線,或者相機裝置的設定在此期間可能已被其他程式變更。

相反地,請使用 Features - All 窗格中 vTool > Configuration Set Persistence 下方的參數,在您設定參數後儲存相機裝置的設定以及隨附的設定。

資訊

針對初始相機裝置設定,Basler 建議使用傳統的 pylon Viewer 功能。

若要在 Recipe 中儲存相機設定:

  1. 按一下 Lock Resources Workbench 工具列中的按鈕,以與所指派的相機裝置建立獨佔連線。
    Lock Resources 圖示
  2. 在 Features - All 窗格中,開啟 Configuration Set Persistence 類別,並將 Configuration Set Selector 參數設為 Camera,以選取相機裝置的參數集。
  3. 按一下 Configuration Set Fetch 從相機裝置擷取設定,並將其儲存在 Configuration Set Staged 參數中。
  4. Optional: You can inspect or manually modify the parameter settings by copying the text to a text editor and back into Configuration Set Staged.
    In the text editor, you will see that each line of text contains the name and the value of a parameter separated by a tab or = character. Lines starting with # are treated as comments. A configuration set must start with the following line:
    # {05D8C294-F295-4dfb-9D01-096BD04049F4}

    資訊

    或者,您可以使用 User Sets 以永續方式儲存相機設定。

  5. 按一下 Configuration Set Commit 以套用參數並將參數儲存在 Recipe 設定中。這可確保每次執行 Lock Resources 作業時都會自動設定參數。

    資訊

    如果相機已經被分配,參數設定將會立即傳輸至相機。如果傳輸失敗,參數設定將不會儲存於 Configuration Set Active 中。如果尚未分配相機,設定將會在分配相機時傳輸給相機。如果此傳輸失敗,則無法啟動 recipe。

    某些相機參數(例如 Camera Instance 組態集中的參數)只能在相機關閉時進行變更。在這種情況下,儲存於 Configuration Set Active 中的參數會在開啟相機之前進行分配時傳輸至相機。

  6. 若要從 recipe 中清除參數設定,請按一下 Clear Data。

使用 Event Notification 與 Chunk 資料#

Camera vTool 還允許您存取相機的事件和 chunk 資料。您可以為事件和 chunk 資料新增額外的輸出 pin,以用來控制您的應用程式。相機事件(例如 exposure end)可用來控制外部裝置。Chunk 資料(例如 Timestamp 或 Exposure Time)可用來控制並同步應用程式中的任務。

資訊

  • 只有在 recipe 未執行時才能新增 pin。
  • Pin 名稱必須是唯一的。
  • 允許的資料類型:Boolean、Float、Integer 以及 String

存取相機事件#

  1. 在相機上啟用所需的 event。
  2. 在 Workbench 中選取 Camera vTool。
  3. 開啟 Features - All 窗格。
  4. 前往 vTool > Event Output Control 群組。
  5. 執行 Event Pin Add 命令。
  6. 在 Event Pin Configuration 欄位中,輸入您要新增的事件 pin 的組態。請使用以下語法:
    <MyPinName>.Type=<MyPinType>.EventName=<CameraEvent>.ValueName=<CameraEventValue>
    其中:
    <MyPinName>:新輸出 pin 的名稱
    <MyPinType>:您要存取的事件的資料類型(允許的值:Boolean、Float、Integer 以及 String)
    <CameraEvent>:您要存取的相機中事件的名稱
    <CameraEventValue>:相機中事件值的名稱,例如 EventExposureEnd
  7. 按下 Enter。
    新的 pin 將會顯示於 vTool 中。

設定範例#

假設您想要建立一個名為 ExposureEnd 且資料類型為 Integer 的輸出 pin,其會輸出來自 exposure end 相機事件的資訊。若要這樣做,請輸入下列字串:

ExposureEnd.Type=Integer.EventName=ExposureEnd.ValueName=EventExposureEnd

存取 Chunk 資料#

  1. 在相機上啟用 chunk mode 以及所需的資料 chunk。
  2. 在 Workbench 中選取 Camera vTool。
  3. 開啟 Features - All 窗格。
  4. 前往 vTool > Chunk Data Output Control 群組。
  5. 執行 Chunk Pin Add 命令。
  6. 在 Chunk Pin Configuration 欄位中,輸入您要新增的資料 chunk pin 的組態。請使用以下語法:
    <MyPinName>.Type=<MyPinType>.ValueName=<ChunkName>
    其中:
    <MyPinName>:新輸出 pin 的名稱
    <MyPinType>:相機中您要存取的 chunk 資料的值類型
    <ChunkName>:相機中您要存取的 chunk 名稱,例如 ChunkExposureTime
  7. 按下 Enter。
    新的 pin 將會顯示於 vTool 中。

設定範例#

假設您想要建立一個名為 ExposureTimeChunk 且資料類型為 Integer 的輸出 pin,用於輸出來自相機 Exposure Time chunk 的資訊。若要這樣做,請輸入下列字串:

ExposureTimeChunk.Type=Float.ValueName=ChunkExposureTime

故障排除#

找到多個相符的相機

問題:開啟 Camera vTool 對話方塊時,相機名稱旁會出現警告標誌:

Camera vTool 對話方塊:多個相符的相機

原因:這是因為有多個相機符合儲存在 vTool 中的裝置 Property。

在上述範例中,儲存的裝置 Property 為 DeviceClass = BaslerUsb 和 ModelName = acA1920-40uCMT。有三個相機符合這些 Property,因為它們全都是 USB 相機且名稱為「acA1920-40uCMT」。

解決方案:為避免這種情況,請使用對話方塊重新指派相機,或使用 Features pane 變更 Property。

找不到相符的相機

問題:開啟 Camera vTool 對話方塊時,會顯示「No matching camera found」訊息。

Camera vTool 對話方塊:沒有相符的相機

原因:這是因為沒有相機符合儲存在 vTool 中的裝置 Property。

在上述範例中,儲存的裝置 Property 為 DeviceClass = BaslerUsb 和 ModelName = acA645-100uc。不過,未連接名稱為「acA645-100uc」的相機。

解決方案:為避免這種情況,請連接相符的相機、使用對話方塊重新指派相機,或使用 Features pane 變更 Property。

Outputs#

Image#

傳回相機抓取的影像。任何接受影像作為輸入的 vTool 均可使用此輸出影像。

  • 資料類型:Image
  • 影像格式:如相機上所設定

典型後續元件#