問題タブ [daq-mx]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
0 に答える
105 参照

c# - NI DAQ MAX Task.CIChannels.CreateAngularEncoderChannel() から誤った結果を受け取る

NI DAQ: cDAQ9185-1E7661EMod1 があり、ポート ctr1 からカウンター チャネル: AngularEncoderChannel としてデータを読み取ろうとしています。NI の C# API を使用しています。

私が受け取るのは、0、0.36、0.72 の大量のストリーム (0 の数千倍、次に 0.36 の数千倍など) ですが、常に変化する約 2000 の値を期待しています。

物理的な配線は問題ありません。角度エンコーダーの例からコードを実行しましたが、うまくいきました。すべてのタスク構成を例にできるだけ似るように変更しましたが、それでも機能しません。

私のコード:

Sample オブジェクトと _exporterQueue は、このプログラムの実際の機能にとって重要ではありません。それにもかかわらず、それらが驚くほど関連している場合に備えて、私はそれらをここに保持しています. Sample は {double Data, and int SampleCounter} を持つオブジェクトで、_exportingQueue はサンプルを格納し、別のスレッドを介してキューから取り出すキューです。また、NI の Task オブジェクトのエイリアスを NITask として持っています。これは、2 つの Task オブジェクトが衝突しないように、スレッドで作業しているためです。

質問が十分に明確であることを願っています。どうもありがとうございました!