
Simulink forループ内の結果を次の周の入力にする方法
조회 수: 26 (최근 30일)
이전 댓글 표시
Simulinkでforループ内の結果を次の周の入力にする方法を考えています。
たとえば下図のようなイメージです。

モデルが複雑でわかりにくくなってしまうのですが、もっと効率の良い、スマートな表現方法はあるでしょうか?
恐れ入りますが、ご教示願います。
댓글 수: 0
채택된 답변
交感神経優位なあかべぇ
2025년 2월 3일
こちらはどうでしょうか?
For Iterator ブロックの開始時の状態をリセットに設定し、Delayブロックを使用して前ループの結果を渡します。開始時の状態をリセットに設定しているので、Delayの初期条件は毎ステップ入力値から始まります。

추가 답변 (1개)
Atsushi Ueno
2025년 2월 1일
質問の例に挙げられた処理は「Nが4以上なら
を出力、Nが1~3なら(何か)を出力」です。

댓글 수: 3
Atsushi Ueno
2025년 2월 11일
気になる事:
最後のSwitch((1:N)>=4)は、有っても無くても動作に影響しないのではないでしょうか?
For Iterator Subsystem内で繰り返し処理が行われている間の出力は使われず、全ての繰り返し処理が終わった後に始めて出力が使われます。 @交感神経優位なあかべぇ氏の回答からも最後のSwitchは除去されています。
참고 항목
제품
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!