10GigEのベストプラクティス:単一カメラシステムの設定
ホストシステムの構成、ケーブル配線、カメラ設定に関するベストプラクティス。
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カメラ設定のベストプラクティス
Oryx10GigEカメラは、他のOryx 10GigEカメラやFLIR Blackfly SのようなGigEカメラを搭載したマルチカメラシステムにも使用できます。
信頼性の高いパフォーマンスを確保するには、使用可能なインターフェイス帯域幅をカメラ間で共有する必要があります。スイッチとホスト間のインターフェイスの帯域幅を超過すると、パケットが失われ、フレームがドロップします。
図4. インターフェイス帯域を割り当てるためのデバイスリンク・スループット上限の設定
カメラの帯域幅制限を設定するための推奨される方法は、デバイスリンクスループット制限です。 デバイスリンクスループットが設定されると、カメラは割り当てられた帯域幅を超えないように最大フレームレートを制限します。
図5. Spinview GUIのデバイスリンク・スループットの設定
SpinView GUIでは、デバイスリンクスループット制限設定は、機能ブラウザの[デバイス制御]セクションまたは検索バーを使用して確認できます。