09-09-2015 09:43 PM
お世話になります。mogimogiと申します。
現在、Labview2014において制御&シミュレーションでランダム波を使ったシミュレーションを考えています。
制御&シミュレーションにSignal Generator Functionというものがあり、signal typeで「Random」を選ぶことはできるのですが、
Randomを選ぶとfrequencyが無視されてしまいます。周波数の低いゆっくりしたランダムな波を作りたいのですが、どのようにすればよいでしょうか。
どうぞよろしくお願いいたします。
解決済! 解決策の投稿を見る。
09-12-2015 07:00 AM
「周波数の低い」と「ランダムな」は、若干相容れないですけれども(ランダムはホワイトノイズですかね)、
その周波数成分の低いものだけ欲しい、ということであれば、
作った信号をローパスフィルタを通す、とかでは如何でしょうか。
LabVIEWにも備わっている、例えばButterworth Filterを通すなどして、
所望の遮断周波数でカットオフされたゆっくりなものだけになります。
高周波成分がどのくらい残って良いか、に応じてカットオフ周波数や、フィルタ種類を選定することになります。
サンプル数が決まっていなくて連続的に逐次的に生成していくような場合は、
FIR(有限インパルス応答)を通すことで、各種ローパスフィルタを模擬できます。
(ローパス的作用をする一番簡単なFIRは、移動平均ですが・・・)
ただ、当然、振幅は小さくなりますので、振幅は調節してやる必要はあります。
(サンプリング1kHzのホワイトノイズ信号を、0.2Hz(5s)のカットオフ周波数で2次のButterworth Filterを
実際に通してみると、最大振幅はざっくり1/30程度になりました)
他にも、元のランダム信号を、時間方向に引き伸ばして、間は適当に補間する、とかいう
方法でも、ゆっくりと変化する信号にはなると思いますが。
(例えば1kHzのランダム信号を、1秒1点ずつ使って次の点まで1000点分適当に補間する)
カクカクするので、結局ある程度滑らかにしようとするとローパスを使うことになりそうですが。
09-13-2015 07:23 PM
早速のご回答ありがとうございます。
確かに、「周波数の低いランダム」という表現に誤りがありました。
ローパスフィルタのアイディアありがとうございます!
確かに仰るとおりのやりかたでできそうです。やってみます!
まだ実装しておりませんが、うまくいってもいかなくても、また結果をご返信いたします。
取り急ぎ御礼申し上げます。
09-17-2015 12:38 AM
いろいろ試して実装いたしましたのでご報告いたします。
結論から申しますと、ローパスフィルタや移動平均などいろいろと試した結果、ポアソン矩形波に
一次遅れフィルターに2回通すというやり方でなんとか実現いたしました。
> 他にも、元のランダム信号を、時間方向に引き伸ばして、間は適当に補間する、とかいう
> 方法でも、ゆっくりと変化する信号にはなると思いますが。
> (例えば1kHzのランダム信号を、1秒1点ずつ使って次の点まで1000点分適当に補間する)
このアドバイスがなければ、一生できませんでした。
本当にありがとうございました。