10GigEのベストプラクティス:#1単一カメラシステムの設定

ホストシステムの構成、ケーブル配線、カメラ設定に関するベストプラクティス。

10GigEの使い方やちょっとしたヒントを得るためにも、このペーパーでは、単一カメラ10GigEビジョンシステムのスムーズな設定と、最適性能を保証するベストプラクティスを紹介しています。 ホストシステムの構成、ケーブル配線、カメラ設定に関するベストプラクティスをリストアップします。

ホストシステム構成設定のベストプラクティス

CPU

現代のPCでは、イーサネットパケットを画像データに再組み立てするために、CPUの使用可能な処理能力のほんの一部のみを必要としています。 しかし、ほとんどのビジョンアプリケーションは、画像データをキャプチャして、保存する以上の能力を有しています。 リアルタイムで画像データを分析するのに十分な処理能力を確保するため、FLIRは、Intel® Core™ i7 CPU以上を推奨しています。

マス・ストレージ

Oryxカメラからディスクにストリームするには、10GigEインターフェイスに十分に活用できる大容量記憶装置が必要です。 一般的なSATA 3.0大容量記憶装置インターフェイスの最大帯域幅は、6ギガビット/秒です。 SATAハードディスクドライブまたはソリッドステートドライブ(SSD)を使用して、全帯域幅でストリーミングするには、2つ以上のSATA 3.0ディスクのRAIDアレイが必要です。

ほとんどの新しいマザーボードは、M.2 SSDをサポートしています。 M.2規格では、理論上、10GigEカメラに対応するための十分な帯域幅を提供できるPCIe 2.0 x4またはPCIe 3.0 x4インターフェイスが使用されています。 シーケンシャル書き込み速度は、フラッシュメモリ技術によって依然として制限されています。 2018年初め現在、書き込み速度が最も速いM.2 SSDは、Samsung NVMe SM951シリーズで、5.2ギガビット/秒のシーケンシャル書き込み速度を実現しています。

 

メモリ帯域

10ギガビット/秒は大量データです。 10GigEカメラの信頼性の高い動作には、十分なメモリ帯域幅が不可欠です。 デュアルチャネルメモリ構成により、着信パケットを受信し、画像に組み立て、ビジョンアプリケーションでそれらを操作するために十分な帯域幅が確保されます。

 図1 デュアルチャネルメモリは、シングルチャネル構成よりも優れた性能を発揮する

1つの大きなDIMMではなく、2つの小さなDIMMを使用して、必要なメモリ容量を合計します。 デュアルチャネル構成でシステムメモリを取り付けることにより、メモリ帯域幅は2倍になります。 メモリチャネルはマザーボード上で色分けされているため、セットアップが簡単です。 デュアルチャネル構成で使用されるメモリモジュールの速度と容量は、一致する必要があります。 多くのメモリメーカーが、デュアルチャネルキットを販売しています。

システムは、自動的にデュアルチャネルメモリ構成を検出して、有効にする必要があります。 ただし、必要に応じて、これを確認して、BIOSで有効にすることをお勧めします。

図2 有効なデュアルチャネルメモリ構成の例 。

トリプルおよびクワッドチャネル構成をサポートするシステムも利用できます。 これらのシステムのメモリ帯域幅が増えても10GigEカメラのパフォーマンスは向上しませんが、メモリとCPUを集中的に使用するビジョン処理アプリケーションのスピードを向上させる可能性があります。 現在のDDR4メモリ規格は、古い技術よりも大きなメモリ帯域幅を提供するため、推奨されます。

 

SDK

Spinnakerの最新バージョンを使用することをお勧めします。これにより、システムに常に最新の機能とパフォーマンスが強化されます。

ストリームのデフォルトバッファ数を増やすと、より多くのソフトウェアバッファが作成されます。 これにより、システムのパフォーマンスが向上し、システムメモリが消費されます。 バッファサイズは画像サイズに比例するため、高解像度カメラ用のストリームバッファには、より多くのメモリが必要です。

 

PCIeスロット構成設定

ネットワークインターフェイスカード(NIC)が取り付けられているPCIeスロットは、システムのパフォーマンスに大きな影響を与えます。 ベストプラクティスは、CPUに最も近いPCIeスロットに10GigE NICを接続することです。 すべてのマザーボードが、すべてのPCIeスロットにフル帯域幅を提供できるわけではありません。 PCIeスロットは、USBポートまたは他のPCIeスロットなどの他の周辺機器と帯域幅を共有する場合があります。 どのPCIeスロットがフル帯域幅で動作するかを確認するには、マザーボードのユーザーガイドの詳細仕様を参照してください。

図3 ATXフォームファクタマザーボード上のPCIe、メモリ、ストレージコネクタの一般的な位置。

 

NIC設定

ジャンボフレームは、画像に再構築必要があるパケット数を減らすことによって、CPU負荷を軽減します。 10GigEカメラを接続するために使用されるNICおよびスイッチは、9Kのジャンボフレームをサポートする必要があります。

消費者製品に10GBASE-Tが採用されるにつれて、幅広いNICが利用可能になっています。 サードパーティのテストによると、すべての10GBASE-T NICが10GigEのフル帯域幅を提供できるとは限りません。 FLIRにより販売されているACC-01-1106またはACC-01-1107 は、当社のOryxカメラで使用するために徹底的にテストされ、検証されています。

 

ケーブル設定のベストプラクティス

必要以上に長いイーサネットケーブルを接続すると、接続に問題が発生する、または、カメラとホスト間のリンクが10GigEからGigEに低下する可能性があります。 これは、隣接するコイル間の干渉によるものです。 この効果は、CAT6Aのシールドを追加することにより、CAT6AよりもCAT5eのほうが顕著になります。 また、CAT5eケーブルをきつく曲げると、信号品質の問題が発生する可能性があります。 RJ45カプラを使用しないでください。

距離が30m未満の場合、CAT5eは10GigEのリンク速度をサポートします。 距離が30mを超える場合は、CAT6Aを使用する必要があります。 CAT6Aケーブルは、CAT5eよりも堅牢なシールドを備えており、電磁干渉が発生しやすい環境では短距離で良好に動作します。

 

FLIRカメラ設定のベストプラクティス

Oryxは、他のOryx 10GigEカメラやFLIR Blackfly SのようなGigEカメラを搭載したマルチカメラシステムにも使用できます。

信頼性の高いパフォーマンスを確保するには、使用可能なインターフェイス帯域幅をカメラ間で共有する必要があります。 スイッチとホスト間のインターフェイスの帯域幅を超過すると、パケットが失われ、フレームが廃棄されます。

図4. インターフェイス帯域を割り当てるためのデバイスリンク・スループット上限の設定

 

カメラの帯域幅制限を設定するための推奨される方法は、デバイスリンクスループット制限です。 デバイスリンクスループットが設定されると、カメラは割り当てられた帯域幅を超えないように最大フレームレートを制限します。

 

図5. Spinview GUIのデバイスリンク・スループットの設定

 

SpinView GUIでは、デバイスリンクスループット制限設定は、機能ブラウザの[デバイス制御]セクションまたは検索バーを使用して確認できます。