メインコンテンツ

Simulink.ModelReference.refresh

Model ブロックを強制的に更新して参照モデルへの変更を反映

説明

Simulink.ModelReference.refresh(mdlblk) は、mdlblk で指定された Model ブロックを更新して、参照モデルへの変更を反映します。

すべて折りたたむ

同じモデルを 2 回参照する親モデルを含むモデルの階層構造を作成します。

new_system("top")
new_system("ref")
add_block("simulink/Ports & Subsystems/Model","top/Model1",ModelName="ref")
add_block("simulink/Ports & Subsystems/Model","top/Model2",ModelName="ref")

参照モデルに入力端子と出力端子を追加します。

add_block("simulink/Ports & Subsystems/In1","ref/In1")
add_block("simulink/Ports & Subsystems/Out1","ref/Out1")

Model ブロックの端子の数を取得します。

get_param("top/Model1","Ports")
ans = 1×10

     0     0     0     0     0     0     0     0     0     0

get_param("top/Model2","Ports")
ans = 1×10

     0     0     0     0     0     0     0     0     0     0

Model ブロックには、参照モデルの新しい端子が反映されません。

Model ブロックの 1 つを更新します。

Simulink.ModelReference.refresh("top/Model1");
get_param("top/Model1","Ports")
ans = 1×10

     1     1     0     0     0     0     0     0     0     0

get_param("top/Model2","Ports")
ans = 1×10

     0     0     0     0     0     0     0     0     0     0

更新された Model ブロックの端子の数が、参照モデルの端子の数と一致するようになりました。もう一方の Model ブロックは変わっていません。

入力引数

すべて折りたたむ

Model ブロックの名前またはハンドル。文字ベクトル、string スカラー、または数値スカラーとして指定します。

例: Simulink.ModelReference.refresh('mymodel/Model')

例: Simulink.BlockDiagram.refreshBlocks(h) (hModel ブロックのハンドル)

ヒント

通常 MATLAB® に表示されるよりも多くの桁を指定しなければならないため、ハンドルの数値 (5.007 など) を手動で指定しようとしないでください。ハンドルを変数に代入し、その変数の名前を使用します。

データ型: char | string | double

ヒント

モデル内のすべてのバリアント、リンク付きブロック、および Model ブロックを更新するには、関数 Simulink.BlockDiagram.refreshBlocks を使用します。

代替機能

Model ブロックを選択します。Simulink® ツールストリップの [Model ブロック] タブで [リフレッシュ] をクリックします。

バージョン履歴

R2020a で導入