産業用カメラに関するFAQ/BGシリーズカメラでTeliGevViewerに画像が表示さ...

BGシリーズカメラでTeliGevViewerに画像が表示されない(No.116)

BGシリーズカメラではカメラの性能を最大限に活かせるよう、工場出荷時にはカメラからの画像データ出力にかかる時間をできる限り短くできるパラメータを設定しています。

PCによっては、工場出荷時の設定のままだと一度に届く大量の画像データを処理しきれず、TeliGevViewerなどのViewerに画像を表示できない場合があります。

画像が表示されない場合は、カメラのGevSCPDノード(GigE Vision Stream Channel Packet Delay)の値を状況が改善するよう少し大きな値に変更してください。ただし、GevSCPDは画像パケット同士の間隔を伸び縮みさせるパラメータなので、その値を大きくしていくといつかはカメラに設定したフレームレートを実現するために必要な転送期間を超過し、結果としてフレームレートの低下をもたらします。ご注意ください。

カメラ機種によっては撮像中にGevSCPDノードへ値を書き込んでも画像転送処理に反映されない場合があります。この場合は撮像を一旦停止してGevSCPDノードへ値を書き込んでください。

【GevSCPDについて】
カメラから送信される画像データは複数のパケットに分けて出力されます。パケットとパケットの間の時間間隔はGevSCPDノードの値で決まります。
GevSCPDノードの値は画像データのパケットとパケットの間の時間をカメラのタイムスタンプカウンタの単位で表した値となります。タイムスタンプカウンタの周波数はGevTimestampTickFrequencyノードで取得できます。

【SCPD設定値計算例】
タイムスタンプカウンタ周波数が62.5MHz、パケットサイズが1500Byteのときに、VGA Mono8フォーマットの画像データを125fpsで送れるGevSCPDを計算してみます。(この例では画像データのリーダとトレーラは無視しています。)

1フレームの画像データは640×480×1=307,200Byteです。
パケットサイズが1500Byteなので画像データは205パケットに分割されて送信されます。
Ethernetの実力転送速度を900Mbpsとすると、画像データの転送には307200*8/900/1024/1024 = 2.604msecかかることになります。
125fpsのフレームレートでは1フレームを8msecで転送するので、8 - 2.604 = 5.396msecが画像データを送っていない期間になります。
よって、GevSCPDに0.005396/(205 - 1)*62,500,000 = 1653より小さい値を設定すれば125fpsを維持したままパケットとパケットの間隔を広げることができることになります。
ここで紹介した計算方法は概算の計算方法ですので、実際のSCPD値を計算するにあたっては、目標のフレームレートに対して余裕のあるSCPD値を採用してください。

戻る

このFAQは、お役にたちましたか?

今後のFAQ作成の参考にさせていただくため、FAQについてのご意見等をご入力ください。(800文字以内)
下記にご記入いただいても、回答できませんのでご了承下さい。