How to update values ​​in Simulink

13 ビュー (過去 30 日間)
Shunsuke kishi
Shunsuke kishi 2019 年 12 月 18 日
回答済み: Mark McBroom 2019 年 12 月 29 日
I am creating a simulation with Simulink. I originally wrote the code in MATLAB script, but it is necessary to block it, and it is blocked mainly using MATLAB function. I want to use the value calculated in the previous loop in the next loop. How should I do that? Here is a simple block. Specifically, a wants to take a value from "initial_value" in the first loop, but wants to update the value from "calculate" in the subsequent steps.

回答 (2 件)

Fangjun Jiang
Fangjun Jiang 2019 年 12 月 18 日
All you need is to declare "a" as a persistent variable.
doc persistent
  1 件のコメント
Shunsuke kishi
Shunsuke kishi 2019 年 12 月 19 日
Sorry, I forgot to post the photo. I want to use "a" output by "calculate" in the next loop as shown in this photo. When written in code, it looks like this:無題111.png
a = 0;
a0 = 0.1;
while(1)
a = a + a0;
end

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


Mark McBroom
Mark McBroom 2019 年 12 月 29 日
It would be easier to do this with basic simulink blocks. See attached screen shot. Unit delay block by default has initial value of a=0 but can be set to non-zero vaue.

カテゴリ

Help Center および File ExchangeGeneral Applications についてさらに検索

製品


リリース

R2019b

Community Treasure Hunt

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

Start Hunting!

Translated by