What is the best way to do some calculation within a state in stateflow?

9 ビュー (過去 30 日間)
Tharindu Weerakoon
Tharindu Weerakoon 2016 年 9 月 26 日
コメント済み: Tharindu Weerakoon 2016 年 9 月 30 日
Dear all, I'm bit confused of selecting a method to do some calculating program in a 'State' of the Stateflow. I do have to calculate some values checking some external measurements within a 'State'. I used to write some codes of calculation in the state block like Matlab script, but I then moved this code to Matlab Function block, since the state machine just better to show the state changes visually. Still, I am looking for the best way of doing such thing in sateflow while minimizing the execution time. Can anyone suggest me a better way to do such things (writing matlab codes in stateflow states)?

採用された回答

Zhao Wang
Zhao Wang 2016 年 9 月 28 日
I understand that you want to find a better way to write MATLAB code in Stateflow states. I am not sure in what sense you mean better. It might be shorter execution time, easier maintenance, or something else.
I assume you want to make the Stateflow chart easier to change than directly editing MATLAB code in a 'State'. In order to achieve this, you can include MATLAB functions in a Stateflow chart. Refer to the following link for more details about using MATLAB functions in a Stateflow chart:
If you have any specific question, you can contact MathWorks Technical Support for further assistance.
  1 件のコメント
Tharindu Weerakoon
Tharindu Weerakoon 2016 年 9 月 30 日
Thanks Zhao. Right now I am using the same technique.
BTW, I want to access the variables used in the MATLAB function in Stateflow chart, which should be defined as a global variable. Also the input parameters should be defined globally and they will be updated every time. In the state chart, I will execute the matlab function and it will calculate many parameters/variables and I will be able to get them without defining input and output when I call the function ([output] = Function_Name(inputs)) as explained in this example.
I have post this question in detail, and can you suggest a way to do this?

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

その他の回答 (0 件)

カテゴリ

Help Center および File ExchangeComplex Logic についてさらに検索

タグ

Community Treasure Hunt

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

Start Hunting!

Translated by