NI製品ディスカッション

キャンセル
次の結果を表示 
次の代わりに検索 
もしかして: 

制御シミュレーションにおけるランダム波の周波数変更の方法

解決済み
解決策を見る

お世話になります。mogimogiと申します。

 

現在、Labview2014において制御&シミュレーションでランダム波を使ったシミュレーションを考えています。

 

制御&シミュレーションにSignal Generator Functionというものがあり、signal typeで「Random」を選ぶことはできるのですが、

Randomを選ぶとfrequencyが無視されてしまいます。周波数の低いゆっくりしたランダムな波を作りたいのですが、どのようにすればよいでしょうか。

 

どうぞよろしくお願いいたします。

0 件の賞賛
メッセージ1/4
3,916件の閲覧回数
解決策
トピック作成者mogimogiが受理

「周波数の低い」と「ランダムな」は、若干相容れないですけれども(ランダムはホワイトノイズですかね)、

その周波数成分の低いものだけ欲しい、ということであれば、

作った信号をローパスフィルタを通す、とかでは如何でしょうか。

LabVIEWにも備わっている、例えばButterworth Filterを通すなどして、

所望の遮断周波数でカットオフされたゆっくりなものだけになります。

 

 

高周波成分がどのくらい残って良いか、に応じてカットオフ周波数や、フィルタ種類を選定することになります。

 

 

サンプル数が決まっていなくて連続的に逐次的に生成していくような場合は、

FIR(有限インパルス応答)を通すことで、各種ローパスフィルタを模擬できます。

(ローパス的作用をする一番簡単なFIRは、移動平均ですが・・・)

 

ただ、当然、振幅は小さくなりますので、振幅は調節してやる必要はあります。

(サンプリング1kHzのホワイトノイズ信号を、0.2Hz(5s)のカットオフ周波数で2次のButterworth Filterを

実際に通してみると、最大振幅はざっくり1/30程度になりました)

 

他にも、元のランダム信号を、時間方向に引き伸ばして、間は適当に補間する、とかいう

方法でも、ゆっくりと変化する信号にはなると思いますが。

(例えば1kHzのランダム信号を、1秒1点ずつ使って次の点まで1000点分適当に補間する)

カクカクするので、結局ある程度滑らかにしようとするとローパスを使うことになりそうですが。

 

メッセージ2/4
3,870件の閲覧回数

M.Shiraishi

 

早速のご回答ありがとうございます。

確かに、「周波数の低いランダム」という表現に誤りがありました。

 

ローパスフィルタのアイディアありがとうございます!

確かに仰るとおりのやりかたでできそうです。やってみます!

 

まだ実装しておりませんが、うまくいってもいかなくても、また結果をご返信いたします。

 

取り急ぎ御礼申し上げます。

 

 

0 件の賞賛
メッセージ3/4
3,853件の閲覧回数

M.Shiraishi

 

いろいろ試して実装いたしましたのでご報告いたします。

 

結論から申しますと、ローパスフィルタや移動平均などいろいろと試した結果、ポアソン矩形波に

一次遅れフィルターに2回通すというやり方でなんとか実現いたしました。

 

> 他にも、元のランダム信号を、時間方向に引き伸ばして、間は適当に補間する、とかいう

> 方法でも、ゆっくりと変化する信号にはなると思いますが。

(例えば1kHzのランダム信号を、1秒1点ずつ使って次の点まで1000点分適当に補間する)

 

このアドバイスがなければ、一生できませんでした。

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

0 件の賞賛
メッセージ4/4
3,804件の閲覧回数