Is there a way to share a variable between simulink and matlab?

2 ビュー (過去 30 日間)
Simon
Simon 2015 年 8 月 21 日
コメント済み: Walter Roberson 2015 年 8 月 22 日
Hi guys, I have a question about simulink and matlab interference. I run a simulink model and m file simultaneously and I need to get the value of a variable from sim model to forward the progress of m file. I'm wondering if there's a way to let simulink and m file share a variable and make it accessible to the m file so that m file can reacts to the variable's changes.
Thank you

採用された回答

Walter Roberson
Walter Roberson 2015 年 8 月 21 日
編集済み: Walter Roberson 2015 年 8 月 22 日
Sounds to me as if you should use a MATLAB Function Block with a Trigger Block
  2 件のコメント
Muthu Annamalai
Muthu Annamalai 2015 年 8 月 21 日
@Simon - you can use a MATLAB Function block to evalin base workspace as a quick-n-dirty way of doing things. See doc :
Walter Roberson
Walter Roberson 2015 年 8 月 22 日
That would depend upon whether Simulink was started from the graphics menu or from sim() . If it was from sim() then it is not writing to the base workspace even with a To Workspace block. A MATLAB Function Block that is reading from the base workspace might not be much use. A MATLAB Function block that was passed the signal and used assignin('base') might be useful though.

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

その他の回答 (1 件)

Walter Roberson
Walter Roberson 2015 年 8 月 21 日
You should use a To Workspace Block
When I investigated earlier this week I discovered that the data is written to the Base workspace if Simulink is started from the graphics menu, but if you call sim() within MATLAB then the data is written to the workspace of the function that calls sim(). (That function can then write it elsewhere.)
  3 件のコメント
Purushottama Rao
Purushottama Rao 2015 年 8 月 22 日
I think you can use a embedded matlab function available in simulink. In your application, input for the embedded matlab function could be the peak of the external sensor signlas and then you can write a script inside it to call one more function conditionally..
Walter Roberson
Walter Roberson 2015 年 8 月 22 日
"embedded matlab function" is an older term. The newer is MATLAB Function Block

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

カテゴリ

Help Center および File ExchangeLarge-Scale Modeling についてさらに検索

Community Treasure Hunt

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

Start Hunting!

Translated by