コンテンツにスキップ
ステージングサーバー
開発サーバー

Line Timeout#

のLine Timeout カメラの機能を使用すると、設定した最大時間(マイクロ秒単位)内にライントリガー信号が受信されない場合にフレーム取得を停止することができます。

これは、タイムアウトが発生するまでに取得した不完全なフレーム(部分的なフレーム)をホストコンピュータに送信したい場合に便利です。

この機能は、GigEインターフェースを搭載したBasler racer 2 Sカメラでのみ利用可能です。

機能を使用する#

仕組み#

もしLine Timeout 機能が有効になり、 LineTimeout パラメータが設定されている場合、最後の行トリガーが発行されるとすぐに行タイムアウトのカウントが開始されます。次の行トリガーが設定された時間内に受信されない場合、 LineTimeout パラメータによっては、以下の現象が発生します。

  • コマンドが実行された時点までに取得された行のみが配信され、つまり部分フレームとしてホストコンピュータに送信されます。
  • 回線タイムアウトイベントが有効になっている場合、このイベントが生成されます。

例:試験対象物を搬送するコンベアベルトが予期せず停止すると、ラインタイムアウトが発生し、それ以降ライントリガーが受信されなくなるため、画像取得プロセスが中断されます。部分的なフレームは、さらなる処理のためにホストコンピュータに送信されます。

設定Line Timeout#

  1. パラメーターを BslLineTimeoutEnable パラメータを true.
  2. パラメーターを BslLineTimeout パラメータは、希望する時間(μs単位)を指定します。

設定時: BslLineTimeout パラメータは以下の点を考慮してください。

  • の価値 曝露時間 より小さくなるはずです BslLineTimeout パラメータ。
  • 輸送装置の速度 (例:コンベアベルト): BslLineTimeout パラメータは十分に大きくなければなりません。輸送装置の速度が変化する場合、たとえば、遅い場合と速い場合、 LineTimeout パラメータ値が搬送装置の最大所要時間よりも大きい。
  • 定期停車 輸送機器の役割を担う。 LineTimeout パラメータ値は、通常の停車にかかる最大時間よりも大きくする必要があります。

サンプルコード#

// Enable the Line Timeout feature
camera.BslLineTimeoutEnable.SetValue(true);
// Set the line timeout in microseconds
camera.BslLineTimeout.SetValue(1000000);
INodeMap& nodemap = camera.GetNodeMap();
// Enable the Line Timeout feature
CBooleanParameter(nodemap, "BslLineTimeoutEnable").SetValue(true);
// Set the line timeout in microseconds
CIntegerParameter(nodemap, "BslLineTimeout").SetValue(1000000);
// Enable the Line Timeout feature
camera.Parameters[PLCamera.BslLineTimeoutEnable].SetValue(true);
// Set the line timeout in microseconds
camera.Parameters[PLCamera.BslLineTimeout].SetValue(1000000);
/* Macro to check for errors */
#define CHECK(errc) if (GENAPI_E_OK != errc) printErrorAndExit(errc)
GENAPIC_RESULT errRes = GENAPI_E_OK;  /* Return value of pylon methods */
/* Enable the Line Timeout feature */
errRes = PylonDeviceSetBooleanFeature(hdev, "BslLineTimeoutEnable", 1);
CHECK(errRes);
/* Set the line timeout in microseconds */
errRes = PylonDeviceSetIntegerFeature(hdev, "BslLineTimeout", 1000000);
CHECK(errRes);
# Enable the Line Timeout feature
camera.BslLineTimeoutEnable.Value = True
# Set the line timeout in microseconds
camera.BslLineTimeout.Value = 1000000

pylon Viewerを使用して、パラメーターを簡単に設定することもできます。