NI製品ディスカッション

cancel
Showing results for 
Search instead for 
Did you mean: 

波形データの最大値を特定し、最大値の前後のデータも抽出する方法について

Solved!
Go to solution

Labview 2012を使用しております。

掲題について、何十万もの波形データを読み込み、そのデータ内の最大値を特定後、その値の前後数万個のデータを抽出し保存する方法についてご教授願いたいと思っております。

 

データファイルとして30万個分のサンプルテキストファイルを貼らしていただきます。

まだLabviewを使い始めて、2ヶ月ほどで知識も多くはないため手こずっている状況です。

 

現在データの取り込みをし、最大値の特定まではできているのですが、前後のデータを同時に抽出し保存する段階がどうしてもうまくできないため、ご教授いただければ幸いです。

0 Kudos
Message 1 of 5
(2,830 Views)
Solution
Accepted by Tkhs

波形データのまま処理しようとすると大変かもしれません。

「波形要素取得」関数を使用してYデータを取得すれば、下記の方法で実現できるかと思います。

example.png

 

 

 

Certified LabVIEW Developer
There are only two ways to tell somebody thanks: Kudos and Marked Solutions

GCentral
Message 2 of 5
(2,816 Views)

Emboar様、迅速な回答をしていただきとても感謝しております。

貼付されたスクリーンショットについてですが、どのような処理がなされているのかよく分かっておらず、簡単でよろしいので説明をいただいてもよろしいでしょうか?

 

アドバイスを頂けた「波形要素取得」を使用してYデータ取得のところは理解できました。

ありがとうございます。

 

 

0 Kudos
Message 3 of 5
(2,807 Views)

説明が不足しており失礼しました。

 

まずForループでシミュレーションデータを生成しています。
これが波形から取得したYデータとお考えください。

部分配列を使用して指定した指標を始まりに指定したサンプル数を取得します。
ここで「最大ポイント」は、仮想トリガ検出ポイントです。
100個の要素のうち、指標50において最大値が検出されたと仮定します。

その前後のデータを取得します。「プレサンプル数」は前のデータ個数を、
「ポストサンプル数」は後のデータの個数を指定しています。

実行してみると、プレサンプル数は指標50の前10個分データ(50-10 = 指標40から10個分)、
ポストサンプル数は指標50から後20個分のデータが取得される様子がご確認いただけます。

Certified LabVIEW Developer
There are only two ways to tell somebody thanks: Kudos and Marked Solutions

GCentral
Message 4 of 5
(2,799 Views)

非常に分かりやすいご説明ありがとうございます。

自身の勉強不足で手間を取らせてしまい申し訳ありません。

本当にありがとうございました。

0 Kudos
Message 5 of 5
(2,794 Views)