初めての投稿ということで、何をテーマにしようか知恵熱が出るくらい悩みましたが、FlexPro のお客様がほぼデモをご覧になる度に質問されるこの機能をまず紹介しようと思います。
データストレージが大容量化し、計測機器が GHz サンプリングに対応するなど測定データがどんどん大きくなってきています。数 GB ものデータが収録できるから、トリガ条件をあまりシビアにせずたっぷり計測できますね。で、実際に解析したいのはその一部分だけだったりします。
普段、デモでは GUI だけでできる こちら の方法を紹介しています。やはり GUI の方が簡単ですからね。
今回は初投稿記念として、私自身苦手なスクリプトを使って行う方法をご紹介します。
なんで GUI でできるのにわざわざスクリプトを書かなきゃいけないんだ、という私のような方、気持ちは分かります。ですが GUI ではできないことがスクリプトではできるんです。それは、切り出す範囲をインタラクティブというか、動的に、というかフレキシブルに指定できることです。たとえば、次の測定データをインポートして処理する場合、このデータでは前のデータと切り出す範囲が異なっていても、カーソルで指定するだけで範囲を変更することができるのです。
スクリプトが苦手な方、大丈夫です。FlexPro のスクリプトは非常にシンプルです。私でも (ある程度^_^;) 書けます。
前置きが長くなってしまいました。実際に書いてみましょう。
ここでは FlexPro のサンプルデータ Measurement 1 をインポートし、その中の Ultrasound Signal を 2D ダイアグラム という名前のグラフ (ダイアグラム) を作成します。このあたりの手順に関しては こちら をご覧ください。
「公式」を新規作成し、「公式」ウィンドウに次の式を入力します。
'Ultrasound Signal'['2D ダイアグラム.2D'.Cursor(fpCursorMinX).PositionIndex,'2D ダイアグラム.2D'.Cursor(fpCursorMaxX).PositionIndex]
たった一行です。これだけで良いんです。
ちょっと応用編。
カーソル間の波形を切り出し、フィルタをかけ、フィルタされた結果を FFT。オリジナルの波形、切り出した波形、フィルタの結果、FFT の結果をワークシートに表示してみます。
先ほど公式を作成した FlexPro のオブジェクトリストで、「公式」オブジェクトを選択して「新規」メニューから「フィルタリング」、「IIR フィルタ」を選択します。IIR フィルタプロパティダイアログボックスが開かれるので「オプション」タブでフィルタ特性やフィルタタイプ、次数、カットオフ周波数などを指定し、「OK」ボタンをクリックします。
オブジェクトリストに「公式フィルタ」という名前のオブジェクトが出来上がっているので、これを選択して「新規」メニューから「スペクトル解析」、「フーリエスペクトル」を選択します。スペクトルプロパティダイアログボックスが開かれるので「オプション」タブでスペクトルタイプやウィンドウ関数などを指定し、「OK」ボタンをクリックします。
オブジェクトリストで 2D ダイアログ、公式、公式フィルタ、公式フィルタスペクトルオブジェクトを選択し、「新規」メニューからワークシートを選択します。4 つのオブジェクトを選択していたので、自動的に 4 つのペインを持つワークシートが選択されています。「次へ」ボタンをクリックしてペインのレイアウトを選択し、「終了」ボタンをクリックします。
「公式」オブジェクトをダブルクリックで開き (先ほどスクリプトを入力したまま閉じてなければそのタブを選択し)、スクリプトを以下のように少しだけ変更します。
'Ultrasound Signal'['ワークシート.WKS'.Cursor(fpCursorMinX).PositionIndex,'ワークシート.WKS'.Cursor(fpCursorMaxX).PositionIndex]
2D ダイアグラム.2D を ワークシート.WKS に変更しただけです。
文字で見ると煩雑そうに見えるかもしれませんが、実際の操作は この程度 です。簡単でしょ。


