A way to make the Simulink program run and then perform the calculation

3 ビュー (過去 30 日間)
THANH DAT
THANH DAT 2023 年 5 月 19 日
コメント済み: Jon 2023 年 5 月 24 日
I want to put this code into matlab Function but this calculation is only done when the program in simulink is finished running. So is there a way to make the Simulink program run and then perform the calculation?

採用された回答

Jon
Jon 2023 年 5 月 19 日
You can set the model's StopFcn call back for this purpose.
Go to the Modeling tab, model settings, properties,callbacks, and assign your stop function there.
Provide the name of the script or function to be executed in the StopFcn callback property.
Note the script must use values that are assigned in the workspace, so you should provide some to workspace blocks or use other means (assign data logging) to the outputs of interest so they will be in the workspace after the simulation stops.
  2 件のコメント
THANH DAT
THANH DAT 2023 年 5 月 23 日
Thank you very much, but i can't put this value from Callback function to Constant after Simulation stop. Do you have any suggestion for this?
Jon
Jon 2023 年 5 月 24 日
Sorry I'm not completely clear on what you are trying to do and what problem you are having.
With the StopFcn, shown above, the new value for the variable, Angle, will be assigned in you base workspace after the run is completed. If you run the model again, the new value will be used. If you need to initialize the variable, Angle, for the first time you open and run the model you could do that in a script that you run before running the model. This could also be put into a model Callback function, such as InitFcn

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

その他の回答 (0 件)

カテゴリ

Help Center および File ExchangeModel, Block, and Port Callbacks についてさらに検索

製品


リリース

R2018b

Community Treasure Hunt

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

Start Hunting!

Translated by