TrgPortLine 運算子

運算子庫:硬體平台

此運算子會為相機產生觸發(Exsync)。 它也負責將取得的行組合成影像。

可以使用內部訊號產生器(GrabberControlled),或透過外部訊號觸發訊號產生器, 這些外部訊號可以來自觸發擴充板(TTL Trigger board 或 OPTO Trigger board)的輸入訊號,或是透過軟體觸發。 訊號產生器可以產生具有靈活延遲、脈衝寬度和極性的 Exsync 訊號。 此外,還會產生一個可在觸發擴充板上使用的閃光訊號。

此運算子佔用 4 個數位輸出以及一個用於 CC 訊號的相機連接埠。 因此,會使用一個類型為 CameraControl 的 VisualApplets 資源。 如果資源索引設為 0,則會使用數位輸出 0 到 2 以及相機連接埠 A。 如果資源索引設為 1,則會使用數位輸出 4 到 6 以及相機連接埠 B。 輸出 3 和 7 不會被此運算子使用。 請注意,沒有其他運算子可以使用這些硬體資源。 請在資源對話方塊中設定資源索引。

適用於硬體平台
microEnable IV VD1-CL/-PoCL
microEnable IV VD4-CL/-PoCL

I/O Properties

Property Value
Operator Type P
Input Link I,資料輸入
Output Link O,資料輸出

Supported Link Format

Link Parameter Input Link I Output Link O
Bit Width [1, 64] as I
Arithmetic {unsigned, signed} as I
Parallelism any as I
Kernel Columns 1 as I
Kernel Rows 1 as I
Img Protocol VALT_LINE1D VALT_IMAGE2D
Color Format any as I
Color Flavor any as I
Max. Img Width any as I
Max. Img Height 65536 as I

Parameters

YOffset
Type 動態/靜態讀寫參數
Default 0
Range [0, 224]

此參數定義了在畫格開頭處略過的行數。

YLength
Type 動態/靜態讀寫參數
Default 1024
Range [8, 224]

此參數定義了畫格的行數。

MaxGatedHeight
Type 動態讀取/寫入參數
Default 受限制
Range {restricted, unrestricted}

當影像觸發模式(ImgTriggerMode)設定為 ExternSw_Gate 時,參數 MaxGatedHeight 可讓您限制最大影像高度。

如果影像觸發模式(ImgTriggerMode)設定為 ExternSw_Gate, 且參數 MaxGatedHeight 設定為 unrestricted, 則影像高度由閘道開啟的時間決定,亦即 由外部影像觸發訊號的脈衝寬度或軟體觸發值為 1 的持續時間決定。 此時,如果閘道開啟時間很長,影像高度就會變大。 如果參數 MaxGatedHeight 設定為 restricted,即使閘道仍然開啟, 影像高度也會被限制為 YLength 影像行。 運算子將會捨棄任何後續的行,並等待下一個開啟的閘道來開始新的畫格。

相比之下,如果參數設定為 unrestricted,影像高度僅由閘道決定。

[警告] 可能會違反連結屬性

在 unrestricted 模式下使用此參數可能會違反 VisualApplets 連結協定。 影像高度可能會超過 TrgPortLine 運算子輸出連結中定義的最大允許影像高度。 使用 unrestricted 模式時請小心。 請參閱 'Link Properties' 以取得有關連結屬性的詳細資訊。

隨後的 SplitImage 運算子可以將大影像分割成多個區塊(較小的影像)。

LineTriggerMode
Type 動態/靜態讀寫參數
Default GrabberControlled
Range {GrabberControlled, Extern_Trigger, GrabberControlled_Gated_by_Img, Extern_Trigger_Gated_by_Img}

此參數選擇內部 Exsync 訊號產生器的運作模式。 外部觸發輸入的來源可以透過參數 LineTrgInSourceA 和 LineTrgInSourceB 進行選擇(請參閱下方)。

GrabberControlled:Exsync 由內部訊號產生器週期性產生

Extern_Trigger:使用外部觸發訊號啟動訊號產生器一次

GrabberControlled_Gated_by_Img:在擷取一幀影像期間,內部訊號產生器會定期產生 Exsync 訊號

Extern_Trigger_Gated_by_Img:外部觸控信號用於在擷取畫格期間觸發信號產生器

ExsyncEnable
Type 動態讀取/寫入參數
Default OFF
Range {OFF, ON}

啟用或停用傳送至相機的 Exsync 輸出。

LineTrgInSourceA
Type 動態/靜態讀寫參數
Default InSignal0
Range {InSignal0, InSignal1, InSignal2, InSignal3, InSignal4, InSignal5, InSignal6, InSignal7}

此參數指定用於觸發 Exsync 信號產生器的信號來源。 這僅在 TriggerMode 設為 Extern_Trigger 時才有作用。

LineTrgInSourceB
Type 動態/靜態讀寫參數
Default InSignal0
Range {InSignal0, InSignal1, InSignal2, InSignal3, InSignal4, InSignal5, InSignal6, InSignal7}

此參數指定用於觸發 Exsync 信號產生器的信號來源。 這僅在 TriggerMode 設為 Extern_Trigger 且 EncoderABMode 設為 Signal_AB_Filter 時才有作用。

EncoderABMode
Type 動態/靜態讀寫參數
Default Signal_A_Only
Range {Signal_A_Only, Signal_AB_Filter, Signal_ABx2_Filter, Signal_ABx4_Filter}

此參數指定用於產生 Exsync 的是單一觸發輸入(僅 A),還是 A 與 B 信號。

支援 Signal A/B 可用於判斷軸編碼器的旋轉方向,並抑制與補償反向移動:

Signal_A_Only:使用由 LineTrgInSourceA 所選取的觸發輸入來產生 Exsync。

Signal_AB_Filter:以單倍解析度為軸編碼器的正向旋轉產生 Exsync,亦即 針對 LineTrgInSourceA 的上升緣產生一個觸發脈衝。

Signal_ABx2_Filter:以雙倍解析度為軸編碼器的正向旋轉產生 Exsync,亦即 針對 LineTrgInSourceA 的上升緣與下降緣產生觸發脈衝。會使用 LineTrgInSourceA 的雙邊緣。

Signal_ABx4_Filter:以四倍解析度為軸編碼器的正向旋轉產生 Exsync,亦即 針對 LineTrgInSourceA 的上升緣與下降緣以及 LineTrgInSourceB 的上升緣與下降緣產生觸發脈衝。

啟用 AB 支援時的相關參數:

  • EncoderABLead(可切換正向的定義)

您可以透過將參數 EncoderABMode 設為值 Signal_A_Only 來重設軸編碼器。

EncoderABLead
Type 動態/靜態讀寫參數
Default Signal_AB
Range {Signal_AB, Signal_BA}

若參數設為 Signal_AB,正向移動定義為信號 A 的上升緣早於信號 B,反之亦然:

Signal_AB: Forward 定義為 A 在 B 之前

Signal_BA: Forward 定義為 B 在 A 之前

LineTrgInPolarity
Type 動態讀取/寫入參數
Default LowActive
Range {LowActive, HighActive}

此參數用於定義外部輸入觸發信號 LineTrgInSourceA 與 LineTrgInSourceB 的極性。當設定為 LowActive 時,Exsync 產生器會在 ImgTrgInSource 參數所指定信號的下降緣啟動;否則,Exsync 產生會在上升緣啟動。這僅在 TriggerMode 設定為 Extern_Trigger 時才有意義。

LineTrgDownscaler
Type 動態/靜態讀寫參數
Default 1
Range [1, 256]

此參數指定生成 Exsync 所需的外部輸入觸發信號數量。這僅在 TriggerMode 設定為外部觸發模式時才有意義。

LineTrgPhase
Type 動態/靜態讀寫參數
Default 1
Range [1, 256]

此參數指定生成畫格的第一個 Exsync 所需的外部輸入觸發信號數量。這僅在 TriggerMode 設定為 Extern_Trigger_Gated_by_Img 時才有意義。

ExsyncPeriod
Type 動態/靜態讀寫參數
Default 100 μs
Range [1.024, 4000] μs

此參數指定 Exsync 信號的週期。因此,在使用擷取卡控制模式來觸發連接的相機時,它決定了行頻。

ExsyncExposure
Type 動態/靜態讀寫參數
Default 20 μs
Range [1.024, 2000] μs,不得超過 ExsyncPeriod

此參數指定 Exsync 信號的脈衝寬度,許多相機可利用此寬度來指定 Exposure Time。因此,即使在擷取過程中,也可以透過軟體調整 Exposure Time。

Exsync2Delay
Type 動態/靜態讀寫參數
Default 0 μs
Range [0, 2000] μs,不得超過 ExsyncPeriod

此參數指定所生成的 Exsync 信號相對於外部觸發輸入的延遲。因此,Exsync2 信號是 Exsync 的延遲複本(極性、週期等與 Exsync 相同)。

ExsyncPolarity
Type 動態/靜態讀寫參數
Default LowActive
Range {LowActive, HighActive}

此參數將 Exsync 信號產生器的極性調整為連接相機所接受的極性。如果相機在下降緣開啟快門,請使用 LowActive,否則請使用 HighActive。

ImgTriggerMode
Type 動態/靜態讀寫參數
Default FreeRun
Range {FreeRun, ExternSw_Trigger, ExternSw_Gate}

此參數用於選擇內部 Image Gate 的運作模式。

影像觸發輸入訊號可以由外部(周邊)裝置(例如軸編碼器)或透過軟體產生。 您可以透過參數 ImgTrgInSource 選擇外部影像觸發輸入的來源,請參見下方)。

參數 ImgTriggerMode 的值會觸發以下行為:

  • FreeRun:

    • 接受相機傳輸的所有輸入行。

    • 忽略 Image Gate。

    • 參數 YLength 定義何時產生影格結束 (EOF)。

    • 如果參數 yOffset 大於零, 則會略過兩個連續影像之間的一定數量 yOffset 行。

      範例:yOffset = 0,YLength = 2:

      範例:yOffset = 2,YLength = 2:

  • ExternSw_Trigger:

    • 在接受的影像觸發輸入訊號之上升緣, 會啟動一個新影格,並將輸入行附加至影像中,直到 YLength 為止。

    • 參數 YLength 定義何時產生影格結束 (EOF)。

    • 只有在附加了 YLength 行並產生 EOF 之後,才會接受影像觸發的新上升緣。 如果在附加 YLength 行並產生 EOF 之前發生新的影像觸發上升緣,則會被忽略。

      範例:YLength 設定為值 2:

  • ExternSw_Gate:

    • 在閘控模式 (gated mode) 下,影像觸發輸入訊號持續的時間長短非常重要, 因為它會做為 Image Gate 訊號。

    • 此模式的確切行為可由參數 MaxGatedHeight 定義。 (透過 MaxGatedHeight,您可以定義影像的最大高度是受限制還是不受限制。 詳細資訊請參閱參數 MaxGatedHeight 的說明。)

      當參數 MaxGatedHeight 設定為「Unrestricted」時,ExternSW_Gate 模式的行為

      • 當 Image Gate 訊號處於作用中時,輸入行會被附加至影像中。

      • Image Gate 控制哪些影像行為有效:

        • 當 Image Gate 訊號處於作用中時,會接受輸入行。(例如參閱圖中的 n+8 和 n+9 行。)

        • 當 Image Gate 訊號未處於作用中時,會忽略輸入行。(例如參閱圖中的 n+3 行。)

        • 在 Image Gate 訊號作用期間開始的每一行都是有效的。 (例如參閱圖:n+1、n+2、n+4、n+5、n+6、n+8 和 n+9 皆有效。)

          如果 Image Gate 的下降緣發生在擷取最後一行的所有資料之前, 該行仍然有效且會被完整擷取。(例如參閱圖:n+2 和 n+6)

        • 傳輸的始終是完整的行。

        • 在 Image Gate 關閉期間開始的每一行均無效。 (請參見圖示:第 n 行與第 n+7 行無效,第 n+4 行有效。)

        • 行結束(EoL)和影格結束(EoF)是在新行開始之前直接產生, 或者在 Image Gate 的下降緣產生。

          EoL 直接在新行開始前產生:如果在行的下降緣發生在開啟的 Image Gate 內部 且 Image Gate 涵蓋了下一行的開始, 則 EoL 會在下一行的上升緣之前直接產生。(請參見圖示:n+1、n+4、n+5 與 n+8。)

          EoL 與 EoF 在新行開始前直接一同產生:如果 Image Gate 的下降緣發生在行的下降緣之前, 則 EoL 和 EoF 會在下一行的上升緣之前直接產生。(請參見圖示:影像 m 與影像 m+1。)

          EoL 與 EoF 在 Image Gate 的下降緣一同產生:如果在行的下降緣發生在開啟的 Image Gate 內部, 且 Image Gate 的下降緣發生在下一行的上升緣之前, 則 EoL 和 EoF 會在 Image Gate 的下降緣之後直接產生。(請參見圖示:影像 m+2。)

      當參數 MaxGatedHeight 設為值「Restricted」時,模式 ExternSW_Gate 的行為

      如果參數 MaxGatedHeight 設為「restricted」,其行為與上述針對 MaxGatedHeight 且值設為「unrestricted」時相同, 但有以下例外情況:

      • 只要 image gate 處於開啟狀態,就會持續附加行,直到達到最大影像高度 YLength。 所有後續行都將被省略,直到 Image Gate 訊號的下一個上升緣為止。

      • 如果在附加 YLength 行之前發生了 Image Gate 訊號的下降緣: Image Gate 訊號的下降緣會定義影像的高度, 即使影像的高度未達到 YLength。 (如需有關影像高度的詳細資訊,請參見參數 MaxGatedHeight。)

      • 以下範例(圖示)顯示了 MaxGatedHeight = restricted 且 YLength = 3 時的行為。

ImgTrgInSource
Type 動態/靜態讀寫參數
Default InSignal0
Range {InSignal0, InSignal1, InSignal2, InSignal3, InSignal4, InSignal5, InSignal6, InSignal7}

此參數指定用於觸發影像擷取的訊號來源。這僅在 ImgTriggerMode 設為 ExternSw_Trigger 或 ExternSw_Gate 時才有意義。

ImgTrgInPolarity
Type 動態讀取/寫入參數
Default LowActive
Range {LowActive, HighActive}

此參數定義外部輸入觸發訊號的極性。

ImgTrgDelay
Type 動態讀取/寫入參數
Default 0
Range {0, 4095}

此參數將影像觸發訊號延遲指定的影像行數。

FlashEnable
Type 動態讀取/寫入參數
Default OFF
Range {OFF, ON}

啟用或停用閃光燈輸出。 閃光燈訊號的脈衝寬度等於一個行週期。

FlashPolarity
Type 動態/靜態讀寫參數
Default LowActive
Range {LowActive, HighActive}

此參數定義所產生的 Flash 訊號的極性。

FlashDelay
Type 動態/靜態讀寫參數
Default 0
Range {0, 4095}

此參數指定相對於外部觸發輸入,所產生的 Flash 訊號要延遲的行數。 因此,可以將閃光燈與外部觸發輸入進行同步。

閃光信號的脈衝寬度等於一個線週期。

SoftwareTrgPulse
Type 動態/靜態寫入參數
Default
Range {1}

將此參數設定為 1 將會產生軟體觸發。這僅在 Trigger Mode 設定為外部觸發模式且 ImgTrgInSource 設定為 SoftwareTrigger 時才有作用。

SoftwareTrgInput
Type 動態/靜態寫入參數
Default
Range {0, 1}

利用此參數,可以為圖像觸發模式 ExternSw_Gate 產生軟體閘道。

ImgTrgIsBusy
Type 動態/靜態讀取參數
Default 0
Range {0, 1}

ImgTrgIsBusy 參數允許透過軟體讀取圖像觸發的忙碌狀態。 如果處於忙碌狀態,此參數會設為 1 以反映正在進行的圖像擷取。 如果設為 0,則表示運算子未處於忙碌狀態。

CC1output
Type 動態/靜態寫入參數
Default Exsync
Range {Exsync, ExsyncInvert, Hdsync, HdsyncInvert, Flash, FlashInvert, Gnd, Vcc}

此參數指定 CameraLink 連接線之 CC1 線路上可用的信號。

CC2output
Type 動態/靜態寫入參數
Default Exsync
Range {Exsync, ExsyncInvert, Hdsync, HdsyncInvert, Flash, FlashInvert, Gnd, Vcc}

此參數指定 CameraLink 連接線之 CC2 線路上可用的信號。

CC3output
Type 動態/靜態寫入參數
Default Exsync
Range {Exsync, ExsyncInvert, Hdsync, HdsyncInvert, Flash, FlashInvert, Gnd, Vcc}

此參數指定 CameraLink 連接線之 CC3 線路上可用的信號。

CC4output
Type 動態/靜態寫入參數
Default Exsync
Range {Exsync, ExsyncInvert, Hdsync, HdsyncInvert, Flash, FlashInvert, Gnd, Vcc}

此參數指定 CameraLink 連接線之 CC4 線路上可用的信號。

ImgTrgDebouncingMaxTime
Type 靜態寫入參數
Default 65.520 us
Range [0.016, 1000000] us

此參數指定 ImgTrgDebouncingTime 參數的最大時間。最大時間越小,實作去彈跳 Timer 所需的 FPGA 資源就越少。

ImgTrgDebouncingTime
Type 動態/靜態寫入參數
Default 0.112 us
Range [0.016, ImgTrgDebouncingMaxTime] us

此參數指定輸入影像觸發信號必須維持相同值以被識別為該信號所需的消除彈跳時間。小於消除彈跳時間的快速信號變化將會被濾除。

LineTrgDebouncingMaxTime
Type 靜態寫入參數
Default 65.520 us
Range [0.016, 1000000] us

此參數指定 LineTrgDebouncingTime 參數的最大時間。最大時間越小,實作此 Timer 所需的 FPGA 資源就越少。

LineTrgDebouncingTime
Type 動態/靜態寫入參數
Default 0.112 us
Range [0.016, ImgTrgDebouncingMaxTime] us

此參數指定輸入行觸發信號必須維持相同值以被識別為該信號所需的消除彈跳時間。小於消除彈跳時間的快速信號變化將會被濾除。

Examples of Use

以下範例顯示了 TrgPortLine operator 的使用方式: