どうすれば,サンプリ​ングタイムごとに初期​条件を変更できますか​?

SimulinkでDiscreteStateSpaceを使用しています. ブロックパラメータの初期条件(Initial Condition)をサンプリングタイムごとに変更したいと考えています. また,初期条件は他のブロックから出力される信号をもとに作りたいと考えています. どうすれば,初期条件を時々刻々と変えることが出来るでしょうか

 採用された回答

Yoko
Yoko 2018 年 2 月 14 日

1 投票

既にご存知かと思いますが、DiscreteStateSpace ブロックでは初期条件を信号線として代入できないため、他のブロックで離散状態方程式を表現することで実現できるのでは、と思います。例えば、下図のように、Resettable Delay を使い、Trigger と 初期条件ポートを使う方法で、ご検討されては如何でしょうか。

4 件のコメント

Takashi Nohara
Takashi Nohara 2018 年 2 月 14 日
ありがとうございます.とても助かりました!
Takashi Nohara
Takashi Nohara 2018 年 2 月 14 日
よろしければお答えいただきたいです.
あるシミュレーション時間,その時々で,この離散状態方程式計算を複数回計算して現在の時刻よりも先の計算を行いたいのですが,そういった場合はFor Iteratorなどで対応するのがよいでしょうか?
Yoko
Yoko 2018 年 2 月 15 日
離散状態方程式を繰り返し計算するなら、For Iterator で計算することができるかと思います。
Takashi Nohara
Takashi Nohara 2018 年 2 月 15 日
すべて解決できました!改めて感謝を.ありがとうございます.

サインインしてコメントする。

その他の回答 (0 件)

カテゴリ

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!