Simulinkのモ​デルファイル(.md​lファイル)からブロ​ックの実行順序を求め​る方法はありますか?

8 次查看(过去 30 天)
Simulink のモデルファイル(.mdlファイル)からブロックの実行順序を求める方法を教えてください。

采纳的回答

MathWorks Support Team
Simulink モデルの実行順序はモデルファイル(.mdlファイル)には記述されていません。
実行順序はモデルをコンパイルした時点で決定されます。
なお、モデルメニューからは、
[書式] -> [ブロックの表示] -> [ソート順序] (R13.x 以前は、[書式]→[ソート順序])
でモデルの実行順序を表示させることができます。
これと同じことが次のコマンドでも行えます。
% モデル名: f14.mdl の場合
load_system('f14');
set_param(gcs,'DisplaySortedLists','on');
f14([],[],[],'compile');
f14([],[],[],'term');
実行順序をテキストで保存するには、SLDEBUGを使います。
SLDEBUGのSLISTでSimulinkモデル内のブロックの実行順序リストを表示させることができます。
SLISTの結果をワークスペース上に保存することができませんので、diaryをつかって、テキストとして保存します。
下記は、sf_carモデルを使用した例になります。
sf_car
sldebug(bdroot)
Simulink Debugger が起動するので、下記コマンドを1行ずつ実行します。
(sldebug @0): >> diary('test.txt');
(sldebug @0): >> slist
(sldebug @0): >> diary off
(sldebug @0): >> quit
diaryコマンド以外にも、下記のようなfopen,fwrite,fcloseを使用する方法があります。
sf_car
warning off
out = evalc('sim(bdroot, ''debug'', {''slist'' ''quit''})');
warning on
fileID = fopen('test.txt','w');
fwrite(fileID,out);
fclose(fileID);

更多回答(0 个)

类别

Help CenterFile Exchange 中查找有关 Simulink 入門 的更多信息

标签

尚未输入任何标签。

产品

Community Treasure Hunt

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

Start Hunting!