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

GigE 線掃描使用案例說明與圖表#

本主題介紹 Basler GigE 和 5GigE 線掃描相機的常見應用情境,以及如何針對這些應用情境配置這些相機。

本主題中的使用案例旨在協助您初步了解觸發器與參數之間的互動方式。

一般資訊#

資訊

  • 此攝影機提供多種觸發功能,例如「行開始觸發」或「幀有效觸發」,可透過Trigger Selector 參數進行設定。凡是與觸發設定相關、且未於以下使用案例範例中列出的參數,均假定維持其出廠預設值。
  • 有關觸發的進一步資訊,請參閱「觸發式影像擷取」及「擷取時序資訊」等主題。
  • 「功能」區塊列出了所有相機功能,例如: Line Timeout 以及 Spatial Correction,並提供有關如何使用及設定這些功能的詳細資訊。

資訊

為簡化說明,以下使用案例範例中的幀高度僅設定為幾行(例如 3 行)。然而,在實際應用中,Basler 建議每幀的高度應至少為 100 至 1000 行。

資訊

  • GigE Vision 線掃描相機將多條掃描線整合成一個更大的影像幀。此舉可大幅減輕接收端(例如主機電腦、傳輸層)的處理負擔。
  • 若在當前幀尚未完成所有資料列的擷取時發出「停止擷取」指令,則會傳輸一個不完整的幀。

用例 1:物件或物料的源源不絕的流#

這是使用 GigE 線掃描相機最基本的方式。相機會傳輸連續的影像幀流。主機電腦可以將多個幀合併成一張較大的影像,或分別處理每個幀。

物體或無盡的材料會穿過相機的視野範圍。相機先捕捉第一行。隨後,物體或材料向前移動一行,相機再捕捉下一行,如此類推。

以下各節將說明用例 1 的兩種變體:

案例 1a:以恆定速度運動的物體#

當物體處於自由落體狀態時(例如在分揀稻米、棉花或回收材料時),這些物體會以可預測的速度移動,此時可將攝影機設定為固定的線速。無需觸發機制即可取得幾何上正確的影像。

要針對此使用情境設定相機,需執行以下步驟:

動作 參數範例
  1. 請指定每幀的行數。

    這取決於物件的大小。請計算每幀需要多少行才能捕捉該物件。
  1. 將相機中的 Height 參數設為 3.
  1. 啟用擷取行速率控制。

    您必須控制擷取行速率,才能讓攝影機與物體的移動速度保持同步。
  1. 將相機中的 AcquisitionLineRateEnable 參數設為 true.
  1. 將幀率調低至所需速度。

    幀率必須與物體的移動速度保持同步。
  1. 將相機中的 AcquisitionLineRate 將參數設為 10 kHz。
  1. 啟用「連續擷取」模式。

    在「連續擷取」模式下,相機將持續擷取並傳輸影像。

    注意:此功能無法透過「pylon Viewer 」功能樹存取。請改用「pylon Viewer 」工具列中的「連續拍攝」按鈕。
  1. 將相機中的 AcquisitionMode 參數設為 Continuous.

此圖示說明了該配置:

線掃描用例 1a 時序

案例 1 b:由以可變速度運轉的滾輪輸送的無端材料#

連續物料通常會經由滾輪輸送並從其上方通過。負載變化與振動會導致輸送速度產生波動。若使用軸位移編碼器,每當物料向前移動一定距離時,便會產生一個行觸發訊號,藉此可補償此速度波動。

在以下範例中,軸編碼器的訊號連接至輸入線 2。軸編碼器已設定為每條線產生一個編碼器脈衝。

要針對此使用情境設定相機,需執行以下步驟:

動作 參數範例
  1. 請指定每幀的行數。

    這取決於物件的大小。請計算每幀需要多少行才能捕捉該物件。
  1. 將相機中的 Height 參數設為 3.
  1. 設定線路起始觸發器。

    您必須啟用該觸發器,並定義應使用哪個訊號以及哪種訊號轉換來觸發線路起始觸發器。
  1. 將相機中的 TriggerSelector 參數設為 LineStart.
  2. 將相機中的 TriggerMode 參數設為 On.
  3. 將相機中的 TriggerActivation 參數設為 RisingEdge.
  4. 將相機中的 TriggerSource 參數設為 Line2.
  1. 啟用「連續擷取」模式。

    在「連續擷取」模式下,相機將持續擷取並傳輸影像。

    注意:此功能無法透過「pylon Viewer 」功能樹存取。請改用「pylon Viewer 」工具列中的「連續拍攝」按鈕。
  1. 將相機中的 AcquisitionMode 參數設為 Continuous.

此圖示說明了該配置:

線掃描用例 1b 時序

用例 2:輸送帶上的單個物件#

在檢查移動中的輸送帶上的物體時,通常希望每個物體僅取得一張影像。這有助於影像處理,並避免浪費處理資源。在此配置下,系統通常會提供一個「物體觸發訊號」,用以指示下一個物體的抵達。該物體觸發訊號可由光電柵或可程式邏輯控制器(PLC)等裝置產生。

輸送帶的速度可能會波動。因此,通常建議使用軸編碼器,將行觸發訊號與輸送帶的機械運動同步。以下範例假設使用的是行觸發訊號。

以下各節將說明用例 2 的四種變體:

案例 2a:每個物件一幀#

當物件足夠小,足以讓每個物件都容納於單一畫面中時,即可將物件觸發器用作直接畫面觸發器。

有關每幀可能的行數,請參閱 Image ROI 主題中查閱。

要針對此使用情境設定相機,需執行以下步驟:

動作 參數範例
  1. 請指定每幀的行數。

    這取決於物件的大小。請計算每幀需要多少行才能捕捉該物件。
  1. 將相機中的 Height 參數設為 3.
  1. 設定幀起始觸發器。

    您必須啟用該觸發器,並定義應使用哪個訊號以及哪種訊號轉換來觸發幀起始觸發器。
  1. 將相機中的 TriggerSelector 參數設為 FrameStart.
  2. 將相機中的 TriggerMode 參數設為 On.
  3. 將相機中的 TriggerActivation 參數設為 RisingEdge.
  4. 將相機中的 TriggerSource 參數設為 Line1.
  1. 設定線路起始觸發器。

    您必須啟用該觸發器,並定義應使用哪個訊號以及哪種訊號轉換來觸發線路起始觸發器。
  1. 將相機中的 TriggerSelector 參數設為 LineStart.
  2. 將相機中的 TriggerMode 參數設為 On.
  3. 將相機中的 TriggerActivation 參數設為 RisingEdge.
  4. 將相機中的 TriggerSource 參數設為 Line2.
  1. 啟用「連續擷取」模式。

    在「連續擷取」模式下,相機將持續擷取並傳輸影像。

    注意:此功能無法透過「pylon Viewer 」功能樹存取。請改用「pylon Viewer 」工具列中的「連續拍攝」按鈕。
  1. 將相機中的 AcquisitionMode 參數設為 Continuous.

此圖示說明了該配置:

線掃描用例 2a 時序

案例 2 b:每個物件的多個幀#

當物體過大而無法完整容納於單一畫面時,可使用連拍觸發功能,針對每個個別物體觸發多張畫面。影像處理應用程式可將連拍中的所有畫面合併為一張影像。

要針對此使用情境設定相機,需執行以下步驟:

動作 參數範例
  1. 請指定每幀的行數。

    這取決於物件的大小。請計算每幀需要多少行才能捕捉該物件。
  1. 將相機中的 Height 參數設為 3.
  1. 設定每次連拍要擷取的幀數。
  1. 將相機中的 AcquisitionBurstFrameCount 參數設為 2.
  1. 設定幀突發開始觸發器。

    您必須啟用該觸發器,並定義應使用哪個訊號以及哪種訊號轉換來觸發幀突發開始觸發器。
  1. 將相機中的 TriggerSelector 參數設為 FrameBurstStart.
  2. 將相機中的 TriggerMode 參數設為 On.
  3. 將相機中的 TriggerActivation 參數設為 RisingEdge.
  4. 將相機中的 TriggerSource 參數設為 Line1.
  1. 設定線路起始觸發器。

    您必須啟用該觸發器,並定義應使用哪個訊號以及哪種訊號轉換來觸發線路起始觸發器。
  1. 將相機中的 TriggerSelector 參數設為 LineStart.
  2. 將相機中的 TriggerMode 參數設為 On.
  3. 將相機中的 TriggerActivation 參數設為 RisingEdge.
  4. 將相機中的 TriggerSource 參數設為 Line2.
  1. 啟用「連續擷取」模式。

    在「連續擷取」模式下,相機將持續擷取並傳輸影像。

    注意:此功能無法透過「pylon Viewer 」功能樹存取。請改用「pylon Viewer 」工具列中的「連續拍攝」按鈕。
  1. 將相機中的 AcquisitionMode 參數設為 Continuous.

此圖示說明了該配置:

線掃描用例 2b 時序

案例 2 c:每個物件的幀數各不相同#

當在同一條輸送帶上檢查大小不一的物體時,可利用幀起始觸發器,為每個物體精確擷取所需數量的幀。幀觸發訊號應由存在偵測器(例如光柵)產生,以確保每當物體位於相機視野內時,該訊號即處於有效狀態。

要針對此使用情境設定相機,需執行以下步驟:

動作 參數範例
  1. 請指定每幀的行數。

    這取決於物件的大小。請計算每幀需要多少行才能捕捉該物件。
  1. 將相機中的 Height 參數設為 3.
  1. 設定幀起始觸發器。

    您必須啟用該觸發器,並定義應使用哪個訊號以及哪種訊號轉換來觸發幀起始觸發器。

    將觸發器設定為在存在偵測器輸出訊號處於高電平時觸發。如此一來,在觸發訊號處於有效狀態期間,將發出系列幀觸發訊號。
  1. 將相機中的 TriggerSelector 參數設為 FrameStart.
  2. 將相機中的 TriggerMode 參數設為 On.
  3. 將相機中的 TriggerActivation 參數設為 LevelHigh.
  4. 將相機中的 TriggerSource 參數設為 Line1.
  1. 設定線路起始觸發器。

    您必須啟用該觸發器,並定義應使用哪個訊號以及哪種訊號轉換來觸發線路起始觸發器。
  1. 將相機中的 TriggerSelector 參數設為 LineStart.
  2. 將相機中的 TriggerMode 參數設為 On.
  3. 將相機中的 TriggerActivation 參數設為 RisingEdge.
  4. 將相機中的 TriggerSource 參數設為 Line2.
  1. 啟用「連續擷取」模式。

    在「連續擷取」模式下,相機將持續擷取並傳輸影像。

    注意:此功能無法透過「pylon Viewer 」功能樹存取。請改用「pylon Viewer 」工具列中的「連續拍攝」按鈕。
  1. 將相機中的 AcquisitionMode 參數設為 Continuous.

此圖示說明了該配置:

線掃描用例 2c 時序

案例 2 d:每個物件的幀數不固定#

當輸送帶上物體之間的間距小於一個幀時,可使用「幀主動觸發」功能,使觸發點設定在緊接物體後方的幀位置。此舉能讓攝影機盡快為下一次觸發做好準備,並避免傳輸不必要的数据。

要針對此使用情境設定相機,需執行以下步驟:

動作 參數範例
  1. 請指定每幀的行數。

    這取決於物件的大小。請計算每幀需要多少行才能捕捉該物件。
  1. 將相機中的 Height 參數設為 3.
  1. 設定幀有效觸發器。

    您必須啟用該觸發器,並定義應使用哪個訊號及哪種訊號轉換來觸發幀有效觸發器。

    將觸發器設定為在存在偵測器輸出訊號的高電平時觸發。這將導致在觸發訊號有效的期間內發出一次或多次幀觸發,但幀將在觸發訊號的下降沿時立即結束。
  1. 將相機中的 TriggerSelector 參數設為 FrameActive.
  2. 將相機中的 TriggerMode 參數設為 On.
  3. 將相機中的 TriggerActivation 參數設為 LevelHigh.
  4. 將相機中的 TriggerSource 參數設為 Line1.
  1. 設定線路起始觸發器。

    您必須啟用該觸發器,並定義應使用哪個訊號以及哪種訊號轉換來觸發線路起始觸發器。
  1. 將相機中的 TriggerSelector 參數設為 LineStart.
  2. 將相機中的 TriggerMode 參數設為 On.
  3. 將相機中的 TriggerActivation 參數設為 RisingEdge.
  4. 將相機中的 TriggerSource 參數設為 Line2.
  1. 啟用「連續擷取」模式。

    在「連續擷取」模式下,相機將持續擷取並傳輸影像。

    注意:此功能無法透過「pylon Viewer 」功能樹存取。請改用「pylon Viewer 」工具列中的「連續拍攝」按鈕。
  1. 將相機中的 AcquisitionMode 參數設為 Continuous.

此圖示說明了該配置:

線掃描應用案例 2D 時序

用例 3:使用「塊模式」來識別幀#

當相機依使用案例 2 b 或 2 d 的描述,設定為針對每個物件擷取可變數量的幀時,該應用程式無法明確判斷物件的起點與終點。該 Data Chunks 此功能,結合 Counter 功能結合使用時,可將幀標記為屬於同一個物件觸發器,從而無需耗費處理能力來將幀分組。

以下用例說明了如何為用例 2 c 設定計數器與資料區塊。這些計數器可單獨使用,也可一併使用。

要針對此使用情境設定相機,需執行以下步驟:

動作 參數範例
  1. 將第一個計數器設定為在每個傳入幀起始觸發訊號後遞增。

    您必須選取第 2 行上的幀觸發訊號作為計數器事件(即用於遞增)的訊號來源。此外,您還必須選取「有效幀結束」觸發訊號來使計數器遞增。
  1. 將相機中的 CounterSelector 參數設為 Counter1.
  2. 將相機中的 CounterEventSource 參數設為 Line2.
  3. 將相機中的 CounterEventActivation 參數設為 FallingEdge.
  1. 將第二個計數器設定為在幀觸發器持續處於有效狀態時,計數幀數。

    該計數器應僅在第 2 行處於有效狀態時進行計數。
    該計數器應在每個幀結束時遞增。
    當第 2 行變為無效時,該計數器應被重置。
  1. 將相機中的 CounterSelector 參數設為 Counter2.
  2. 將相機中的 CounterTriggerSource 參數設為 Line2.
  3. 將相機中的 CounterTriggerActivation 參數設為 LevelHigh.
  4. 將相機中的 CounterEventSource 參數設為 FrameActive.
  5. 將相機中的 CounterEventActivation 參數設為 FallingEdge.
  6. 將相機中的 CounterResetSource 參數設為 Line2.
  7. 將相機中的 CounterResetActivation 參數設為 Falling Edge.
  1. 啟用計數器數值的傳輸。
  1. 將相機中的 ChunkModeActive 參數設為 true.
  2. 將相機中的 ChunkSelector 參數設為 CounterValue.
  3. 將相機中的 ChunkEnable 參數設為 true.

此圖示說明了該配置:

線掃描用例 3:時序