ドキュメンテーション

最新のリリースでは、このページがまだ翻訳されていません。 このページの最新版は英語でご覧になれます。

getRootInportMap

信号をルートレベルの Inport にマッピングするカスタム オブジェクトの作成

構文

map = getRootInportMap('Empty');
map = getRootInportMap(model,mdl,Name,Value);
map = getRootInportMap(inputmap,map,Name,Value);

説明

map = getRootInportMap('Empty'); は、空のマップ オブジェクト map を作成します。このマップ オブジェクトを使用して、空のカスタム マッピング オブジェクトを設定します。この関数を使用する前に、モデルを読み込んでください。最初にモデルを読み込まなかった場合、この関数は、モデルを読み込んでマッピングを作成し、その後にこのモデルを閉じます。

map = getRootInportMap(model,mdl,Name,Value); は、modelmdl で使うための、指定されたブロック名と信号名をもつマップ オブジェクトを作成します。この関数を使用する前に、モデルを読み込んでください。最初にモデルを読み込まなかった場合、この関数は、モデルを読み込んでマッピングを作成し、その後にこのモデルを閉じます。

map = getRootInportMap(inputmap,map,Name,Value); は、指定されたプロパティでマッピング オブジェクトをオーバーライドします。modelblockNamesignalName のプロパティのみオーバーライドすることができます。この関数を使用する前に、モデルを読み込んでください。最初にモデルを読み込まなかった場合、この関数は、モデルを読み込んでマッピングを作成し、その後にこのモデルを閉じます。

データをルートレベルの Inport にマッピングするカスタム マッピング モードを作成するときは、関数 getRootInportMap を使用します。カスタム マッピング アルゴリズムの例は、BlockNameIgnorePrefix.m を参照してください。

入力引数

Empty

空のマップ オブジェクトを作成します。

既定値: なし

名前/値のペアの引数

オプションのコンマ区切りされた Name,Value の組み合わせ引数を指定します。ここで、Name は引数名、Value は対応する値です。Name は単一引用符 (' ') で囲まなければなりません。Name1,Value1,...,NameN,ValueN のように、複数の名前/値のペア引数を、任意の順番で指定できます。

'model'

ルート Inport のマップに関連付けられたモデル名

既定値: なし

'blockName'

ルートレベルの入力端子のブロック名。ツールは、ルート Inport ブロックの名前に基づいて、データを端子に割り当てます。ルート Inport ブロックの名前に一致する名前のデータ要素が検出されると、ツールはそのデータを対応する端子にマッピングします。

この引数は、次の値をとることができます。

ルートレベルの入力端子のブロック名。
ルートレベルの入力端子のブロック名を複数含んでいるセル配列。

既定値: なし

'signalName'

マッピング対象の信号名。ツールは、端子の信号の名前に基づいて、データを端子に割り当てます。端子の信号名に一致する名前のデータ要素が検出されると、ツールはそのデータを対応する端子にマッピングします。

この引数は、次の値をとることができます。

マッピング対象の信号名。
マッピング対象の信号の信号名を複数含んでいるセル配列。

既定値: なし

'inputmap'

オーバーライドするマッピング オブジェクトの名前

既定値: なし

出力引数

map

データをルートレベルの入力端子にマッピングするために使用できるカスタム オブジェクト。

すべて折りたたむ

空のマッピング オブジェクト

空のカスタム マッピング オブジェクトを作成します。

map = getRootInportMap('Empty')
map = 

  1x0 InputMap array with properties:

    Type
    DataSourceName
    Destination

単純なマッピング オブジェクト

MATLAB® 時系列オブジェクトを使用して単純なマッピング オブジェクトを作成します。

時系列オブジェクト signalIn1 を作成します。

signalIn1 = timeseries((1:10)')
Common Properties:
            Name: 'unnamed'
            Time: [10x1 double]
        TimeInfo: [1x1 tsdata.timemetadata]
            Data: [10x1 double]
        DataInfo: [1x1 tsdata.datametadata]

モデル matlabroot\help\toolbox\simulink\examples\ex_minportsOnlyModel の時系列オブジェクトのマッピング オブジェクトを作成します。

load_system ex_minportsOnlyModel;
map = getRootInportMap('model','ex_minportsOnlyModel',...
'blockName','In1','signalname','signalIn1')
map = 

  InputMap with properties:

              Type: 'Inport'
    DataSourceName: 'signalIn1'
       Destination: [1x1 Simulink.iospecification.Destination]

ベクトルのマッピング オブジェクト

モデル matlabroot\help\toolbox\simulink\examples\ex_minportsOnlyModel のブロック名と信号名のベクトルを使用して、マッピング オブジェクトを作成します。

ベクトルのマッピング オブジェクトを作成します。

load_system ex_minportsOnlyModel;
map = getRootInportMap('model','ex_minportsOnlyModel',...
'blockName',{'In1' 'In2'}, ...
'signalname',{'signalIn1' 'signalIn2'})
map = 

  1x2 InputMap array with properties:

    Type
    DataSourceName
    Destination

マップのオーバーライド

信号 var2 を含むマッピング オブジェクトを作成し、var2 を var1 でオーバーライドします。

ベクトルのマッピング オブジェクトを作成します。

% Load the model and define variables
load_system ex_minportsOnlyModel;
modelValue = 'ex_minportsOnlyModel';
blockNameValue = 'In1';
signalNameValue = 'var2';
portType = 'Inport';

% Define var1 and override var2 with var1
signalNameToOverload = 'var1';
mapToOverload = getRootInportMap('model',modelValue,...
'blockName',blockNameValue,...
 'signalName',signalNameToOverload)
mapToOverload = 

  InputMap with properties:

              Type: 'Inport'
    DataSourceName: 'var1'
       Destination: [1x1 Simulink.iospecification.Destination]

関連する例

詳細

すべて折りたたむ

ヒント

  • この関数を実行する前に、モデルを読み込んでください。

  • カスタム マッピング モードが既存の Simulink® マッピング モードと同様である場合、代わりに関数 getSlRootInportMap の使用を検討してください。

この情報は役に立ちましたか?