FAQ

FAMOS

シーケンス / 関数top

シーケンス / 関数

ID.s070

Q. 等間隔データをパルス信号で外部サンプリングしたい(その2)


サンプリング間隔が等間隔のデータを測定しました。そのデータには信号波形とパルス信号を含みます。このパルス信号でデータをリサンプリングしたいです。
但し、パルスデータは60[deg]毎にしか出力されません。1[deg]毎に細かくデータをリサンプリングしたいのですが、可能ですか?

A.


以下のシーケンスで対応可能です。

関数SearchLebelでパルス信号のエッジを検出します。
次に、この60[deg]間隔のパルスを関数LIPで1[deg]間隔に変換します。
そして、その時刻暦で関数Valueを使ってデータをリサンプリングします。
結果はResult1がYデータのみ、ResはXY波形としましたので、リサンプル前のデータと比較して効果を確認してください。

;----------------------------------------
;定数の定義
;----------------------------------------
_pdeg = 60 ;パルス間隔を60[deg]で処理

;----------------------------------------
;信号の定義
;----------------------------------------
_pulse60deg = PULSE60
_data1 = SIGANL

;----------------------------------------
;データ処理
;----------------------------------------

;パルス信号を検出
_pulseTemp = SearchLevel(_pulse60deg, 2, 0, 0, 2, 0, 0, 1)
_pulse = _pulseTemp.X

;60degパルスを1degに変換
_newPulse = Lip(_pulse, _pdeg)


;データ処理結果
Result1 = Value( _data1, _newPulse)
Res = XYof(_newPulse,Result1)

;----------------------------------------
;終了処理
;----------------------------------------
del _*


製品詳細はこちら

<< シーケンス / 関数に関するFAQ一覧へ戻る