Operator CLHSSingleCamera

Operator Library: Hardware Platform

このオペレータは、CLHS Single Link構成のカメラとVisualAppletsの間の画像データインターフェースを表します。 このオペレータはCLHSカメラからデータを受信し、 それを画像処理アプリケーションに送出します。

Available for Hardware Platform
marathon VF2

このオペレータは、カメラタイプのソースを排他的に1つ使用します。 画像ソースとして、フレームグラバーのポート0またはポート1を選択できます。 同じリソースIDをアプレット内で複数回使用することはできません。

このオペレータには常に1つの出力ポートOがあり、これが画像出力となります。

オプションのGPIOポートの追加

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

CLHSプロトコルは、パルスおよびGPIOメッセージをサポートしています。

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

ここでは、最大16個のオプションのGPI(汎用入力)および最大16個のオプションの GPO(汎用出力)の可用性を定義できます。

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

GPIOの状態は、接続されたオペレーターによってGPIの状態が変更されたときに転送されます。 オペレーターがカメラからGPIOメッセージを受信すると、すべてのGPOが更新されます。

パラメータ Bit Width

リンクパラメータ Bit Widthは、カメラが実際に送信しているビット幅よりも高い値または低い値に設定できます。

  • より低い値を選択した場合、各ピクセルのLSBビットが切り捨てられ、MSBビットのみがアプリケーションに転送されます。
  • より高い値を選択した場合、元のピクセルが出力ピクセルのMSB位置に配置されます。LSBビットは ゼロで埋められます。

どちらの場合も、相対的な明るさは同じままになります。つまり、白いピクセルは白いままで、暗いピクセルは暗いままになります。

オプションの出力ポートの追加

さらに、2つの追加の出力ポートを(オプションで)有効にすることができます。

  • 1つの出力ポート Output (SyncO)(ビデオメッセージのMultiFGSyncビット)、および
  • 1つの出力ポート Output (HeaderO)。 Output (HeaderO)は、現在処理中のビデオパッケージのヘッダー情報を提供します。 このポートは、64ビット幅のピクセルでヘッダー情報を提供します。

出力ポートHeaderOの構造

画像データが出力ポートOに出力される前に、1つの単一ピクセルがポートHeaderOに出力されます。このピクセルには、ビデオパッケージのヘッダーのデータが含まれています。 出力ポートHeaderOは、受信データのより複雑な依存関係に関する情報を転送するために、またはアプレットのビデオリンクを介してイベントに応答するために使用されます。

出力ポートHeaderOの構造は次のとおりです。

位置 CLHS Header 説明
[0,2] ColorID [0,2] ビデオソース: 現時点では、この部分は常に0です
[3,4] ColorID [3,4] パケットタイプ 0 = ビデオ(他のすべての組み合わせは予約されています)
[5,7] ColorID [5,7] Color ID:
ColorID 説明
0 モノ、マルチコンポーネント、Bayer、Raw
1 青
2 緑
3 赤
4 アルファ
(5..7) 予約済み
[8,9] VideoStatus [1,0] 行マーカー:
Bits 説明
00 行の継続
01 行の開始
10 行の終了
11 完全な行(開始および終了)
[10,11] VideoStatus [3,2] フレームマーカー:
Bits 説明
00 フレームの継続
01 フレームの開始
10 フレームの終了
11 完全なフレーム(開始および終了)
12 VideoStatus [4] トリガーの取りこぼし。前回のパケット以降、カメラがトリガーリクエストに応答できませんでした
13 VideoStatus [5] カメラのバッファオーバーフロー
14 VideoStatus [6] マルチFG使用のための MultiFGSync 同期(SyncO出力も参照)
15 VideoStatus [7] 再送フラグ、0に設定、未使用
[16,31] RowID 現在の行の番号
[32,39] - 予約済み、0に設定
[40,55] ColID このパッケージ内の最初のピクセルの列番号
[56,63] AcquisitionSet このバイトは、プロプライエタリ情報を設定するためにカメラで使用される場合があります。

I/O Property

Property 値
オペレータータイプ M
Output Links O、VisualApplets内で使用される取得画像データ
GPO[0;15](オプション)、カメラGPOのステータス(CLHSS経由で交換)
GPI[0;15](オプション)、フレームグラバーGPOのステータス(CLHS経由で交換)
SyncO(オプション)、MultiFGSyncビットがビデオパッケージに設定されています(1クロックサイクル有効)
HeaderO(オプション)、ビデオパッケージのヘッダーを含む各ビデオパッケージの開始時における64ビット幅のピクセル

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

Link Parameter Output Link O 出力リンク GPO[0;15](オプション) 出力リンク GPI[0;15](オプション) 出力リンク SyncO(オプション) 出力リンク HeaderO(オプション)
Bit Width any 1 1 1 64
Arithmetic unsigned unsigned unsigned unsigned unsigned
Parallelism any, see parameter description 1 1 1 1
Kernel Columns 1 1 1 1 1
Kernel Rows 1 1 1 1 1
Img Protocol {VALT_IMAGE2D, VALT_LINE1D} VALT_SIGNAL VALT_SIGNAL VALT_SIGNAL VALT_Pixel0D
Color Format VAF_GRAY VAF_GRAY VAF_GRAY VAF_GRAY VAF_GRAY
Color Flavor FL_NONE FL_NONE FL_NONE FL_NONE FL_NONE
Max. Img Width any 1 1 1 1
Max. Img Height any 1 1 1 1

パラメーター

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

このパラメータは、使用するカメラリソースを指定します。 さらに、このIDはカメラチャネルをアップレットポートにマッピングするためにも使用されます。

PixelFormat
タイプ static write parameter
Default Mono10p
範囲 {Mono8,Mono10p,Mono12p,Mono14p,Mono16,Raw8,Raw10p,Raw12p,Raw14p,Raw16, Raw64, B8, B10p, B12p, B14p, B16, G8, G10p, G12p, G14p, G16, R8, R10p, R12p, R14p, R16, BGR8, BGR10p, BGR12p, BGR14p, BGR16, BGRa8, BGRa10p, BGRa12p, BGRa14p, BGRa16, BayerGR8, BayerGR10p, BayerGR12p,BayerGR14p, BayerGR16, BayerRG8, BayerRG10p, BayerRG12p, BayerRG14p, BayerRG16, BayerGB8, BayerGB10p, BayerGB12p, BayerGB14p, BayerGB16, BayerBG8, BayerBG10p, BayerBG12p, BayerBG14p, BayerBG16}

このパラメータは、出力の Pixel Format を指定します。

RAWモードでは、カメラから送られてくるすべてのラインおよびフレームマーカーが無視されます。RAWモードは、複雑なリンク構造をサポートするために使用され、CLHSSingleCameraオペレーターでのみ使用できます。

AquisitionFormat
タイプ static write parameter
Default 面積
範囲 {Area; Linescan; RAW}

このパラメータが「Area」に設定されている場合、最初に利用可能になるデータは完全なフレームです。途中で開始されたフレームは無視されます。したがって、最初のビデオメッセージに「Start Of Frame」マーカーが必要です。

このパラメータが「Line」に設定されている場合、利用可能な最初のデータは完全な1行となります。途中で開始された行は無視されます。したがって、最初のビデオメッセージには「Start Of Line」マーカーが必要です。「Start of Frame」および「End of Frame」は、ラインスカンカメラでは0に設定されるため無視されます。

このパラメータが「RAW」に設定されている場合、すべてのマーカー(「Start/End of Line」および「Start/End of Frame」)が無視されます。「RAW」モードは、複雑なリンク構造をサポートするために使用されます。このモードは、CLHSSingleCameraオペレーターでのみ使用できます。

LineSupervision
タイプ dynamic/static read/write parameter
Default off
範囲 {on, off}

このパラメータが「on」に設定されている場合、オペレーターはカメラから送られてくるすべてのラインがアプレットに転送されているかどうかを監視します。

カメラから送られてくるラインには昇順で番号が付けられます(ライン0、ライン1、ライン2…ラインN)。このパラメータにより、ラインが失われていないことが確認されます。たとえば、1つのリンクを持つカメラが接続されており、パラメータが332、333、335、336…のようなシーケンスを監視している場合、エラーがスローされます。

カメラが2つ以上のリンクを持っている場合、パラメータ RowStep を使用して、リンクごとの入力ラインのステップサイズをそれに応じて増やすことができます。たとえば、カメラが2つのリンクを持っている場合、リンク0はライン0、2、4、6…を受信し、リンク1はライン1、3、5、7…などを受信します。同様に、カメラが4つのリンクを持っている場合、リンク0はライン0、4、8、12…を受信し、リンク1はライン1、5、9、13…を受信し、リンク2はライン2、6、10、14…を受信します。

さらに、パラメータ LineSupervision は整合性をチェックします。Start of Line (SoL) と End of Line (EoL) は正しい順序である必要があります。EoLまたはSoLの欠落が検出されると、エラーフラグが生成され、End of Lineが挿入されます。欠落しているラインは、2つの連続するRowIDが検出され、ラインの一貫性が再び保証されるまで、より小さなライン(長さはParallelismとbitwidthに依存します)として挿入されます。

RowStep
タイプ dynamic/static read/write parameter
Default 1
範囲 {1, 65535}

2つのRowID間のステップ。マルチチャンネルカメラを使用しており、 ラインが複数のリンクに分割されている場合を除き、通常は1にする必要があります。

SyncFirstLineToFGSyncRequest
タイプ dynamic/static read/write parameter
Default いいえ
範囲 {no,yes}

このパラメータがyesに設定されている場合、最初のFGSyncRequestより前のすべてのラインが破棄されます。LINE_1Dモードでのみ機能します。これにより、最初のラインが最初のエ外部FGSyncRequestパルスと同期されます。

MinimalParallelism
タイプ static read parameter
Default 2
範囲 [1; 1024]

データを損失することなくカメラの最大帯域幅を転送できるようにするための、出力リンクOの MinimalParallelism です。 この値は、現在選択されているデザインクロック周波数によって異なります。 周波数が高いほど、Parallelism の値を小さくすることができます。