simulinkのサンプル時間について
3 views (last 30 days)
Show older comments
Taisuke Hattori
on 21 Jan 2020
Commented: Taisuke Hattori
on 22 Jan 2020
今現在、離散系のシミュレーションを構築して解析を行っています。
構成として図にあるように上側がsin波を積分しScopeに接続、下側がsin波をZero-Order Holdしてから積分しScopeに接続したものになっています。
サンプル時間の凡例を表示させるとZero-Order Holdによってサンプリングが行えていることがわかります。
サンプリングした波形を積分ブロックに通すと信号の種類としては連続になっているのですが、波形を見ると100 μsでサンプリングされた波形が出力されてしまっています。
この結果は正しいのでしょうか?
また、離散系を連続系に変換するブロックがあれば教えていただけると幸いです。
よろしくお願いいたします。
0 Comments
Accepted Answer
Toshinobu Shintai
on 21 Jan 2020
離散系を連続系に戻すことはできないと思っていただきたいです。
離散時間でサンプリングした時点で、ナイキスト周波数以上の周波数成分が損なわれます。その成分をサンプリング後のデータから再生することはできません。
Simulinkの連続ブロックは、離散ブロックからの出力でも問題なく受け取って計算できますが、離散ブロックから信号を受け取っているときは、今回の結果のように離散的な挙動になります。
More Answers (1)
Musashi Ito
on 21 Jan 2020
モデルを見ると、Zero-Order Hold ブロックではサンプリングのみを考慮した理想的なAD変換器として表現していて、サンプリングしたデジタル的な信号をDA変換器を省略して、連続系のブロックに信号を入力している表現になるのかなと思います。
離散系の信号から、連続系の信号に変換する場合は、Rate Transition Block を連続系のブロックの前に挿入して、サンプル時間を 0 に設定すれば良いかなと思います。
また、ご参考までに離散システムをモデリングする場合は、ブロックライブラリの Discrete のブロックを使用してモデリングするかなと思います。
See Also
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!