Matlab function in Simulink exhibiting slow reaction time

12 ビュー (過去 30 日間)
Lillebror Sagmen-Andersson
Lillebror Sagmen-Andersson 2025 年 3 月 6 日 8:31
I have a function block within my simulink file. It reads a "current" value, and compares it to a reference value.
If the value is higher than ref is turns off one input, and the next time the function block is called the expected behavior is that it should turn off a additional input if the value is still higher than reference.
For some reason it only turns off additional inputs every ~1700 seconds or so. Simulation time is 24h. I do not really see what could cause this. It behaves as expected, but as if it is only called every 1700 seconds.
There is a delay block at the output of the funciton, that then feeds back - giving the current status of all inputs. It is set to a delay of 1.

採用された回答

Fangjun Jiang
Fangjun Jiang 約20時間 前
編集済み: Fangjun Jiang 約20時間 前
I must know this. 1700 seconds is roughly 1/50 of the simulation time (24 hours). It is the default setting. It must mean that you didn't specify the simulation step size. One step of simulation of your model is about 1700 seconds. That is the reason.
Specify a reasonable step size and you will see the effect.
  1 件のコメント
Lillebror Sagmen-Andersson
Lillebror Sagmen-Andersson 約18時間 前
Aha! There we have it! I did not realize the deafult was 1/50. Thanks for the help :)

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

その他の回答 (0 件)

カテゴリ

Help Center および File ExchangeRun on Target Hardware についてさらに検索

製品


リリース

R2024b

Community Treasure Hunt

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

Start Hunting!

Translated by