Line Timeout#
これは、タイムアウトが発生するまでに取得された不完全なフレーム(部分フレーム)をホストコンピュータに送信する場合に便利です。
この機能は、GigEインターフェースを搭載した Basler racer 2 S カメラでのみ使用できます。
機能を使用する#
仕組み#
Line Timeout機能が有効になっており、 LineTimeout パラメータが設定されている場合、最後のライン トリガーが発行されるとすぐにライン タイムアウトのカウントが開始されます。次のライン トリガーが、 LineTimeout パラメータで設定された時間内に受信されない場合、次の現象が発生します。
- コマンドが実行された時点までに取得されたラインのみが配信されます。つまり、部分フレームとしてホストコンピュータに転送されます。
- イベントが有効になっている場合は、ライン タイムアウト イベントが生成されます。
例:テスト対象物を搬送するコンベアベルトが予期せぬ停止をすると、ライン タイムアウトの期限が切れるため、それ以上ライン トリガーを受信しなくなり、画像取得プロセスが中断されます。部分フレームは、さらなる処理のためにホストコンピュータに送信されます。
Line Timeout の設定#
- パラメーターを
BslLineTimeoutEnableパラメータをtrue. - パラメーターを
BslLineTimeoutパラメータを希望の時間(μs)に設定します。
を設定する際、 BslLineTimeout パラメータを使用する際は、以下を考慮してください。
- の値は、 曝露時間 よりも小さくする必要があります。
BslLineTimeoutパラメータ。 - 搬送装置の速度 (コンベアベルトなど):
BslLineTimeoutパラメータの値は十分な大きさに設定する必要があります。搬送装置の速度が変動する場合(遅いときや速いときがある場合など)、LineTimeoutパラメータの値が、搬送装置にかかる最大時間よりも大きいことを確認してください。 - 定期的な停止 搬送装置の動作に影響します。
LineTimeoutパラメータの値は、定期的な停止にかかる最大時間よりも大きくする必要があります。
サンプルコード#
/* 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);
pylon Viewerを使用して、パラメーターを簡単に設定することもできます。