• 検索結果がありません。

ご使用にあたっての注意

N/A
N/A
Protected

Academic year: 2022

シェア "ご使用にあたっての注意"

Copied!
45
0
0

読み込み中.... (全文を見る)

全文

(1)

Basler API C# スタートアップガイド

(2)
(3)

ご使用にあたっての注意

Microsoft, Windows, Windows 2000, Windows XP, Windows Vista, Windows 7 および Visual Basic, Visual C#は、マイクロソフト社の商標もしくは登録商標です。

その他の商品名などは、各社の商標もしくは登録商標です。

本書で使用しているソフトウエアやマニュアルの一部または全部を、株式会社リンクスの書面 による許可なくして転載することはできません。また、このマニュアルで記載している内容や ソフトウエアを、現状のまま、もしくは一部改良を加えて再販することは固く禁じられていま すのでご注意ください。

なお、本書の内容は将来予告なしに変更する場合があります。また、内容に関しては万全を期 して作成いたしましたが、万一、本書の記述に誤りがあった場合でも弊社では一切その責任を 負いかねますのでご了承ください。

技術的お問い合わせについて

BASLERカメラのご使用に関して疑問が生じた場合は、下記までお問い合わせください。

株式会社リンクス テクニカルサポートセンター

〒225-0014 神奈川県横浜市青葉区荏田西1-13-11 FAX : 045-979-0732

e-mail : [email protected] Web : http://www.linx.jp

技術サポートを正確に行うために、お問い合わせはファックスまたは電子メールでお願いしま す。

更新履歴

初版: 2011年2月21日 2版: 2012年8月17日

(4)

目次

1. はじめに... 1

1.1 システム条件... 1

2. C#サンプルプログラムによる取り込み... 2

2.1 C#サンプルプログラムの読み込みと実行... 2

3. VC#によるプログラミング... 5

3.1 プログラミング概略... 5

3.2 画像データのバッファへの取り込み... 5

3.2.1 カメラの初期化... 5

3.2.2 画像の取得... 8

3.2.3 カメラの終了処理... 9

3.3 取り込み画像の表示... 9

3.3.1 画像表示プログラミング... 9

3.4 ビルドの設定について... 12

4. カメラの設定変更... 14

4.1 パラメーター変更の手順... 14

4.1.1 露光時間の変更... 15

4.2 カメラのモード切替... 17

4.2.1 ソフトウエアトリガモード... 17

4.2.2 ハードウエアトリガモード... 20

5. カメラの設定パラメーター... 22

5.1 Analog Controls... 22

5.2 Image Format... 23

5.3 AOI Controls... 24

5.4 Acquisition Controls... 25

5.5 Digital I/O Controls... 27

5.6 Counter and Timer Controls... 28

5.7 LUT Controls... 30

5.8 Transport Layer... 30

5.9 Configuration Sets... 36

5.10 Auto Function Parameters... 37

5.11 Device Information... 38

5.12 Chunk Data Streams... 40

5.13 Events Generation... 40

5.14 Remove Parameter Limits... 41

(5)

1. はじめに

本文書では、Pylonで提供されているAPIで画像取り込みを行うことを説明しています。その ため、取り込み設定は正常に行われていることを想定しています。取り込み設定に関しては、

「Basler Pylonスタートアップガイド」もしくは「Basler aceスタートアップガイド」をご一 読ください。

本文書では、C#開発言語を利用した方法を説明します。なお、今回提供するサンプルプログラ ムではVisual Studio 2005を利用しています。

1.1 システム条件

本文書ではWindows上でアプリケーションを構築していくことを想定しています。そのため、

開発環境については以下の条件を満たす必要があります。

C#言語の場合

Visual Studio 2003以上 .NETの場合

Visual Studio 2005以上、.NET Framework2.0の使用

(6)

2. C#サンプルプログラムによる取り込み

本節ではVisual Studioの開発環境を利用して、C#での画像取り込み方法を説明します。ここ

ではサンプルプログラムを通してプログラミングの説明を行いますが、ここで使用するサンプ ルプログラムは、Pylonをインストールした際にインストールされるものではなく、別途用意 したプログラムになりますのでご注意ください。本サンプルプログラムは、弊社ホームページ よりダウンロードすることができます。

リンクスホームページ

http://www.linx.jp/download/camera/index.html

2.1 C#サンプルプログラムの読み込みと実行

本節ではサンプルプログラムを実行し、実際にAPIを利用して画像の撮影を行います。

1. サンプルプログラムの読み込み

リンクスホームページで配布しているファイルを解凍し、プロジェクトファイルを Visual Studio で開きます。SamplePrograms¥PylonGrabSampleGUI¥PylonGrabSampleStream_CS フォルダにあるプロジェクトファイルを開くと、以下のように表示されます。

(7)

2. ビルドの実行

サンプルプログラムのビルドを行います。ソリューションエクスプローラからプロジェクトを 選択し、右クリックにてコンテキストメニューを表示します。コンテキストメニューより“ビ ルド”を選択します。

3. プログラムの実行

F5 キーにより、プログラムを実行してください。サンプルプログラムが実行され、以下のダ イアログが表示されます。

プログラムを実行するためには、初めに”Open”ボタンをクリックします。”Open”ボタンを クリックすることで、画像を取り込むための初期化が行われます。初期化が成功すると、上部 のメッセージボックスに ”カメラのオープンに成功しました” と表示されます。

(8)

カメラの初期化に成功後、”Grab”ボタンが有効になります。”Grab”ボタンをクリックするご とに画像の撮影が行われます。

撮影後、”Close”ボタンをクリックすると、取り込みの終了処理を行います。”Exit”ボタンを クリックするとプログラムを終了します。

(9)

3. VC# によるプログラミング

3.1 プログラミング概略

本章では、カメラから画像を取り込む流れについて説明します。プログラミングの流れを理解 することで、プログラミングにおいてどのような処理が必要か明確化でき、理解が容易になり ます。

カメラから画像を取得する流れは、大きく分けて以下の3つのステップに分けることができま す。

① カメラオープン処理

② 画像の取得処理

③ カメラクローズ処理

それぞれのステップにおいて、行う処理は具体的に以下のとおりです。

① カメラオープン処理

 PCに接続されているカメラ情報を取得する

 各カメラに対して初期化を行う

② 画像の取得処理

 カメラに対して取り込みを実行する

③ カメラクローズ処理

 各カメラに対して終了処理を行う

3つの処理を踏まえたうえで、次項よりプログラミングの詳細を説明します。

3.2 画像データのバッファへの取り込み

本節では具体的なプログラムを通して、画像取り込みについて説明します。

使用するプログラムは最も単純な画像取り込み手順であり、カメラから画像を1枚取得し、そ のデータがメモリに展開されるプログラムです。サンプルプログラムはリンクスホームページ より取得ください。

プログラムについて、3.1プログラミング概略の流れに沿って説明を行います。プログラムフ ァイルはSamplePrograms¥PylonAPI Program¥C#¥SimpleStreamGrab_CSにあるプロジェク トファイル(Visual Studio 2010にて作成)を使用します。

3.2.1 カメラの初期化

カメラの初期化手順は、PC に接続されているカメラの情報取得と、カメラそれぞれに対する 初期化に分割することができます。まずは、PC に接続されているカメラの情報取得について 説明します。

(10)

Pylon.Initialize(); ・・・・①

numDevices = Pylon.EnumerateDevices(); ・・・・② if (0 == numDevices)

{

throw new Exception("デバイスが見つかりません.");

}

まず①において、Pylon自身の初期化を行います。この初期化処理は、Pylonを使用するアプ リケーションではプログラムの初期化段階で必ず実行する必要があります。

次に②において、このプログラムを実行するPCに接続されているカメラの数を取得します。

もしカメラが接続されていなければ、0を返します。

Pylonの初期化が完了すると、カメラに対する初期化を行います。下記の部分が各カメラに対

する初期化になります。

hDev = Pylon.CreateDeviceByIndex(0); ・・・・①

Pylon.DeviceOpen(hDev, Pylon.cPylonAccessModeControl | Pylon.cPylonAccessModeStream); ・・・・②

hGrabber = Pylon.DeviceGetStreamGrabber(hDev, 0); ・・・・③ Pylon.StreamGrabberOpen(hGrabber); ・・・・④

hWait = Pylon.StreamGrabberGetWaitObject(hGrabber); ・・・・⑤

Pylon.DeviceFeatureFromString(hDev, "AcquisitionMode", "SingleFrame"); ・・・・⑥ isAvail = Pylon.DeviceFeatureIsWritable(hDev, "GevSCPSPacketSize");・・・・⑦

if (isAvail) {

Pylon.DeviceSetIntegerFeature(hDev, "GevSCPSPacketSize", 1500);

}

Pylon.StreamGrabberSetMaxNumBuffer(hGrabber, 1); ・・・・⑧

payloadSize = (uint)Pylon.DeviceGetIntegerFeature(hDev, "PayloadSize"); ・・・・⑨ Pylon.StreamGrabberSetMaxBufferSize(hGrabber, payloadSize);

Pylon.StreamGrabberPrepareGrab(hGrabber); ・・・・⑩

(11)

buffer = new PylonBuffer<byte>(payloadSize, true); ・・・・⑪

buffers = new Dictionary<PYLON_STREAMBUFFER_HANDLE, PylonBuffer<Byte>>();

hStream = Pylon.StreamGrabberRegisterBuffer(hGrabber, ref buffer);

buffers.Add(hStream, buffer);

Pylon.StreamGrabberQueueBuffer(hGrabber, hStream, 0); ・・・・⑫

実際に各カメラに対する制御を行うのは PYLON_DEVICE_HANDLEクラスです。このクラス のインスタンスに対して、①において、PCに接続されているカメラリストの1番目のものを 割り当てています。②では、PYLON_DEVICE_HANDLEのインスタンスにより制御を可能にす るためのカメラの初期化を行っています。この引数として、第一引数にはカメラを制御するイ ンスタンスを渡し、第二引数にて、カメラをどのモードで開くか設定します。ここで設定でき るカメラのモードは以下のとおりです。

 Pylon.cPylonAccessModeControl : カメラのすべてのパラメーターを制御することが できるモードです。

 Pylon.cPylonAccessModeStream : カメラから出力される画像データにアクセスする ことができるモードです。

 Pylon.cPylonAccessModeExclusive : このフラグを立てると他のアプリケーションか らアクセスすることができなくなります。

 Pylon.cPylonAccessModeMonitor : カメラのパラメーターを参照することしかでき なくなります。

上記のうちPylon.cPylonAccessModeControlとPylon.cPylonAccessModeStreamが有効にな っているので、カメラのすべてのパラメーターにアクセスでき、なおかつカメラから取得され るデータの操作が可能になります。

カメラの初期化が終了すると、③において、ストリームグラバーを取得しています。Pylonで は、カメラ自身を設定するハンドルとは別に、カメラから出力されてくる画像の操作を専門に 行うためのハンドルが用意されています。そのため、画像のバッファなどの設定はこのストリ ームグラバーに対して行うことになります。

④でストリームグラバーを初期化し、⑤においてストリームグラバーが画像オブジェクトの待 ちになります。⑥では、カメラの取り込みのモードを変更しています。

⑦ではカメラのパケットサイズが変更できるか確認を行っています。このパラメーターは必ず しも設定する必要はありませんが、GigE カメラの場合、パケットはジャンボパケット、つま り、細切れとなったパケットを数多く転送するのではなく、極力パケットサイズを大きくして データを送信することを推奨しています。そのため、このサンプルプログラムでも、パケット サイズが変更できる場合はサイズを変更しています。

⑧ではストリームグラバーに割り当てるバッファの数を指定しています。⑪で画像バッファを 用意していますが、その画像バッファを確保するために必要な画像のサイズを⑨で取得してい ます。⑩によりストリームグラバーが取り込みの待ちとなります。その後、⑫によりストリー

(12)

ムグラバーの画像バッファも取り込み待ちの状態になります。この関数が実行された後は、バ ッファに関する変更は不可能になり、変更したい場合には取り込みの待ち状態を解除しなけれ ばいけません。

3.2.2 画像の取得

カメラの初期化が完了すると、画像の取り込みを行います。画像の取り込みは以下のようなプ ログラムになります。

Pylon.DeviceExecuteCommandFeature(hDev, "AcquisitionStart"); ・・・・① if (Pylon.WaitObjectWait(hWait, 3000)) ・・・・②

{

Byte min, max;

PylonGrabResult_t grabResult;

if (Pylon.StreamGrabberRetrieveResult(hGrabber, out grabResult)) ・・・・③ {

if (grabResult.Status == EPylonGrabStatus.Grabbed) {

if (buffers.TryGetValue(grabResult.hBuffer, out imgBuf)) {

getMinMax(imgBuf.Array, grabResult.SizeX, grabResult.SizeY, out min, out max);

Console.WriteLine("画像取り込み成功!. 最小輝度値 = {0}, 最大輝度値 = {1}", min, max);

} else {

Console.Error.WriteLine("画像取り込み失敗.

エラーコード = {0}", grabResult.ErrorCode);

} } } else{

Console.Error.WriteLine("画像取り込み失敗. エラーコード = {0}", grabResult.ErrorCode);

} } else {

Console.WriteLine("タイムアウト.");

}

実際に取り込みを行うのは①の実行のみです。その後、②において3秒取り込み完了を待ちま す。もしこの間に画像のオブジェクトが得られなければ、タイムアウトエラーになります。取 り込みに成功すると、③において取得画像が正常であるか確認を行い、画像が正常であれば、

画像の輝度値を確認する処理を行います。

(13)

3.2.3 カメラの終了処理

取り込みが完了すると、それまでに利用したインスタンスに対して終了処理を実行する必要が あります。終了処理は以下のとおりです。

imgBuf.Dispose(); ・・・・①

Pylon.DeviceClose(hDev); ・・・・② Pylon.DestroyDevice(hDev); ・・・・③ imgBuf = null; ・・・・④

Pylon.Terminate(); ・・・・⑤

Console.Error.WriteLine("¥n終了するにはキーを押してください.");

Console.ReadLine();

①において、画像のバッファを破棄しています。その後、②、③において、カメラに対するク ローズ処理を行っています。最後に④を実行することで、Pylon全体に対しての終了処理とな ります。

プログラムを実行すると、カメラが正常に動作した場合 MS-DOS プロンプトにおいて以下の ように表示されます。

3.3 取り込み画像の表示

本節では、実際に取り込んだ画像の表示を行う方法について紹介します。この節における説明 は、2.1C#サンプルプログラムの読み込みと実行で使用したサンプルプログラムを用いて行い ます。

画像の表示は、1次元配列に格納されたデータをbitmap形式に変換し、ピクチャーボックス に表示することで行います。

3.3.1 画像表示プログラミング

本節では、取り込み手順は3.2画像データのバッファへの取り込みで説明した内容と同じにな るため省略します。実際のプログラミングは以下のようになります。

(14)

Pylon.DeviceExecuteCommandFeature(hPylonDeviceHandle, "AcquisitionStart"); ・・・・① if (Pylon.WaitObjectWait(hWait, 3000))

{

isReady = Pylon.StreamGrabberRetrieveResult(hGrabber, out grabResult);

if (isReady) {

if (grabResult.Status == EPylonGrabStatus.Grabbed) {

if (buffers.TryGetValue(grabResult.hBuffer, out imgBuf)) {

CreateBitmap(ref bitmap, grabResult, imgBuf); ・・・・② if (bitmap != null)

{

SaveImage.Enabled = true;

Display.Image = bitmap;

StatusMessage.Text = "画像取込に成功しました。(" + (++counter) + ")";

} else {

StatusMessage.Text = "撮像に失敗しました。(ビットマップ生成エラー)";

throw new Exception();

}

Pylon.StreamGrabberQueueBuffer(hGrabber, grabResult.hBuffer, grabResult.Context);

} else {

StatusMessage.Text = "撮像に失敗しました。(画像の取得失敗)";

throw new Exception();

} } } else

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

private void CreateBitmap( ref Bitmap bitmap, PylonGrabResult_t grabResult, PylonBuffer<Byte> imgBuf )

{

PylonBuffer<Byte> newBuffer = null;

if (grabResult.PixelType == EPylonPixelType.PixelType_Mono8) ・・・・③ {

bitmap = new Bitmap(grabResult.SizeX, grabResult.SizeY, PixelFormat.Format8bppIndexed);

ColorPalette colorPalette = bitmap.Palette;

for (int i = 0; i < 256; i++) {

colorPalette.Entries[i] = Color.FromArgb(i, i, i);

}

bitmap.Palette = colorPalette;

newBuffer = imgBuf;

}

(15)

else if(grabResult.PixelType == EPylonPixelType.PixelType_YUV422packed) ・・・・④ {

bitmap = new Bitmap(grabResult.SizeX, grabResult.SizeY, PixelFormat.Format32bppRgb);

if (!hConverter.IsValid) {

hConverter = Pylon.PixelFormatConverterCreate(hPylonDeviceHandle, 1); ・・・⑤

}

Pylon.PixelFormatConverterConvert(hConverter, ref newBuffer, imgBuf);

}

BitmapData bmpData = bitmap.LockBits(new Rectangle(0, 0, bitmap.Width, bitmap.Height), ImageLockMode.ReadWrite, bitmap.PixelFormat);

IntPtr ptrBmp = bmpData.Scan0;

int imageStride = grabResult.PixelType == EPylonPixelType.PixelType_Mono8 ? grabResult.SizeX : grabResult.SizeX * 4;

if (imageStride == bmpData.Stride) {

Marshal.Copy(newBuffer.Array, 0, ptrBmp, bmpData.Stride * bitmap.Height);

} else {

for (int i = 0; i < bitmap.Height; ++i) {

Marshal.Copy(newBuffer.Array, i * imageStride, new IntPtr(ptrBmp.ToInt64() + i * bmpData.Stride), grabResult.SizeX);

} }

bitmap.UnlockBits(bmpData);

}

上記①において、取り込み開始の命令をカメラに対して送信しています。その後の IF 分岐に より、正常に画像が撮影できたかを確認しています。②において取得画像の表示を行うための

Bitmapに変換しています。

CreateBitmapのメソッドは実際に撮影画像をBitmap形式に変換するために実行します。こ

の関数では、データがモノクロかカラーかを判断して、どちらもBitmap形式に正常に変換で きるようになっています。③において取得画像がモノクロであると判断されると、Bitmap関 数によりデータの作成が行われます。

④においてカラー画像と判断されると、Bitmap関数によりデータを作成された後、⑤におい てPixelFormatConverterCreate関数を呼び出しています。これはPylon APIで提供されてい る関数です。接続されているカメラがカラー画像の場合、カメラはRGBのデータをPCに送信 しているのではなく、YUVデータのうちYUのデータをPCに送信しています。このデータか らRGB のカラーデータに変換する必要があるため、⑤で変換を行っています。データが完成 した後は、Bitmap形式として画像の幅が4の倍数である必要があるため、その並び替えを行 っています。

(16)

3.4 ビルドの設定について

これまでに紹介したプログラムでは、.NET ライブラリの参照設定をプロジェクトファイルに 設定しているため、特別な設定を行う必要はありません。しかし、実際のアプリケーションで は設定をアプリケーションごとに行う必要があります。ここでは、.NET ライブラリの参照設 定方法について説明します。

1. ダイアログを開く

ソリューションエクスプローラのツリーにおいて、“参照設定”を選択します。右クリックに よりコンテキストメニューを開き、“参照の追加”を選択します。

2. 共通言語ランライムサポート

参照の追加のダイアログにおいて、.NETタブを開き、表示されるリストからPylon.NETを選 択します。

(17)

または、同じダイアログの参照タブよりC:¥Program Files¥Basler¥pylon 3.1¥pylonc.net¥bin を参照することでも同じ設定を行うことができます。

(18)

3. 設定の確認

再びソリューションエクスプローラのツリーにおいて、PylonC.NET が追加されていることが 確認できれば、設定は終了です。

4. カメラの設定変更

カメラを実際に使用する場合には、ご利用になる目的や環境に合わせて適切な設定を行う必要 があります。本章では、Pylon APIを通してカメラの設定をプログラムから変更する方法につ いて説明します。

4.1 パラメーター変更の手順

Basler GigEカメラは目的に沿った豊富な設定項目を提供しています。この豊富な設定項目の

中から目的にあったパラメーターを見つけ、Pylon APIで設定する方法について、カメラのビ ューワーソフトPylon Viewerを用いた容易な方法を紹介します。

パラメーターの変更については、大きく分けて3つの手順に分割できます。

1. Pylon Viewerにて目的の機能(パラメーター)を見つける

2. 目的の動作を確認し、Pylon Viewerの説明箇所に表示されるパラメーター名を取 得する

3. Pylon APIによりプログラムに実装する

上記3つの手続きを踏まえ、実際にパラメーターを変更する機能をアプリケーションに実装し ます。

(19)

4.1.1 露光時間の変更

本節では、実際にPylon APIを利用して露光時間を変更します。プログラムについては、2.1 C#

サンプルプログラムの読み込みと実行 を利用して行います。

1. Pylon Viewerにて露光時間を変更

Pylon Viewer を利用して露光時間の変更を行います。Pylon Viewer の使用方法は Basler

Pylonスタートアップガイドをご参照ください。露光時間については、下図のようにカメラを

コントロールするためのFeaturesにて、Basler → Acquisition Controls →Exposure time (abs)[us]の値を変更することで設定を行うことができます。

2. パラメーター名の確認

Pylon Viewer にて露光時間が変更できることを確認した後、Features の Exposure Time (Abs)[us]を選択した状態で、ツールの下部にあるFeature Documentationを確認します。

Feature Documentationには、選択したパラメーターの説明が表示されます。ここで、Node

Nameに変更したパラメーター名、Interface Typeに設定値の型が表示されます。このNode

(20)

Nameをコピーし、変更する値がIFloat型であることを控えておきます。

3. パラメーターの実装

先ほど利用したパラメーターをプログラムに実装します。2.1C#サンプルプログラムの読み込

eviceSetFloatFeature関数は、カメラに対してFloat型の値を設定するために用意されてい

数に対して、カメラへのハンドル、設定パラメーター名、書き込む値を指定して実行し みと実行 で利用したサンプルプログラムをVisual Studioで開き、Grab_Click関数において Pylon.DeviceExecuteCommandFeatureで”AcquisitionStart”を実行する関数の前に、以下の ように追加します。

D

る 関 数 で す 。 こ の 他 に も 、 設 定 値 の 型 に 合 わ せ て DeviceSetBooleanFeature や DeviceSetIntegerFeatureなどが用意されています。利用する関数については、Pylon Viewer 上で確認できるFeature Documentation に記載されているInterface Type により判断しま す。

この関

ます。設定パラメーター名には、Feature Documentationで確認したパラメーター名を指定 します。

4. Pylon APIプログラムにおける露光時間変更の確認

プログラムを追加した後、実際にアプリケーションを実行して露光時間が変わることを確認し

0000µsecの場合 てください。

4

Pylon.DeviceSetFloatFeature(hPylonDeviceHandle, "ExposureTimeAbs", 10000); //追加部分 ylon.DeviceExecuteCommandFeature(hPylonDeviceHandle, "AcquisitionStart");

P

(21)

5000µsecの場合

4.2 カメラのモード切替

えをPylon APIで行う方法について説明します。これまで

4.2.1 ソフトウエアトリガモード

について説明します。ソフトウエアトリガモ 本節では、取り込みモードの切り替

のサンプルプログラムでは、カメラのタイミングで画像を取り込むフリーランモードにて取り 込みを行いました。ここでは、ソフト上で撮影のタイミングをカメラに知らせる“ソフトウエ アトリガモード”、外部からの入力信号のタイミングで画像の撮影を行う“ハードウエアトリガ モード”の説明を行います。

ここでは、ソフトウエアトリガモードの取り込み

ードの実装方法についても、露光時間の切り替えと同様に、まず初めにPylon Viewerにて取 り込み動作とパラメーター名を確認し、そのパラメーター名を利用してアプリケーションに実 装します。

1. Pylon Viewerによるソフトウエアトリガ取り込み

はじめにPylon Viewerにてソフトウエアトリガ取り込みを確認します。

(22)

取り込みを開始する前に、カメラのモード設定を変更します。Acquisition Controlsツリーにお いて、Trigger Modeの項目を”On”、Trigger Source の項目を”Trigger Software”に変更しま す。この変更の後に、連続取り込みの開始ボタンをクリックします。Pylon Viewerに画像表示 用のウインドウが表示されますが、この時点では画像は表示されません。この状態で、Generate

Software Triggerの項目にある”Execute”ボタンをクリックします。このとき、初めて画像が撮

影され、ウインドウに画像が表示されます。”Execute”のボタンをクリックするごとに画像が撮 影されることを確認してください。

2. パラメーターの確認

変更したパラメーターをFeature Documentationにて確認します。利用したパラメーターは以 下のとおりです。

 Trigger Mode NodeName : TriggerMode Interface Type : IEnumeration

• Interface TypeがIEnumerationの場合、文字列を指定します。この場合、設定したい項目 の” Symbolic Name”の値を指定します。このときの文字列は”On”です。

 Trigger Source NodeName :TriggerSource Interface Type : IEnumeration

※ Trigger Sourceの値は” Software”です

 Generate Software Trigger NodeName : TriggerSoftware Interface Type : ICommand

• Interface TypeがICommandの場合、コマンドを実行するための関数に、NodeNameを指 定します。

3. モード変更の実装

(23)

Pylon Viewerに確認したパラメーターを実装します。4.1.1露光時間の変更 と同様にGrab_Click 関数のPylon.DeviceExecuteCommandFeatureで”AcquisitionStart”を実行する関数の前に、以 下のように追加します。

関数の①と②において、取り込みのモードを変更しています。取り込みのモードが変更された後 に、③で取り込み開始を行っています。ただし、取り込みがトリガモードに切り替わっているの で、画像の撮影は行いません。④の関数を実行することで初めて撮影が行われます。

4. 撮影の確認

プログラムを実行して、正しく撮影が行えることを確認してください。なお、

Pylon.DeviceExecuteCommandFeature(hPylonDeviceHandle, "TriggerSoftware");を無効化す ることで、撮影が行えなくなり、正しくソフトウエアトリガモードで動作していることを確認す ることができます。

Pylon.DeviceExecuteCommandFeature(hPylonDeviceHandle, "AcquisitionStart");・・・③ Pylon.DeviceExecuteCommandFeature(hPylonDeviceHandle, "TriggerSoftware");・・・④ Pylon.DeviceFeatureFromString(hPylonDeviceHandle, "TriggerMode", "On");・・・① Pylon.DeviceFeatureFromString(hPylonDeviceHandle,

"TriggerSource", "Software");・・・②

(24)

4.2.2 ハードウエアトリガモード

ここではハードウエアトリガ取り込みについて、Pylon APIを用いた実装方法を説明します。

基本的なプログラミングについては、ソフトウエアトリガと変わりません。

1. Pylon Viewerによる取り込み確認

ハードウエアトリガによる取り込みが正常に動作するかPylon Viewerにて確認を行います。

取り込みを開始する前に、カメラの設定を変更します。Acquisition Controlsツリーにおいて、

Trigger Modeの項目を”On”、Trigger Source の項目を”Line 1”もしくは”Line 2”に変更しま す。この入力ラインの選択に関しては、ご利用環境に合わせて設定してください。次に、トリ ガの極性を示すTrigger Activationを”Rising Edge”もしくは”Falling Edge”の設定にします。

こちらもご利用環境に合わせて適切な設定を行ってください。変更が完了した後に、連続取り 込みの開始ボタンをクリックします。Pylon Viewerに画像表示用のウインドウが表示されま すが、この時点では画像は表示されません。外部よりトリガ信号を入力するごとに、画像が表 示されることをご確認ください。

2. パラメーターの確認

変更したパラメーターをFeature Documentationにて確認します。利用したパラメーターは 以下のとおりです。

 Trigger Mode NodeName : TriggerMode Interface Type : IEnumeration

※ Trigger Modeの値は” On”です

(25)

 Trigger Source NodeName :TriggerSource Interface Type : IEnumeration

※ Trigger Sourceの値は” Line1”もしくは” Line2”です。

 Trigger Source NodeName : TriggerActivation Interface Type : IEnumeration

※ Trigger Activationの値は” RisingEdge”もしくは” FallingEdge”です。

4. モード変更の実装

Pylon Viewerに 確 認 し た パ ラ メ ー タ ー を 実 装 し ま す 。4.1.1露 光 時 間 の 変 更 と 同 様 に Grab_Click関数のPylon.DeviceExecuteCommandFeatureで”AcquisitionStart”を実行する関 数の前に、以下のように追加します。

①において、カメラのモードをトリガモードに切り替えています。その後、②においてLine1 より入力される信号をトリガとして設定し、③においてトリガの極性を指定しています。④に てトリガ取り込みを開始していますが、実際にはトリガ入力を待つ状態になります。

5. 撮影の確認

プログラムを実行し、Open ボタンで初期化を行い、Grab ボタンで取り込みを開始します。

このとき、ピクチャーボックスには画像は表示されず、トリガが入力されたタイミングで画像 が表示されることを確認してください。

Pylon.DeviceFeatureFromString(hPylonDeviceHandle,

"TriggerActivation", "RisingEdge")・・・③

Pylon.DeviceExecuteCommandFeature(hPylonDeviceHandle,

"AcquisitionStart"); ・・・④

Pylon.DeviceFeatureFromString(hPylonDeviceHandle, "TriggerMode", "On");・・・① Pylon.DeviceFeatureFromString(hPylonDeviceHandle, "TriggerSource", "Line1");・・・②

(26)

5. カメラの設定パラメーター

BASLERカメラは非常に多くの設定パラメーターを有しており、これらを適切に設定すること

によって高度な画像取込を実現することができます。この章ではPylonを通して設定可能なカ メラパラメーター一覧を紹介します。

5.1 Analog Controls

カテゴリー パラメーター (Node Name) 説明

GainAuto 自動ゲイン設定機能モードを設定します。自

動ゲイン設定機能を用いてゲインを自動的に 調整する場合に使用します。

Enum Value: Off, Once, Continuous Interface Type: IEnumeration

GainSelector ゲイン制御方法を選択します。

Enum Value: All

Interface Type: IEnumeration ゲイン設定

GainRaw 選択したゲイン制御に指定する値を設定しま

す。設定は整数値です。

Interface Type: IInteger ブラックレベ

ル設定

BlackLevelSelector ブラックレベル制御方法を選択します。

Enum Value: All

Interface Type: IEnumeration

(27)

BlackLevelRaw ブラックレベルの制御値を整数で指定しま す。

Interface Type: IInteger

BalanceWhiteAuto 自動ホワイトバランス機能を適用します。

Enum Value: Off, Once Interface Type: IEnumeration

BalanceRatioSelector BalanceRatio制御方法を選択します。

Enum Value: Red, Green, Blue Interface Type: IEnumeration

BalanceRatioAbs BalanceRatioの制御値を実数で指定します。

Interface Type: IFloat ホワイト

バランス設定

BalanceRatioRaw BalanceRatioの制御値を整数で指定します。

Interface Type: IInteger

GammaEnable ガンマ補正の適用有無を選択します。

Interface Type: IBoolean ガンマ補正設

Gamma ピクセル輝度のガンマ補正を実施します。通

常はCRTのような表示システムの非線形性を 補正するために使用します。

Interface Type: IFloat ディジタル

シフト設定

DigitalShift ディジタルシフト制御の値を指定します。

Interface Type: IInteger

5.2 Image Format

カテゴリー パラメーター (Node Name) 説明

PixelFormat 画像のピクセルフォーマットを指定します。

Enum Value: Mono8, Mono12Packed, Mono12, BayerBG8, BayerBG12, YUV422Packed,

YUV422_YUYV_Packed Interface Type: IEnumeration 画像フォーマ

ット設定

PixelSize (読取専用パラメーター)

画像のピクセルの深さをbitで示します。こ の値にはピクセルフォーマットの設定が関係 しています。

Interface Type: IEnumeration

(28)

PixelColorFilter (読取専用パラメーター)

取得される画像に適用されているベイヤーフ ィルター配列を示します。

Interface Type: IEnumeration

PixelDynamicRangeMin (読取専用パラメーター)

ピクセルが取りうる最小輝度値を示します。

Interface Type: IInteger

PixelDynamicRangeMax (読取専用パラメーター)

ピクセルが取りうる最大輝度値を示します。

Interface Type: IInteger

ReverseX 画像を水平方向に反転して出力します。AOI

設定は反転させた後の画像に反映されます。

Interface Type: IBoolean

TestImageSelector テスト画像モードを選択します。

Enum Value: Off, Testimage1 ~ 6 Interface Type: IEnumeration

5.3 AOI Controls

カテゴリー パラメーター (Node Name) 説明

Width AOIの幅を指定します。

Interface Type: IInteger AOIサイズ設

Height AOIの高さを指定します。

Interface Type: IInteger

OffsetX AOIのXオフセット(センサーの左端から画

像の左端までの距離)をピクセル単位で指定 します。

Interface Type: IInteger

OffsetY AOIのYオフセット(センサーの上端から画

像の上端までの距離)をピクセル単位で指定 します。

Interface Type: IInteger AOI位置設定

CenterX 画像(AOI)中心のX座標をセンサー中心に

合わせます。

Interface Type: IBoolean

(29)

CenterY 画像(AOI)中心のY座標をセンサー中心に 合わせます。

Interface Type: IBoolean

5.4 Acquisition Controls

カテゴリー パラメーター (Node Name) 説明 連続取込

枚数設定

AcqusitionFrameCount 一回の取込命令で連続的に取得する画像

の枚数を指定します。(マルチショット機 能)

Interface Type: IInteger

TriggerSelector トリガタイプを選択します。

Enum Value: AcquisitionStart, FrameStart Interface Type: IEnumeration

TriggerMode トリガモードを設定します。

Enum Value: On, Off

Interface Type: IEnumeration

TriggerSoftware ソフトウエアトリガ信号を生成します。

TriggerSourceを'software'に設定した場 合に使用します。

Interface Type: ICommand

TriggerSource トリガ信号のソースを指定します。

Enum Value: TriggerSoftware, Line1 Interface Type: IEnumeration

TriggerActivation トリガ信号の極性を指定します。

Enum Value: RisingEdge, FallingEdge Interface Type: IEnumeration

トリガ モード設定

TriggerDelayAbs トリガディレイ時間を実数で指定します

(単位:usec)。

トリガ信号を受けてから実際に有効化す るまでの時間を設定できます。

Interface Type: IFloat 露光モード設

ExposureMode 露光モードを指定します。

Enum Value: Timed, TriggerWidth Interface Type: IEnumeration

(30)

ExposureAuto 自動露光機能のモードを有効化します。自 動露光機能は、設定可能範囲内で自動的に 露光時間(AutoExposureTimeAbs)を調 整します。

Enum Value: Off, Once, Continuous Interface Type: IEnumeration

ExposureTimeAbs カメラの露光時間を実数で指定します。

(単位:usec)

Interface Type: IFloat

ExposureTimeRaw ExposureTimeBaseパラメーターへの乗数

を整数値で指定します。実際の露光時間 は、ExposureTimeRawと

ExposureTimeBaseAbsの積になります。

Interface Type: IInteger

ReadoutTimeAbs (読取専用パラメーター)

センサー読み出し時間を示します。(単 位:usec)

Interface Type: IFloat

ExposureOverlapTimeMaxAbs TriggerWidth(パルス幅露光)モードにお いて、センサー露光とセンサー読み出しの 最大オーバーラップ時間を実数値で設定 します。(単位:usec)

Interface Type: IFloat

ExposureOverlapTimeMaxRaw TriggerWidth(パルス幅露光)モードにお いて、センサー露光とセンサー読み出しの 最大オーバーラップ時間をraw値で設定 します。

Interface Type: IInteger

AcquisitionFrameRateEnable カメラのフレームレート指定機能を有効

化します。

Interface Type: IBoolean

AcquisitionFrameRateAbs フレームレートを指定します。1秒間に取

得する画像枚数を実数で指定することが できます。

Interface Type: IFloat フレーム

レート設定

ResultingFrameRateAbs (読取専用パラメーター)

現在のAOI、露光時間、バンド幅設定にお

ける最大フレームレートを示します。フレ

(31)

ームレートは実数で表され、1秒間に取り 込むことができるフレーム数

(frames/sec)を意味します。

Interface Type: IFloat

AcquisitionStatusSelector AcquisitionStatusで読み取る内部的な状 態を指定します。

Enum Value: FrameTriggerWait Interface Type: IEnumeration 取込状態

感知設定

AcquisitionStatus (読取専用パラメーター)

AcquisitionStatusSelectorで選択した内 部的な状態を示します(Trueまたは False)。

Interface Type: IBoolean

5.5 Digital I/O Controls

カテゴリー パラメーター (Node Name) 説明

LineSelector 使用するI/Oポートの入出力ラインを選択

します。

Enum Value: Line1, Out1 Interface Type: IEnumeration

LineMode カメラの物理ライン(入力または出力)を

制御するために使用されます。ラインが入 力と出力のどちらのモードも対応してい る場合、電気的な競合を避けるためデフォ ルトでは入力が選択されています。

Enum Value: Input, Output Interface Type: IEnumeration

LineSource 選択されたラインがOutput設定の場合、

カメラ内部で生成される信号(ソースとな る信号)を指定します。

Enum Value: ExposureActive, FrameTriggerWait, TimerActive, UserOutput Interface Type: IEnumeration I/Oポート設

LineInverter 選択された入力または出力ラインの信号

を極性反転させる場合に使用します。

Interface Type: IBoolean

(32)

LineDebouncerTimeAbs 選択された入力ラインのDebouncer時間

(無効時間)を設定します。(単位:usec)

入力信号のパルス幅が設定された時間以 下の場合は無視されます。

Interface Type: IFloat

LineStatus (読取専用パラメーター)

選択された入力ラインの現在の論理状態 を示します。

Interface Type: IBoolean

LineStatusAll (読取専用パラメーター)

使用可能なすべての入力ラインの現在の 論理状態を示します。

Interface Type: IInteger

UserOutputSelector ユーザ定義可能な出力信号を選択します。

Enum Value: UserOutput1 Interface Type: IEnumeration

UserOutputValue ユーザ定義出力信号の状態を指定します。

Interface Type: IBoolean

UserOutputValueAll すべてのユーザ定義出力信号の状態を一

度に指定します。

Interface Type: IInteger

5.6 Counter and Timer Controls

カテゴリー パラメーター (Node Name) 説明

TimerDelayTimebaseAbs タイマー遅れ時間の設定において、raw値

(TimerDelayRaw)に対する乗数(time base値)を実数で指定します。(単位:

usec)

Interface Type: IFloat

TimerDurationTimebaseAbs タイマー持続時間の設定において、raw値

(TimerDurationRaw)に対する乗数

(time base値)を実数で指定します。(単 位:usec)

Interface Type: IFloat タイマーモー

ド設定

TimerSelector タイマー設定を選択します。

(33)

Enum Value: Timer1

Interface Type: IEnumeration

TimerDelayAbs タイマー遅れ時間を実数で指定します。

(単位:usec)

Interface Type: IFloat

TimerDelayRaw タイマー遅れ時間のraw値を整数で指定

します。実際のタイマー遅れ時間は、

TimerDelayRawと

TimerDelayTimeBaseAbsの積になりま す。

Interface Type: IInteger

TimerDurationAbs タイマー持続時間を実数で指定します。

(単位:usec)

Interface Type: IFloat

TimerDurationRaw タイマー持続時間のraw値を整数で指定

します。実際のタイマー持続時間は、

TimerDurationRawと

TimerDurationTimeBaseAbsの積になり ます。

Interface Type: IInteger

TimerTriggerSource タイマーの開始トリガ信号として使用さ

れるカメラ内部信号を指定します。

Enum Value: ExposureStart Interface Type: IEnumeration

TimerTriggerActivation タイマー開始信号の極性を指定します。

Enum Value: RisingEdge Interface Type: IEnumeration

CounterSelector カウンターを選択します。

Enum Value: Counter1, Counter2 Interface Type: IEnumeration

CounterEventSource カウンターをインクリメントするソース

となるイベントを指定します。

Enum Value: FrameStart Interface Type: IEnumeration カウンター設

CounterResetSource カウンターをリセットするソースを指定

します。

Enum Value: Off, Software, Line1 Interface Type: IEnumeration

(34)

CounterReset カウンターのリセットを即座に実行しま す。リセット後、カウンターはすぐに次の カウントを開始します。

Interface Type: ICommand

5.7 LUT Controls

カテゴリー パラメーター (Node Name) 説明

LUTSelector ルックアップテーブルを設定します。

Enum Value: Luminance Interface Type: IEnumeration

LUTEnable ルックアップテーブルを有効化します。

Interface Type: IBoolean

LUTIndex アクセスするルックアップテーブルの要

素を指定します。LUT配列のインデックス 指定に使用します。

Interface Type: IInteger LUT設定

LUTValue ルックアップテーブル要素の値を指定し

ます。LUTIndexで指定した要素に反映さ れます。

Interface Type: IInteger

5.8 Transport Layer

カテゴリー パラメーター (Node Name) 説明

PayloadSize ペイロードサイズ(単位:バイト)。ペイ

ロードは画像データとCHUNKデータ

(AOIサイズなどの付加情報)であり、パ ケットのヘッダー以外の情報を指します。

Interface Type: IInteger データ伝送設

GevVersionMajor (読取専用パラメーター)

カメラがサポートするGigE Vision規格の メジャーバージョンを示します。

Interface Type: IInteger

(35)

GevVersionMinor (読取専用パラメーター)

カメラがサポートするGigE Vision規格の マイナーバージョンを示します。

Interface Type: IInteger GevDeviceModeIsBigEndian (読取専用パラメーター)

ブートストラップレジスターのエンディ アンを示します。'True'の場合、ビッグエ ンディアンになります。

Interface Type: IBoolean GevDeviceModeCharacterSet (読取専用パラメーター)

キャラクタセットの値です。 1の時、UTF-8 を意味します。

Interface Type: IInteger

GevInterfaceSelector 設定を反映するネットワークインターフ

ェースを選択します。

Enum Value: NetworkInterface0 Interface Type: IEnumeration

GevMACAddress (読取専用パラメーター)

選択したネットワークインターフェース のMACアドレスを示します。

Interface Type: IInteger GevSupportedIPConfigurationLL

A

(読取専用パラメーター)

選択したネットワークインターフェース がLLA(自動的にIPアドレスを取得する機 能)に対応しているかを示します。

Interface Type: IBoolean GevSupportedIPConfigurationD

HCP

(読取専用パラメーター)

選択したネットワークインターフェース がDHCP方式によるIPアドレス設定機能 に対応しているかを示します。

Interface Type: IBoolean GevSupportedIPConfigurationPe

rsistentIP

(読取専用パラメーター)

選択したネットワークインターフェース が固定IPアドレス設定に対応しているか を示します。

Interface Type: IBoolean

GevCurrentIPConfiguration 選択したネットワークインターフェース

のIP設定(固定IPアドレス、DHCP、また

(36)

はLLA)を設定します。

Interface Type: IInteger

GevCurrentIPAddress (読取専用パラメーター)

選択したネットワークインターフェース の現在のIPアドレスを示します。

Interface Type: IInteger

GevCurrentSubnetMask (読取専用パラメーター)

選択したネットワークインターフェース の現在のサブネットマスクを示します。

Interface Type: IInteger GevCurrentDefaultGateway (読取専用パラメーター)

選択したネットワークインターフェース の現在のデフォルトゲートウェイを示し ます。

Interface Type: IInteger

GevPersistentIPAddress 選択したネットワークインターフェース

が固定IPアドレス設定に対応しており、か つ有効化されている場合、固定IPアドレス を設定します。

Interface Type: IInteger

GevPersistentSubnetMask 選択したネットワークインターフェース

が固定IPアドレス設定に対応しており、か つ有効化されている場合、固定サブネット マスクを設定します。

Interface Type: IInteger

GevPersistentDefaultGateway 選択したネットワークインターフェース が固定IPアドレス設定に対応しており、か つ有効化されている場合、固定デフォルト ゲートウェイを設定します。

Interface Type: IInteger

GevLinkSpeed (読取専用パラメーター)

選択したネットワークインターフェース の接続速度(Mbps)を示します。

Interface Type: IInteger

GevFirstURL (読取専用パラメーター)

XML形式のデバイス記述ファイルへの URLを示します。

(37)

Interface Type: IString

GevSecondURL (読取専用パラメーター)

XML形式のデバイス記述ファイルへの

URL(候補2)を示します。

Interface Type: IString

GevNumberOfInterfaces (読取専用パラメーター)

デバイス上のネットワークインターフェ ースの数を示します。

Interface Type: IInteger

GevMessageChannelCount (読取専用パラメーター)

デバイス上でサポートされているメッセ ージチャンネルの数を示します。

Interface Type: IInteger

GevStreamChannelCount (読取専用パラメーター)

デバイス上でサポートされているストリ ームチャンネルの数を示します。

Interface Type: IInteger GevSupportedOptionalComman

dsEVENTDATA

(読取専用パラメーター)

EVENTDATA_CMDとEVENTDATA_ACK がサポートされているかを示します。

Interface Type: IBoolean GevSupportedOptionalComman

dsEVENT

(読取専用パラメーター)

EVENT_CMDとEVENT_ACKがサポートさ れているかを示します。

Interface Type: IBoolean GevSupportedOptionalComman

dsPACKETRESEND

(読取専用パラメーター)

PACKETRESEND_CMDがサポートされて いるかを示します。

Interface Type: IBoolean GevSupportedOptionalComman

dsWRITEMEM

(読取専用パラメーター)

WRITEMEM_CMDとWRITEMEM_ACKが サポートされているかを示します。

Interface Type: IBoolean GevSupportedOptionalComman

dsConcatenation

(読取専用パラメーター)

単一メッセージでの複数操作機能がサポ ートされているかを示します。

Interface Type: IBoolean

(38)

GevHeartbeatTimeout (読取専用パラメーター)

ハートビートタイムアウト時間を示しま す。(単位:msec)

Interface Type: IInteger GevTimestampTickFrequency (読取専用パラメーター)

1秒間のタイムスタンプクロック数(tick)

を示します。

Interface Type: IInteger GevTimestampControlLatchRese

t

保持されているタイムスタンプコントロ ール値をリセットします。

Interface Type: ICommand

GevCCP (読取専用パラメーター)

コントロールチャンネル優先機能を設定 します。

Enum Value: Control

Interface Type: IEnumeration

GevSCPInterfaceIndex (読取専用パラメーター)

使用するネットワークインターフェース のインデックスを設定します。

Interface Type: IInteger

GevSCPHostPort (読取専用パラメーター)

デバイスがデータを送るポートを設定し ます。

Interface Type: IInteger

GevSCPSDoNotFragment 伝送パケットのサイズがNICの許容値を

超えている場合に、パケットを一切伝送し ない設定を有効化/無効化します。有効化し た場合には、NICの許容値の調整を必ず行 う必要があります。無効化した場合、デー タパケットは縮小されて到達し、リセンド 要求を頻発することで伝送を確立しよう とする挙動になります。

Interface Type: IBoolean

GevSCPSBigEndian (読取専用パラメーター)

ビッグエンディアン設定を示します。

Interface Type: IBoolean

GevSCPSPacketSize 選択したストリームチャンネルから伝送

するデータのパケットサイズを設定しま

(39)

す(単位:Byte)。パケットの先頭と終端 部分は除きます。(パケットサイズは画像 1つを等分割したサイズである必要はない ため、最後のパケットはここで設定したサ イズよりも小さくなる可能性がありま す。)

Interface Type: IInteger GevSCPD

(Inter-Packet Delay)

選択したストリームチャンネルから伝送 される各パケット間の遅れ時間を設定し ます。(単位:tick)

Interface Type: IInteger GevSCFTD

(Frame Transmission Delay)

選択したストリームチャンネルから伝送 されるパケットの伝送開始までの遅れ時 間を設定します。通常伝送が開始される時 点から実際に開始するまでの時間を設定 します。

Interface Type: IInteger GevSCBWR

(Bandwidth Reserve)

カメラとホストPC間において、パケット 再送およびカメラ設定用コントロールデ ータのために確保するイーサネットバン ド幅を設定します。パラメーターは BandWidth Assignedパラメーターに対す る割合(%)で表されます。例えば、

BandWidth Assignedパラメーターが

30MB/secであり、この値を5%に設定し

た場合、1.5MB/secの帯域が確保されます。

Interface Type: IInteger GevSCBWRA

(Bandwidth Reserve Accumulation)

BandWidth Reserveパラメーターへの積 算値を設定します。この値は、異常時に突 発的にパケット再送要求が急増した場合 に、確保されている帯域を広げるために使 用されます。

Interface Type: IInteger GevSCBWA

(Bandwidth Assigned)

(読取専用パラメーター)

カメラが画像データ、Chunkデータ、パケ ット再送およびコントロールデータを伝 送するために使用するバンド幅を示しま す(単位:Byte/sec)。この値はPacket Size とInter-Packet Delayの設定値から決定さ れます。

(40)

Interface Type: IInteger GevSCDMT

(Device Max Throughput)

(読取専用パラメーター)

カメラが現在の設定において理想的な状 態(バンド幅の制限がなく、パケット再送 も発生しない状態)を仮定した場合に生成 するデータ量を示します。(単位:Byte/sec)

Interface Type: IInteger GevSCDCT

(Device Current Throughput)

(読取専用パラメーター)

カメラが現在のAOI設定、Chunk設定、

およびピクセルフォーマット設定におい て、画像データとChunkデータを伝送す るために使用する実際のバンド幅を示し ます。(単位:Byte/sec)

Interface Type: IInteger GevSCFJM

(Frame Jitter Max)

(読取専用パラメーター)

BandWidth Reserve Accumulationパラ メーターが高い値に設定されている場合、

データ再送要求が多発した場合であって もカメラは対応することができます。この 場合、次の画像データ伝送の開始を遅らせ る可能性があります。Frame Jitter Maxパ ラメーターは、次の画像伝送が開始するま での許容遅れ時間を設定します。(単位:

tick)

Interface Type: IInteger

5.9 Configuration Sets

カテゴリー パラメーター (Node Name) 説明 カメラ設定

選択/保存/読 込

UserSetSelector 読み込み、保存、または設定するための設

定セット(Configuration Set)を選択しま す。以下の選択肢があります。

Default : 工場出荷時の初期設定 User Set : ユーザ設定

デフォルト設定が読み込まれると、デバイ スは工場出荷時の状態になり、連続取込動 作を行うことができます。Default User Setは読取専用パラメーターで、修正する ことはできません。

(41)

Enum Value: Default, UserSet1 ~ 3 Interface Type: IEnumeration

UserSetLoad 選択された設定セット(Configuration

Set)をカメラ内部の保存メモリから読み 込んで一時メモリに設定し、有効化しま す。

Interface Type: ICommand

UserSetSave 選択されたユーザ設定セットに、現在のパ

ラメーター設定を保存します。選択された ユーザ設定セットに対応するカメラ内部 の保存メモリに設定が書き込まれます。

Interface Type: ICommand

UserSetDefaultSelector カメラ起動時に読み込む設定セットを指

定します。指定されたセットは、カメラ起 動時およびリセット時に読み込まれます。

Enum Value: Default, UserSet1 ~ 3 Interface Type: IEnumeration

DefaultSetSelector どの工場出荷設定をデフォルトセットに

使用するか選択します。

Enum Value: Standard, HighGain, AutoFunctions Interface Type: IEnumeration

5.10 Auto Function Parameters

カテゴリー パラメーター (Node Name) 説明

AutoTargetValue ゲインおよび露光時間の自動調整機能に

おいて、ターゲットとなる平均輝度値を設 定します。

Interface Type: IInteger

AutoGainRawLowerLimit Auto Gain (Raw)パラメーターの下限値を 示します。

Interface Type: IInteger 自動調整機能

設定

AutoGainRawUpperLimit Auto Gain (Raw)パラメーターの上限値を 示します。

(42)

Interface Type: IInteger AutoExposureTimeAbsLowerLim

it

Auto Exposure Time (Abs)パラメーター の下限値を示します。

Interface Type: IFloat AutoExposureTimeAbsUpperLim

it

Auto Exposure Time (Abs)パラメーター の上限値を示します。

Interface Type: IFloat

AutoFunctionProfile ゲインおよび露光時間を自動かつ同時に

調整する方法を選択します。

Enum Value: GainMinimum, ExposureMinimum Interface Type: IEnumeration サブツリー:Auto Function AOIs

AutoFunctionAOISelector 自動調整機能のAOIを選択します。

Enum Value: AOI1, AOI2 Interface Type: IEnumeration

AutoFunctionAOIWidth 自動調整機能のAOIの幅を設定します。

(単位:ピクセル)

Interface Type: IInteger

AutoFunctionAOIHeight 自動調整機能のAOIの高さを設定します。

(単位:ピクセル)

Interface Type: IInteger

AutoFunctionAOIOffsetX 自動調整機能のAOIを設定するための開

始列を指定します。(単位:ピクセル)

Interface Type: IInteger 自動調整機能

用AOI設定

AutoFunctionAOIOffsetY 自動調整機能のAOIを設定するための開

始行を指定します。(単位:ピクセル)

Interface Type: IInteger

5.11 Device Information

カテゴリー パラメーター (Node Name) 説明 カメラ情報取

DeviceVendorName (読取専用パラメーター)

デバイスのベンダー名をテキスト表記し ます。

(43)

Interface Type: IString

DeviceModelName (読取専用パラメーター)

デバイスのモデル名をテキスト表記しま す。

Interface Type: IString

DeviceManufacturerInfo (読取専用パラメーター)

デバイスのベンダーが示すカメラの追加 情報を示します。

Interface Type: IString

DeviceVersion (読取専用パラメーター)

デバイスのバージョンを示します。

Interface Type: IString

DeviceFirmwareVersion (読取専用パラメーター)

デバイスのファームウエアおよびソフト ウエアのバージョンを示します。

Interface Type: IString

DeviceID (読取専用パラメーター)

シリアル番号やGUIDのようなデバイス固 有の情報を示します。

Interface Type: IString

DeviceUserID 読み込みおよび書き込み可能な、ユーザ指

定のデバイス名です。

Interface Type: IString

DeviceScanType (読取専用パラメーター)

デバイスに搭載されているセンサーに適 用可能なスキャンタイプを示します。

Enum Value: AreaScan Interface Type: IEnumeration

SensorWidth (読取専用パラメーター)

カメラに搭載されているセンサーの実際 の幅を整数で示します。(単位:ピクセル)

Interface Type: IInteger

SensorHeight (読取専用パラメーター)

カメラに搭載されているセンサーの実際 の高さを整数で示します。(単位:ピクセ ル)

Interface Type: IInteger

(44)

WidthMax (読取専用パラメーター)

実際に取得可能な画像の最大幅を整数で 示します。(単位:ピクセル)

Interface Type: IInteger

HeightMax (読取専用パラメーター)

実際に取得可能な画像の最大高さを整数 で示します。(単位:ピクセル)

Interface Type: IInteger

5.12 Chunk Data Streams

カテゴリー パラメーター (Node Name) 説明

ChunkModeActive カメラのChunkモードを有効化/無効化し

ます。

Interface Type: IBoolean

ChunkSelector 有効化するChunkを選択します。

Enum Value:

Image, OffsetX, OffsetY, Width, Height, PixelFormat,

DynamicRangeMax,

DynamicRangeMin, Timestamp, LineStatusAll, Framecounter, Triggerinputcounter,

FrameTriggerIgnoredCounter, FrameTriggerCounter,

FramesPerTriggerCounter, PayloadCRC16

Interface Type: IEnumeration Chunkデー

タ設定

ChunkEnable 選択されたChunkデータを伝送データに

埋め込むかどうかを設定します。

Interface Type: IBoolean

5.13 Events Generation

カテゴリー パラメーター (Node Name) 説明

イベント設定 EventSelector 有効化するイベントのタイプを選択しま す。

(45)

Enum Value: ExposureEnd,

FrameStartOverTrigger, EventOverrun

Interface Type: IEnumeration

EventNotification 選択されたイベントに対して、ホストアプ

リケーションに送られる通知タイプを設 定します。

Enum Value: Off, GenICamEvent Interface Type: IEnumeration

5.14 Remove Parameter Limits

カテゴリー パラメーター (Node Name) 説明

ParameterSelector 制限解除機能を適用するパラメーターを

選択します。

Enum Value: Gain

Interface Type: IEnumeration パラメーター

制限設定

RemoveLimits 選択されたパラメーターの工場出荷時の

制限値をなくします。これが適用されたパ ラメーターは、設定可能な制限範囲が拡張 されます。この範囲は技術的な制約値まで 広げられますが、画像の品質が劣化してし まう点に注意してください。

Interface Type: IBoolean

参照

関連したドキュメント

《点検・保守》 警告 ●本装置の入出力端子部に金属棒や指などを差し込まないでくださ い。 (感電の恐れがあります。

・ServerView Virtual-IO Manager で設定した仮想 MAC アドレスが OneCommand Manager

iRMC Web インターフェースから、iRMC ファームウェアの設定情報を

設定保存時の iRMC 版数と復元時の iRMC 版数が異なる条件で

設定保存時の iRMC 版数と復元時の iRMC 版数が異なる条件で

(1)保育料

サーバブレードの保守交換等により、iRMC Web インターフェースで設定保存時の iRMC 版数と復元時の iRMC 版数が異なる条

サーバブレードの保守交換等により、iRMC Web インターフェースで設定保存時の iRMC 版数と復元時の iRMC 版数が異なる条