デジタルカメラから出力されるデジタル信号の3つの重要な要素は、データライン、ピクセルクロック、有効ラインです。
デジタルカメラの多くは画像集録にCCD(Charge Coupled Device)センサを使用しています。CCDは、シャッターが開いて電荷が増えている間、光量子を吸収する数千の小さいセンサで構成されています。カメラで写真を撮る場合、CCD素子を放電し、電圧をカメラのデジタルデータに変換します。CCD素子は、ピクセルに対応する各素子で長方形またはラインを形成します。
そのため、カメラの種類には、ラインスキャンとエリアスキャンの2種類があります。
ラインスキャンカメラでは、CCD素子が一列に並んでいるものです。ラインが1つしかないため、ラインスキャンカメラはH-Enable信号のみを必要とします。
エリアスキャンカメラは、一般的なカメラと同様にCCDが長方形で定義された幅と高さでフレームを形成し、フレーム構築にH-Enable信号とV-Enable信号の両方を使用します。
以下の図は、ラインスキャンカメラとエリアスキャンカメラの有効信号とピクセルクロック信号を示します。この図のデータラインは、ピクセルクロックの各アクティブエッジ間で変更する可能性があることに注目してください。H-Enable信号とV-Enable信号がアクティブな場合に、ピクセルクロックのアクティブエッジ間でライン上のデータが画像集録デバイスにラッチされます。
デジタルカメラのピクセルクロック速度を上げる、または一度に1ピクセルよりも多くのピクセルを集録すると、カメラの集録速度を著しく上げられます。ピクセルクロックのアクティブエッジ間に1ピクセルのみをラッチするカメラは、単一タップカメラとして知られています。 タップまたはチャンネルは、1ピクセルごとに生じるデータラインのグループとして定義されます。カメラの中には、ピクセルクロックの同じアクティブエッジで異なるデータライン上に複数のピクセルをラッチできるものがあります。これらのカメラは複数タップカメラと呼ばれ、デジタルカメラは4タップで使用可能です。これらの技術はより多くのラインが必要ですが、より高速な転送が可能です。
NI 1422シリーズデバイスは16デジタルライン、NI 1424シリーズデバイスは32デジタルラインが特徴です。したがって、NI 1422デバイスは1つの16ビットタップまたは2つの8ビットタップでカメラをサポートでき、NI 1424デバイスは1つの32ビットタップ、2つの16ビットタップ、4つの8ビットタップを処理できます。画像集録デバイスは8ビットの倍数になるタップを要求するので、カメラに10ビット/ピクセルのみがある場合でも、16ビットのタップを要求し、データを処理して上位6ビットを無視します。
複数タップカメラのデータを格納するために、複数の異なる構成があります。単一タップカメラは、左上ピクセルで始まるデータを格納し、次のラインに移動する前に右に移動します。そのフレームに対して最後のラインが完了するまで、この方法を継続します。次に、カメラは次のフレームの上部でピクセルの集録を開始します。以下の図は、複数タップカメラにより使用される格納の構成をそれぞれ示します。
多くの場合、デジタルカメラはシリアルコマンドまたは制御信号を介して機能を変更することができます。Measurement & Automation Explorer(MAX)で該当カメラを右クリックし、プロパティを選択して上級タブをクリックすると、カメラ属性を変更できます。このタブでご使用のカメラのプロパティのすべてを表示して変更することができます。また、「imgSetCameraAttributeString」関数または「IMAQ Set Camera Attribute」VIを使用し、プログラム的にこれらのプロパティにアクセスすることもできます。
メモ: カメラプロパティを設定する場合、スペルが正しいかどうかと属性の順番を確認してください。常に、より高レベルの属性を最初に設定してください。以下のダイアグラムはより高いレベルの属性を最初に設定する方法を示します。(例: パルス幅の変更前にシャッター制御器とシャッタースピードを正しい設定にします。
デジタルカメラは、シリアルコマンドまたは制御パルスのどちらかを使用して制御されています。これらのメソッドは同じVIまたは関数の呼び出しを使用します。NI-IMAQとご使用のカメラのカメラファイルは、シリアルコマンドと制御パルスを管理します。IMAQ 1422および1424シリアルデバイスは、デジタルカメラを使用したシリアル通信用に設計されたUARTチップを特徴としています。カメラ属性関数で呼び出された高レベルコマンドにより、低レベルコマンドの明示的な知識なしでこれらのプロパティを設定できます。また、カメラファイルはシリアルコマンドと制御パルスを定義しています。
カメラを制御するもう一つの方法は、デジタル制御パルスを送信することです。一般的には、露光時間が制御信号で制御されています。カメラによっては、シャッターを開く前に信号が立ち上がりエッジがあり、シャッターは信号が立ち下がりエッジになるまで開いたままになることがあります。立ち下がりエッジが発生するとすぐに、シャッターが閉じて、カメラは画像集録デバイスにデジタルデータの転送を開始します。制御パルスの周波数はフレームレートを決定し、制御パルスの長さはシャッター時間を決定します。
メモ: シリアルコマンド、制御パルス、またはその両方で、シャッターを設定できます。カメラでどのメソッドを使用するかに関する詳細については、ご使用のカメラのドキュメントを参照してください。
プロパティによっては画像のフォーマットを変更することができます。ただし、これらの変更はタイムアウトエラーを引き起こす場合があります。たとえば、1000 x 1000画像を作成し、画像サイズを500 x 500に変更する属性を使用した場合、NI-IMAQは1000 x 1000画像を引き続き検索するため、結果的にエラーメッセージが発生します。
画像サイズを変更する一般的なサンプルは、ビニング属性です。ビニング は、連続する2つのピクセルを組み合わせて、単一ピクセル値にして解像度を下げ、なめらかな画像を作成するメソッドです。この属性は画像に影響するため、ウィンドウが適切に縮小されているかどうか確認する必要があります。適切であれば、縮小された画像サイズでエラーが発生しません。カメラ属性関数がシリアルコマンドや制御パルスを送信して属性変更のNI-IMAQを通知する間、集録サイズを変更し続ける必要があります。
カメラファイルは、NI-IMAQでカメラがピクセルを構成する方法、カメラがサポートする属性の種類、属性の変更方法、シリアルコマンドと制御パルスのどちらを使用するかという内容が記述されているファイルです。
サポートするデータとモードのフォーマット方法などすべてのデジタルカメラに対応できるように、NI-IMAQはデータの受信方法、および集録のモードや属性の変更にカメラに送信するシリアルコマンドと制御パルスの種類を指定するカメラファイルを必要とします。ご使用のカメラに使用できるデジタルカメラファイルがあるかどうかを確認するには、カメラアドバイザを確認してください。カメラがリストにない場合は、NI Camera File Generatorで独自のカスタムカメラファイルを作成する必要があります。詳しくは NI Camera File Generatorを参照してください。
デジタルカメラには、画像データを画像集録デバイス送信する4種類の信号タイプがあります。
以下の表は、4つのデジタルフォーマットをサポートしているボードです。
メモ: IMAQ 1424と1422シリーズデバイスはそれぞれRS-422とLVDSバージョンがあります。
NI PCI/PXI-1422
RS-422版 製品番号: 777959-01
LVDS版 製品番号: 777959-02
NI PCI/PXI-1424
RS-422/TTL版 製品番号: 777662-01
LVDS/TTL版 製品番号: 777662-02
IMAQ PCI-1428
カメラリンク 製品番号: 777315-01