09-20-2024 12:14 AM
NI-9252からの電圧信号を波形チャートに表示して信号波形の履歴を計測しようとしています。
その際にチャンネル数を増やして波形チャートを増やすと、波形チャートの流れがかくかく(遅延)するようになります。
原因および対策を教えていただけないでしょうか?
具体的なプログラムは添付になります。
<設定値>
サンプリング周波数は50kHz
チャンネル当りのサンプル数は100
解決済! 解決策の投稿を見る。
09-20-2024 01:38 AM
09-20-2024 02:04 AM
ご回答、ありがとうございます!
チャートの目的は、試験の計測データをリアルタイムで見て計測値の増減状況から、その場で試験の様々な判断をすることです。
そのため波形グラフでは瞬間的な判断は難しいと考えています。
そしてチャートもまとめるのではなく、できれば個々に見て判断したいと思っています。
やはり複数のチャートを遅延なく表示するには単純にマシンスペックを上げるしかないのでしょうか?
その場合はメモリ、CPU、GPUのどれが効いてくるか分かりますでしょうか?
09-20-2024 08:46 PM
まずはやりたいこととその方法、VIの構成を整理させてください。
09-21-2024 04:15 PM
ご返信、ありがとうございます。助かります。以下に回答します。
→異常な振動(急激な振動)がないかを見て試験の供試体が壊れないように緊急停止させていたと考えています。
→2msで判断というより、なるべくなめらかに表示させたいと考えています。
→あいまいです。上記の通り、なるべくなめらかに表示させたいとしか考えていません。
→上記の通りです。
→ありがとうございます。そうすると、本当に100S/sが必要か考えて、もっと上げることができないか考える必要があるということですね。
09-21-2024 09:37 PM
一番のツッコミはサンプリングレートで、文章では50kS/sなのにVIは100S/sのところでした。どちらが正解ですか?
例えば100S/sでよければチャートで滑らかに表示するのは簡単です。
添付ファイルは電圧をタイミングループで読み取るサンプルVIを少し改造したものです。デフォルトは100S/sでチャート履歴は2048サンプルなのでグラフの時間レンジは20.48秒ですが、それぞれを変更してみてどこまで動くか試して下さい。
現れる異常振動の周波数によってサンプリングレートの目安が決まると思います。異常信号の種類によってはフィルタを通してからDAQに入れることで、低いサンプリングレートでもカバーできるかもしれません。
09-22-2024 02:38 AM - 編集済み 09-22-2024 02:40 AM
失礼しました。50KS/sが正しいです。
サンプルVI、ありがとうございます!色々と変更して試してみます。
>現れる異常振動の周波数によってサンプリングレートの目安が決まると思います。異常信号の種類によってはフィルタを通してからDAQに入れることで、>低いサンプリングレートでもカバーできるかもしれません。
なるほど。そういう工夫も必要ですね。こちらもありがとうございます。
09-22-2024 05:25 AM - 編集済み 09-22-2024 05:46 AM
50kS/sですね。それだと先の添付VIでは対応できないので、もう一つ別のVIを添付します。
こちらは50kS/sで5000サンプル単位で読み取るので更新周期は0.1sです。
チャート履歴を1Mサンプルにしましたが普通に動きます。前の投稿で巨大な循環バッファ云々と書きましたが、私の認識が古かったようで失礼しました。
追記:それでもチャートのスクロールが始まると書き換え頻度が落ちます。LabVIEWはデータの欠損を防ぐために表示の更新を自動的に間引きます。希望の更新頻度によってはチャート履歴の長さも調整してみてください。
09-22-2024 04:15 PM
ありがとうございます!
添付のサンプルVIで最適なパラメータを探ってみます。
大変、助かりました。