Main Content

Simulink.data.assigninGlobal

Simulink モデルのコンテキストでの変数値の変更

説明

Simulink.data.assigninGlobal(modelName,varName,varValue) は値 varValue を Simulink® モデル modelName のコンテキストで変数またはデータ ディクショナリ エントリ varName に代入します。assigninGlobal は変数またはデータ ディクショナリ エントリが存在していない場合、それを作成します。関数はターゲット モデルにリンクされたデータ ディクショナリの [データの設計] セクション内またはターゲット モデルがどのデータ ディクショナリにもリンクされていない場合は MATLAB® ベース ワークスペース内で動作します。

ターゲット モデルが他のディクショナリを参照するデータ ディクショナリにリンクされている場合、assigninGlobal はディクショナリ階層全体から varName を検索します。assigninGlobal が一致するエントリを見つけられない場合、関数はターゲット モデルにリンクされたディクショナリにエントリを作成します。

すべて折りたたむ

変数 myNewVariable をどのデータ ディクショナリにもリンクされていない Simulink モデル vdp.slx のコンテキストで値 237 を指定して作成します。myNewVariable は MATLAB ベース ワークスペース内に変数として表示されます。

openExample('simulink_general/VanDerPolOscillatorExample')
Simulink.data.assigninGlobal('vdp','myNewVariable',237)

変数 myNewEntry をデータ ディクショナリ sldemo_fuelsys_dd_controller.sldd にリンクされたモデル sldemo_fuelsys_dd_controller.slx のコンテキストで値 true を指定して作成します。エントリ myNewEntry がディクショナリの [Design Data] セクションに表示されます。

openExample('simulink_automotive/UseDDForFuelContSysExample')
sldemo_fuelsys_dd_controller
Simulink.data.assigninGlobal('sldemo_fuelsys_dd_controller',...
'myNewEntry',true)

モデル エクスプローラーでディクショナリを表示し、データ ディクショナリ sldemo_fuelsys_dd_controller.slddmyNewEntry が追加されたことを確認します。

myDictionaryObj = Simulink.data.dictionary.open(...
'sldemo_fuelsys_dd_controller.sldd');
show(myDictionaryObj)

入力引数

すべて折りたたむ

ターゲットの Simulink モデルの名前。文字ベクトルとして指定します。

例: 'myTestModel'

データ型: char

ターゲットの変数またはデータ ディクショナリ エントリの名前。文字ベクトルとして指定します。

例: 'myTargetVariable'

データ型: char

変数またはデータ ディクショナリ エントリに代入する値。有効なデータ型またはデータ ディクショナリの内容を返す MATLAB 式として指定します。

例: 27.5

例: myBaseWorkspaceVariable

例: Simulink.Parameter

ヒント

  • assigninGlobal は、Simulink モデルをデータ ディクショナリ使用に移行する際に役立ちます。モデルをデータ ディクショナリにリンクする前と後に、関数を使用して値をモデル変数に代入できます。

バージョン履歴

R2015a で導入