05-26-2020 01:39 AM
USB-6361を用いて、外部信号のカウント値とAD値を同時サンプリングしたいと考えています。
なお、開発環境はVS2017を使用予定です。
データ取得方法は以下の2つを考えておりますが、このユニットで実現対応可能でしょうか。
1.外部からのパルス信号をカウントし、一定パルス数ごとにAD変換を行う
AD値はFIFOバッファに保存しつつ、平行してPCからデータ読み出しを行う
2.内部クロックを用いて、一定時間ごとにカウント値とAD変換値をサンプリングする
カウンタ値とAD値をFIFOバッファに保存し、平行してPCからデータ読み出しを行う
カウンタ値はバッファが利用できない場合は、サンプリング完了ごとにPCにデータ送信する
よろしくお願いいたします。
解決済! 解決策の投稿を見る。
05-26-2020 02:09 AM
sKm2020さん、
開発をVS2017でされようとしているのですね・・・。テキスト言語でのプログラム構築についてはアドバイスできないのですが、
「実現対応可能」かどうかは判断できるかについてはコメントできると思います。結局LabVIEWでできるのであればVSでもできる
はずなので・・・。
1.これは、ハードウェアのサンプリングクロックを「外部からのパルス信号」とすればいいのではないかと思います。デバイス自体にも
オンボードのクロックがありこれをサンプリングクロックのソースに指定できますが、外部信号をもとにサンプリングすることができる
はずです。「AD値はFIFOバッファに保存しつつ」とは、デバイスのメモリなどにデータをためつつそれをPCのプログラム側で吸い出す
イメージ、でしょうか?
2.これもできると思います。カウンタの値はバッファを使用する組み方と使用しない組み方があったかなと思います。
USB 6361はDAQmxというドライバソフトウェアで動作させるデバイスだと思うので、このソフトウェアをインストールした際に
サンプルも入るかなと思います。サンプルの名前からして、例えば
C:\Users\Public\Documents\National Instruments\NI-DAQ\Examples\DAQmx ANSI C\Analog In\Measure Voltage
というパスにあるAcq-Ext Clkが外部クロックを用いてアナログ入力測定を行うものかなと思います。似たようなパスに
他のプログラムもあるので、参考になるかなと思います(的外れなことお話ししていたらすいません)。
05-26-2020 04:58 AM
06-03-2020 04:12 AM
marble_worker 様
教えていただいたDAQmxのサンプルを参照してみました。
テキスト言語でのプログラム構築の場合、私の理解が及ばずデータのバッファ設定に関連する部分をうまく見つけられませんでした。
もう少し継続調査してみます。
なお、今回の仕様確認は少し先延ばしできることになったため、一旦解決とさせていただきます。
貴重なアドバイスをいただきありがとうございました。