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

Line Overload Status#

Line Overload Statusカメラ機能を使用すると、GPIOラインが過負荷(つまり、電力供給が不適切)になっているかどうかを判断できます。

機能を使用する#

Line Overloadの原因#

GPIOラインが出力ラインとして設定されている場合は、カメラのトピックで指定されている適切な出力信号電圧を印加する必要があります。カメラのトピックは、エリアスキャンカメラおよびラインスキャンカメラのセクションにあります。

適切な電圧を印加しない場合、ラインの過負荷が発生する可能性があります。カメラの絶対最大定格電圧を超えない限り、カメラは過負荷を検出し、次の項目を介して報告できます。 BslLineOverloadStatus パラメータ。

I/Oラインの過負荷ステータスの判別#

GPIOラインが過負荷になっているかどうかを確認するには、次の手順に従います。

  1. パラメーターを LineSelector parameter to the desired I/O line, e.g., Line1.
  2. の値を取得します。 BslLineOverloadStatus パラメータ。このパラメータは読み取り専用です。

値 false (0) は、GPIOラインが過負荷状態ではないことを示します。

値 true (1) は、GPIOラインが過負荷状態であることを示します。I/Oラインの設定を確認してください。

全I/Oラインの過負荷ステータスの判別#

1回の操作ですべてのI/Oラインの過負荷ステータスを確認するには、次の項目を読み取ります。 BslLineOverloadStatusAll パラメータで設定できます。このパラメータは64ビット値として報告されます。

情報

イメージ BslLineOverloadStatusAll パラメータは、pylon Viewerの機能ツリーからではなく、pylon API経由でのみ使用できます。

値内の特定のビットは、I/Oラインに関連付けられています。各ビットは、関連するラインのステータスを示します。

  • ビットが0の場合、関連付けられたラインは過負荷になりません。
  • ビットが1の場合、関連付けられたラインは過負荷になります。I/Oラインの設定を確認してください。

ビットとラインの関連付けは次のとおりです。

  • ビット0はLine1のステータスを示します。
  • ビット1はLine2のステータスを示します。
  • ビット2はLine3のステータスを示します。

Example:すべてのラインが高 = 0b111

情報

バッファオペレータの Line Inverter 機能が有効になっている場合、カメラは反転します。 BslLineOverloadStatusAll パラメータ値。すべての 0 ビットが 1 に変わり、その逆も同様です。

サンプルコード#

ace 2、boost、および dart R カメラ#
// Select a line
camera.LineSelector.SetValue(LineSelector_Line1);
// Determine the status of the selected line
bool status = camera.BslLineOverloadStatus.GetValue();
// Get the line overload status of all I/O lines
// Because the GenICam interface does not support
// 32-bit words, the line status is reported as a 64-bit value
int64_t lineOverloadStatusAll = camera.BslLineOverloadStatusAll.GetValue();
INodeMap& nodemap = camera.GetNodeMap();
// Select a line
CEnumParameter(nodemap, "LineSelector").SetValue("Line1");
// Determine the status of the selected line
bool status = CBooleanParameter(nodemap, "BslLineOverloadStatus").GetValue();
// Get the line overload status of all I/O lines
// Because the GenICam interface does not support
// 32-bit words, the line status is reported as a 64-bit value
int64_t lineOverloadStatusAll = CIntegerParameter(nodemap, "BslLineOverloadStatusAll").GetValue();
// Select a line
camera.Parameters[PLCamera.LineSelector].SetValue(PLCamera.LineSelector.Line1);
// Determine the status of the selected line
bool status = camera.Parameters[PLCamera.BslLineOverloadStatus].GetValue();
// Get the line overload status of all I/O lines
// Because the GenICam interface does not support
// 32-bit words, the line status is reported as a 64-bit value
Int64 lineOverloadStatusAll = camera.Parameters[PLCamera.BslLineOverloadStatusAll].GetValue();
/* 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 */
_Bool status = false;
int64_t lineOverloadStatusAll = 0;
/* Select a line */
errRes = PylonDeviceFeatureFromString(hdev, "LineSelector", "Line1");
CHECK(errRes);
/* Determine the status of the selected line */
errRes = PylonDeviceGetBooleanFeature(hdev, "BslLineOverloadStatus", &status);
CHECK(errRes);
/* Get the line overload status of all I/O lines */
/* Because the GenICam interface does not support */
/* 32-bit words, the line status is reported as a 64-bit value */
errRes = PylonDeviceGetIntegerFeature(hdev, "BslLineOverloadStatusAll", &lineOverloadStatusAll);
CHECK(errRes);
# Select a line
camera.LineSelector.Value = "Line1"
# Determine the status of the selected line
status = camera.BslLineOverloadStatus.Value
# Get the line overload status of all I/O lines
# Because the GenICam interface does not support
# 32-bit words, the line status is reported as a 64-bit value
lineOverloadStatusAll = camera.BslLineOverloadStatusAll.Value
その他のカメラ#
// Select a line
camera.LineSelector.SetValue(LineSelector_Line1);
// Determine the status of the selected line
bool status = camera.LineOverloadStatus.GetValue();
// Get the line overload status of all I/O lines
// Because the GenICam interface does not support
// 32-bit words, the line status is reported as a 64-bit value
int64_t lineOverloadStatusAll = camera.LineOverloadStatusAll.GetValue();
INodeMap& nodemap = camera.GetNodeMap();
// Select a line
CEnumParameter(nodemap, "LineSelector").SetValue("Line1");
// Determine the status of the selected line
bool status = CBooleanParameter(nodemap, "LineOverloadStatus").GetValue();
// Get the line overload status of all I/O lines
// Because the GenICam interface does not support
// 32-bit words, the line status is reported as a 64-bit value
int64_t lineOverloadStatusAll = CIntegerParameter(nodemap, "LineOverloadStatusAll").GetValue();
// Select a line
camera.Parameters[PLCamera.LineSelector].SetValue(PLCamera.LineSelector.Line1);
// Determine the status of the selected line
bool status = camera.Parameters[PLCamera.LineOverloadStatus].GetValue();
// Get the line overload status of all I/O lines
// Because the GenICam interface does not support
// 32-bit words, the line status is reported as a 64-bit value
Int64 lineOverloadStatusAll = camera.Parameters[PLCamera.LineOverloadStatusAll].GetValue();
/* 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 */
_Bool status = false;
int64_t lineOverloadStatusAll = 0;
/* Select a line */
errRes = PylonDeviceFeatureFromString(hdev, "LineSelector", "Line1");
CHECK(errRes);
/* Determine the status of the selected line */
errRes = PylonDeviceGetBooleanFeature(hdev, "LineOverloadStatus", &status);
CHECK(errRes);
/* Get the line overload status of all I/O lines */
/* Because the GenICam interface does not support */
/* 32-bit words, the line status is reported as a 64-bit value */
errRes = PylonDeviceGetIntegerFeature(hdev, "LineOverloadStatusAll", &lineOverloadStatusAll);
CHECK(errRes);
# Select a line
camera.LineSelector.Value = "Line1"
# Determine the status of the selected line
status = camera.LineOverloadStatus.Value
# Get the line overload status of all I/O lines
# Because the GenICam interface does not support
# 32-bit words, the line status is reported as a 64-bit value
lineOverloadStatusAll = camera.LineOverloadStatusAll.Value

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