NI製品ディスカッション

cancel
Showing results for 
Search instead for 
Did you mean: 

サンプリング周波数のデータ取り込みに関して

Solved!
Go to solution
Highlighted

初歩的なことで恐縮ですが、DAQからの計測データをサンプリング周波数1khzに設定しているのですが、エクセルファイルには100個程度しかデータが取り込めていないのですが、何が原因なのか、プログラムの組み方を教えて頂けないでしょうか?

0 Kudos
Message 1 of 20
(248 Views)
Solution
Accepted by topic author igaguri

平素よりNI製品をご愛顧頂きありがとうございます。
日本ナショナルインスツルメンツ技術部の上野です。

 

データ収集をおこなう際に、DAQアシスタントExpress VIもしくはDAQmxタイミングVIを用いてサンプルレートを1 kHzに設定されているかと思いますが、サンプル数/チャンネルを100に設定していると、100点しかデータを収集しません。

 

サンプルレートはデータを収集する速さを指定し、サンプル数は収集する量を指定する設定ですので、両方の設定をご希望の値に設定してみてください。

 

0 Kudos
Message 2 of 20
(189 Views)

御返信ありがとうございます。

初心者である為、とても分かりやすく理解できました。

これで設定すれば、DAQからのデータを1kHzで1000点のデータ集録できるという理解で宜しいでしょうか?

ファイル保存はエクセルへに出力へ設定しており、計測ファイル書き込むまでの配線でダイナミックデータへ変換としているのですが、合っていますか?

0 Kudos
Message 3 of 20
(184 Views)

1kHzで1000点のデータ集録は、設定すれば可能です。

 

Excelファイル形式(.xlsx)の保存でしたら、計測ファイルに書き込むExpress VIで可能ですが、入力がダイナミックデータタイプとなりますので、その変換は必要となります。コードは拝見しておりませんが、おそらく問題ないかと思います。

0 Kudos
Message 4 of 20
(164 Views)

御返信ありがとうございます。

一応、色々参考にしながら勉強して組んでみましたが、これでよいかアドバイス頂けると幸いです。

形としては、EMGからの信号をDAQに入力し、エクセル保存まで考えています。保存する際に配列で時間軸も1列目に欲しかったので、計測ファイル書き込みの方で設定を行いました。不必要なところ、このようなブロックダイアグラムの組み方であるとより詳しいなどあればご教示頂けたら幸いです。

0 Kudos
Message 5 of 20
(143 Views)

Whileループを使用して連続収集するのでしたら、計測ファイル書き込むExpress VIの使用はお勧めしません。

理由は、このVI内でファイルを開く処理と閉じる処理が含まれており、Whileループ内で毎回処理がおこなわれるためです。短期間では感じませんが、長期間実行し続けると―バーヘッド(処理時間)が長くなっていき、データ収集に影響を及ぼします。

 

下記のようにループの外側でファイルを開く処理と閉じる処理を行うほうが効率がよくなり、データ収集に影響しなくなります。

 

次に時間列を追加したいとのことですが、下記のページに添付されているZIPファイルの中にWaveform Array to 2D Array with Timestamp.viがあり、そのサブVIを用いると簡単に追加可能です。

 

 

上記の方法を実装した例は以下のとおりです。同じVIを添付致します。

SS1.png

0 Kudos
Message 6 of 20
(132 Views)

御返信頂き有難うございます。

大変恐縮ですが、私のLabviewがVer.2013である為、添付して頂いたファイルが見れない状況です。

お手数ですが、もう一度送って頂けると幸いです。

0 Kudos
Message 7 of 20
(125 Views)

LabVIEW 2013用に保存し直したVIを添付致しますのでご確認ください。

0 Kudos
Message 8 of 20
(119 Views)

添付して頂き有難うございます。

一応、自分で作成しながら解釈しながら実施し、理解が深まりました。

実行してみたのですが、最初に保存先の指定が表示されてから実行されるような形になっていますが、これはデータの無い初回でも、保存先を先に決めてファイル書き込みを行うということで合っていますでしょうか?

あと、簡単で宜しいので、タイプスタンプのダイアグラムの概要を説明頂けると幸いです。

 

下記に修正後のブロックダイアグラムを添付しています。

0 Kudos
Message 9 of 20
(104 Views)

> 保存先を先に決めてファイル書き込みを行うということで合っていますでしょうか?

 

はい、そのとおりです。

前回添付したのは、配列からスプレッドシート文字列に変換関数でデリミタ設定としてカンマを指定して、カンマ区切り形式(CSV形式)にしていますので、拡張子を自動で付けて後で開けるようにしていました。

ファイルパス制御器を用いて直接ファイルパスとファイル名を指定しても構いません。

 

 

次に波形データタイプから時間列を含むデータ配列を作成するサブVIですが、波形データタイプには、dt(デルタt)としてデータポイントの時間間隔が含まれており、その時間間隔を収集したデータ分加算して相対時間の配列を作成し、データ配列と連結して2次元配列にしています。

0 Kudos
Message 10 of 20
(97 Views)