Operator CXPDualCamera

Operator Library: Hardware Platform

このオペレーターは、CXPデュアルチャネルカメラとVisualApplets間の画像データインターフェースを表します。

ハードウェアプラットフォームで使用可能
mE5 marathon VCX-QP
mE5 ironman VQ8-CXP6D
mE5 ironman VQ8-CXP6B

オペレーターは出力Oに画像データを提供します。この出力は常に存在します。

この標準出力ポートの他に、設計で必要な場合は、さまざまなオプショナルポートを指定できます。

オペレーターのインスタンス化時に、次のポップアップダイアログが表示されます。

ここでは、CXPケーブルを介した汎用入出力用のオプショナルポートや、カメラとの間のオプショナルなトリガーポートを指定できます。

特定のGPI(汎用入力)、特定のGPO(汎用出力)、トリガー入力ポート、およびトリガー出力ポートの有効性を定義できます。

ポートの有効性を「0」(デフォルト)に設定した場合、ポートはオペレーター内に存在しません。ポートの有効性を1に設定した場合、そのポートはオペレーターインターフェースで使用可能になります。

このオペレーターは、CameraPort型の2つのリソースを使用します。

[重要] 画像幅および画像高さの変更

幅と高さをカメラ固有の設定に変更できます。ただし、オペレーターポートOの最大画像幅は、ポートOの Parallelism で割り切れる必要があります。

最大画像幅がポートOの Parallelism で割り切れるようにしてください。

[重要] Parallelism の値

ポートOの Parallelism は、少なくとも最小値(パラメータ MinimalParallelism に記載されている値)に設定する必要があります。これより小さい Parallelism の値は許可されません。最小 Parallelism は、このオペレーターの他のパラメータに定義した値に基づいて VisualAppletsによって計算されます。これにより、受信データを常に受け取ることができます。

[重要] ダミーピクセル

出力データにはダミーピクセルが含まれる場合があります。これは、オペレーターが Parallelism の変換を2回行う可能性があるためです。まず、オペレーターは内部で、自身が計算しパラメータ MinimalParallelism 内の読み取り専用値として提供する最小 Parallelism に変換します。これにより、MinimalParallelism で割り切れる内部画像幅が得られますが、Parallelism 変換によりダミー値が追加される可能性があります。次に、最初の Parallelism 変換に起因するパディング済みの画像幅が O.Parallelism の倍数でない場合、オペレーターは Parallelism を O.Parallelism に変換し、さらにダミー値を追加する可能性があります。したがって、出力データにダミーピクセルが含まれるかどうかは、MinimalParallelism パラメータ、画像幅、および O.Parallelism によって異なります。それぞれの Parallelism 変換によってダミーピクセルが追加される場合があります。追加されたダミーピクセルには未定義のデータ値が含まれており、実際の画像幅から逸脱した画像幅につながります。

例:MinimalParallelism が 12、O.Parallelism が 32、送信される画像幅が 128 ピクセルの場合、パラメータ MinimalParallelism で定義された内部 Parallelism により、オペレーターは内部で幅 132 の画像ラインを作成します。出力の場合、データベクターは Parallelism 32(O.Parallelism)に変換され、その結果、画像ラインの幅は 160 ピクセルになります。

ダミーピクセルがあるため、期待される出力画像幅は次のようになります。

[重要] Bit Width と Format Type

ポートO(画像ポート)の Bit Width は、選択したフォーマットタイプ(パラメータ FormatType)によって異なります。

  • FormatType = Gray の場合:Bit Width は任意の値をとることができます(VAF_Gray および FL_NONE)。
  • FormatType = RGB の場合:Bit Width は 3 の倍数です(VAF_Color および FL_RGB)。
  • FormatType = RGBA の場合:Bit Width は 4 の倍数です(VAF_Gray および FL_NONE)。
  • FormatType = RAW の場合:Bit Width は 32 です(VAF_Gray および FL_NONE)。

I/O Property

Property 値
オペレータータイプ M
入力リンク - TriggerI(オプション)、CXPチャンネルを介してフレームグラバーからカメラに送信されるトリガー。このポートは、ラインスキャンカメラのトリガーによく使用されます。
- GPIx(オプション)、CXPチャンネルを介してフレームグラバーからカメラに送信される汎用入力 [x]。GPI0、GPI1、GPI2、GPI3、GPI4、GPI5、GPI6、およびGPI7を利用できます。
Output Links - O、画像データ出力
- TriggerO(オプション)、CXPチャンネルを介してカメラからフレームグラバーに送信されるトリガー。
- GPOx(オプション)、CXPチャンネルを介してカメラからフレームグラバーに送信される汎用出力 [x]。GPO0、GPO1、GPO2、GPO3、GPO4、GPO5、GPO6、およびGPO7を利用できます。

サポートされているリンクフォーマット

Link Parameter 出力リンク - O 入力リンク - TriggerI(オプション) 出力リンク - TriggerO(オプション) 入力リンク - GPIx(オプション) 出力リンク - GPOx(オプション)
Bit Width any 1 1 1 1
Arithmetic unsigned unsigned unsigned unsigned unsigned
Parallelism any1 1 1 1 1
Kernel Columns 1 1 1 1 1
Kernel Rows 1 1 1 1 1
Img Protocol {VALT_IMAGE2D, VALT_LINE1D} (default: VALT_IMAGE2D) VALT_SIGNAL VALT_SIGNAL VALT_SIGNAL VALT_SIGNAL
Color Format {VAF_GRAY, VAF_COLOR}

VAF_GRAY = FL_NONE

VAF_COLOR = FL_RGB

(Color Format が VAF_GRAY の場合、Color Flavor は FL_NONE です。Color Format が VAF_COLOR の場合、Color Flavor は FL_RGB です。)

VAF_GRAY VAF_GRAY VAF_GRAY VAF_GRAY
Color Flavor {FL_NONE, FL_RGB}

VAF_GRAY = FL_NONE

VAF_COLOR = FL_RGB

(Color Format が VAF_GRAY の場合、Color Flavor は FL_NONE です。Color Format が VAF_COLOR の場合、Color Flavor は FL_RGB です。)

FL_NONE FL_NONE FL_NONE FL_NONE
Max. Img Width 任意(デフォルト: 1024) 1 1 1 1
Max. Img Height 任意(デフォルト: 1024) 1 1 1 1

1

パラメータ MinimalParallelism に記載されている最小値に少なくとも設定する必要があります。

MinimalParallelism と O.Paralleism が異なる場合、Parallelism は 2 回変換され、その都度ダミー値が追加される可能性があります。これらのダミーピクセルがあるため、期待される出力画像幅は次のようになります。

パラメーター

CameraID
タイプ static write parameter
Default
範囲 {-1, 0, 1, 2, 3}

CameraID パラメータは、カメラオペレーターのファームウェアに対する CXP マスターポート ID を定義し、自動 CXP トポロジ検出(カメラからアプレットへ、およびアプレットからカメラへ)を可能にします。

このパラメータを使用すると、オペレーターで直接 ID を指定できます。ただし、Resources ダイアログでオペレーターのリソースを指定することをお勧めします。(Resources ダイアログを開くには、カメラオペレーターをハイライトし、[Design] メニューから [Resources] メニュー項目を選択します。)CameraID パラメータは、リソースダイアログのパラメータを使用して、正しいマスターポートに自動的に更新されます。次の例では、1台のシングルカメラと1台のデュアルカメラを使用しています。

module3(シングルカメラ)の CameraID(CXP マスターポート ID)は 2 です。module5(デュアルカメラ)の CameraID(CXP マスターポート ID)は 1 です。

デュアルカメラには2つのCXPカメラポートが必要です。(クアッドカメラには4つのポートが必要です。)マスターポートのみがオペレーターのCameraIDパラメータに反映されます。

可能な数(最大4つ)を超えるCameraPortリソースを定義した場合(例:5つの「CXPSingleCamera」オペレーターをインスタンス化した場合)、CameraPortリソースを最後に要求するカメラオペレーター(利用可能な4つのリソースがすでにすべて占有されている状態)は、そのCameraIDを-1に設定します。この場合、デザインルールチェックでエラーが報告されます。

Parameter CameraIDは範囲{-1, 0, 1, 2, 3}にあります。

MinimalParallelism
タイプ 静的読み取りパラメータ
Default 12
範囲 [1 : 512]

データの損失なしにカメラの最大帯域幅を転送できる、出力リンクOの最小Parallelismを提供する読み取り専用パラメータです。最小Parallelismは自動的に計算されます。

値は、パラメータFormatModeで選択したピクセルフォーマットによって異なります。

パラメータ FormatMode を dynamic パラメータとして定義する場合(以下のパラメータ FormatMode の説明を参照)、発生し得る最小の最小 Parallelism が計算されます。

最小Parallelismにより、ダミーピクセルが作成される場合があります。これは、オペレータがParallelismを2回変換し、その過程でダミー値を追加する可能性があるためです。これらのダミーピクセルのため、期待される出力画像幅は次のようになります。

Status
タイプ 動的リードパラメータ
Default
範囲 {0; 2^7-1}

Status パラメータは、カメラオペレーターの現在の状態を反映するための実行時読み取り専用パラメータです。Bit[0]はCXPストリームパケット損失の検出を示します。Bit[1]はCXPストリームパケット内の1バイト誤り訂正を示します。Bit[2]はCXPストリームパケット内の複数バイト誤り検出を示します。Bit[3..6]は予約されています。このパラメータは将来のバージョンで変更される可能性があります。

FormatType
タイプ 静的書き込みパラメータ
Default GRAY
範囲 GRAY, RGB, RGBA, RAW

ここでは、受信するピクセルフォーマットの種類(CXP仕様で定義されているもの)を選択できます。ここで選択した値によって、パラメータ FormatMode で選択できるピクセルフォーマットが決まります。したがって、このパラメータの設定はパラメータ FormatMode に直接影響します。以下のパラメータ FormatMode の説明も参照してください。

FormatMode
タイプ 静的または動的(ユーザー定義)書き込みパラメータ
Default Mono8
範囲 {Mono8, Mono10, Mono12, Mono14, Mono16, BayerGR8, BayerGR10, BayerGR12, BayerGR14, BayerGR16, BayerRG8, BayerRG10, BayerRG12, BayerRG14, BayerRG16, BayerGB8, BayerGB10, BayerGB12, BayerGB14, BayerGB16, BayerBG8, BayerBG10, BayerBG12, BayerBG14, BayerBG16, RGB8, RGB10, RGB12, RGB14, RGB16, RGBA8, RGBA10, RGBA12, RGBA14, RGBA16, Raw}

このパラメータでは、パラメータ FormatType で選択したフォーマットタイプに属するすべてのピクセルフォーマット(CXP仕様で定義されているもの)が提供されます。

ここで選択できるピクセルフォーマットは、パラメータ FormatType の設定によって異なります。そのため、常に全値範囲の一部の事前設定のみが利用可能です。

別のピクセルフォーマットのセットを取得するには、パラメータ FormatType の設定を変更します。上記のパラメータ FormatType の説明も参照してください。

具体的には、パラメータ FormatType の以下の設定により、パラメータ FormatMode で以下のピクセルフォーマットが提供されます。

FormatType == GRAY: {Mono8, Mono10, Mono12, Mono14, Mono16, BayerGR8, BayerGR10, BayerGR12, BayerGR14, BayerGR16, BayerRG8, BayerRG10, BayerRG12, BayerRG14, BayerRG16, BayerGB8, BayerGB10, BayerGB12, BayerGB14, BayerGB16, BayerBG8, BayerBG10, BayerBG12, BayerBG14, BayerBG16}

FormatType == RGB: {RGB8, RGB10, RGB12, RGB14, RGB16}

FormatType == RGBA: {RGBA8, RGBA10, RGBA12, RGBA14, RGBA16}

FormatType == RAW: {Raw} Pixel format Raw has a fix bit width of 32Bit. The data are interpreted as received.

このパラメータをダイナミックパラメータとして使用するか、スタティックパラメータとして使用するかを決定できます。「Parameter Type」列で選択します。

TxTriggerPacketMode
タイプ 動的書き込みパラメータ
Default CxpStandard
範囲 {CxpStandard, RisingEdgeOnly}

パラメータ TxTriggerPacketMode を使用すると、フレームグラバーとカメラを接続するCXPケーブルの帯域幅を増やすことができます。帯域幅の増加は、カメラトリガー信号の解釈をわずかに変更することによって達成されます。

この機能は、対応する特定のカメラでのみ使用可能です。詳細については、お近くの販売代理店またはBaslerサポートにお問い合わせください。

パラメータ TxTriggerPacketMode では、2つの値(CxpStandard、RisingEdgeOnly)を使用できます。

  • CxpStandard:推奨される設定は値 CxpStandard です。CxpStandard に設定した場合、カメラトリガーはCXP仕様に従って動作します。(CXP仕様では、カメラを1回トリガーするために、フレームグラバーがCXPケーブルを介して2つのパケットをカメラに送信するように規定されています。)

  • RisingEdgeOnly:RisingEdgeOnly に設定した場合、フレームグラバーはカメラを1回トリガーするために1つのパケットのみをカメラに送信します。その結果、帯域幅が広がり、ラインレートが向上します。

TxTriggerEventCount
タイプ 動的リードパラメータ
Default 0
範囲 {0;2^20-1}

TxTriggerEventCount パラメータは、カメラに送信されたトリガーエッジイベントの数を示します。

TxTriggerAcknowledgementCount
タイプ 動的リードパラメータ
Default 0
範囲 {0;2^20-1}

TxTriggerAcknowledgementCount パラメータは、(以前に送信されたトリガーエッジパケットへの応答として)カメラから送信され、フレームグラバーによって受信されたトリガー確認応答パケットの数を示します。

TxTriggerWaveformViolation
タイプ 動的リードパラメータ
Default 0
範囲 {0,1}

このパラメータは、TriggerIポート上の2つのトリガーエッジ間の距離が最小エッジ周波数に違反しているとオペレーターが検出した場合、カメラオペレーターによって1に設定されます。最小エッジ周波数は、すべての microEnable 5 プラットフォームで 550 ns(ナノ秒)です。このパラメータは、読み取られるまでその値を保持します。読み取り後、パラメータは値を更新します。周波数制御は常時実行されており、パラメータの読み取り状態の影響を受けません。

使用例

オペレーター CXPDualCamera の使用法を以下の例に示します。