解決策
独立したNI-DAQmxタスク数、さらには使用可能なさまざまなサンプリングレート数は、使用可能なタイミングエンジンの数によって決まります。
メモ:
- cDAQシャーシ第2世代の全マルチスロットには、3つのAIタイミングエンジン(ai、te0、te1)があるため、CompactDAQシャーシで複数のサンプルレートを設定することが可能です。
- DAQmx機能を搭載するcRIO-904xコントローラは、各サブシステムのシャーシのスロットごとにタイミングエンジンを備えています。これは、8スロットモジュールが最大8つの異なる入力または出力タスクで最大8つの異なるサンプルレートを設定可能にすることを意味します。
- cDAQ-9172にはAIタイミングエンジンが1つしかないため、cDAQ-9172を使用して単一の入力タスクに複数のサンプルレートを構成することはできません。
- 複数のタイミングエンジンを備えたデバイスの完全なリストは、NI-DAQmxヘルプ: 複数のタイミングエンジンにあります。
複数のタイミングエンジンにアクセスするにはどうすればよいですか?
異なるサンプリングレートで3つ別々のAIタスクを構成する場合、DAQmx APIはそれらに異なるタイミングエンジンを自動的に割り当てます。サンプルタイミングエンジンプロパティ(DAQmxタイミングプロパティノードの上級セクションにあります)で使用するタイミングエンジンを構成することもできます。
1つのタスクで複数サンプルレートを実現するためにはどうすればいいですか?
対象のタスクで使用する最大のサンプルレートで収集するように構成し、入力値をリサンプルもしくは平均化することで遅いサンプルレートをシミュレートします。データ収集を行った後にサンプルレートを擬似生成するため、この方法は 1 つのタイミングエンジンのみが搭載されているデバイスでも使用できます。
複数モジュールタスクでの最大サンプルレートはどのくらいですか?
最大サンプルレートを計算するためには、使用するモジュールの中に「低速サンプルデバイス」が存在するかを確認する必要があります。Cシリーズモジュールとモジュールのサンプリングタイプについてのリストは、NI-DAQmxヘルプ: Cシリーズデバイスの分類 を参照してください。
低速サンプルモジュールの詳細については、Sampling Higher Than Specified Maximum Rate with Slow Sampled C Series Modulesを参照してください。
各タスクの最大サンプルレートは、タスク内にある「低速サンプル」ではないデバイスの中で最もサンプルレートが低いデバイスの最大サンプルレートに依存します。タスク内の低速サンプルモジュールは、タスクのサンプルレートに合わせて重複したデータポイントを出力します。これはデータ解析時に考慮する必要があります。
たとえば、NI-9211熱電対モジュール (最大サンプルレート = 14S/s)、NI-9201 アナログ入力モジュール (最大サンプルレート = 500kS/s) とNI-9237歪みモジュール (最大サンプルレート = 50kS/s) を使用する場合、システム内にあるアナログ入力モジュールの最大サンプルレートは 50kS/sとなります。NI-9237歪みモジュールのサンプルレートがNI-9201のサンプルレートに制限をかけますが、NI-9211は1点の熱電対サンプルにつき3572点の重複したサンプル(50k/14)を出力します。ソフトウェアでデータ解析をする際に、この点を考慮して解析が必要です。