Main Content

このページの翻訳は最新ではありません。ここをクリックして、英語の最新版を参照してください。

信号データのルート入力端子へのマッピング

データをインポートした後、マップ モードおよびオプションを選択し、データを選択することで、信号データをルート入力端子にマッピングします。

ルート Inport マッパー ツールの使用に関連するその他のステップの概要については、インポートおよびマッピングのワークフローを参照してください。

マッピング モードの選択

信号データをルートレベルの端子にマッピングするには、[ルート Inport マッパー] ツールストリップの [モデルにマッピング] セクションで次のいずれかのマッピング モードを使用します。[ブロック名][端子の順序] のような、ツールストリップから選択するマッピング モードは、MATLAB® セッションおよびモデル間で維持されます。信号データをルート入力端子にマッピングするたびにマッピング モードを選択する必要はありません。

目的マッピング モード

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

ブロック名

ルート入力端子ブロックのブロック パスに基づいて、信号を端子に割り当てます。ブロック パスがルート Inport ブロックと一致する信号が検出されると、そのデータが対応する端子にマッピングされます。

ブロック パス

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

信号名

インポート データに 1 から始まる端子番号を順番に割り当てます。信号を対応する入力端子にマッピングします。

データ数が入力端子より多い場合、残りのデータはイネーブル入力端子、トリガー入力端子の順にマッピングされます。

データがデータセットの形式でない場合、データ ファイル内の出現順に処理されます。

端子の順序

カスタム ファイルの定義に基づいて、信号を端子に割り当てます。カスタム マッピング モードを作成するには、カスタム マッピング モードの作成と使用を参照してください。

カスタム

マッピングのオプションの設定

マッピング オプションを設定する場合は、[ルート Inport マッパー] ツールストリップの [モデルにマッピング] セクションで [オプション] をクリックします。[モデルの更新][部分指定を許可] のような、ツールストリップから選択するオプションは、MATLAB セッションおよびモデル間で維持されます。信号データをルート Inport にマッピングするたびにオプションを選択する必要はありません。

信号をマッピングするには、データのマッピングを参照してください。

目的オプション

モデルを更新し、ルートレベルの入力端子とインポート データのデータ型をレビューします。

モデルの更新。信号データと入力端子のパラメーターがルートレベルの端子と比較され、その結果が表示されます。このオプションを選択しない場合、インポート データがルートレベルの入力端子にマッピングされますが、モデルの更新は行われません。

スプレッドシートからデータをマッピングする場合は、厳密なデータ型指定を使用します。

スプレッドシートで厳密な型指定を使用。ルート Inport マッパー ツールがスプレッドシートの入力信号を対応するルート Inport のデータ型に自動的に変換できるようにするには、このチェック ボックスをオフにします。ルート Inport マッパー ツールがスプレッドシート データをキャストできるのは次のデータ型のみです。doublesingleint8uint8int16uint16int32uint32。このチェック ボックスをオンにした場合、またはルート入力端子がこれらのデータ型のいずれでもなかった場合は、データ型不一致エラーを受け取る可能性があります。

一部のみが定義されたバス データをインポートします。

部分指定を許可。インポートする部分的に指定されたバス データが、ルートレベルの入力端子に適切にマッピングされることを確認します。

割り当てられていないルート入力端子を特定し、不完全な入力データセットを検出します。

[見つからない信号の通知]。見つからない信号のある入力を表示します。

マッピングするデータの選択

シナリオのサブセットを指定してマッピングするには、[モデルにマッピング] ボタンの上の下矢印をクリックします。シナリオによって、異なるマッピング モードを選択できます。

目的オプション

すべてのシナリオ データセットをマッピングする (既定)。

すべてをマッピング

[シナリオ データセット] セクションで現在選択されているシナリオのデータセットをマッピングする。

選択をマッピング

未接続のデータセットをマッピングする。

未接続のものをマッピング

前にマッピングに失敗したデータセットをマッピングする。

マッピングに失敗

前に警告が発生したデータセットをマッピングする。

マッピングで警告が発生

データのマッピング

信号またはバスをインポートした後で、データをマッピングできます。

  1. [ルート Inport マッパー] ツール バーの [モデルにマッピング] をクリックします。

    信号マッピングの結果は [シナリオ データセット] タブに表示されます。

  2. 左側のペインで、マッピング結果を表示するデータ セットをクリックします。

    • [シミュレーションの準備状態] セクションには、入力データとマッピング ステータスのリストが表示されます。

      メモ

      マッピング結果の理解を参照してください。

    • 入力データのマッピング定義はモデルに適用されます。

モデルを保存して閉じた後で、同じシナリオの入力データをワークスペースに読み込むと、そのシナリオ用に定義されたマッピングがモデルで使用されます。

信号データのルートレベルの入力へのマッピングの例については、ハーネス駆動型のモデルからハーネスのない外部入力の使用への変換を参照してください。

モデルのマッピング定義を保存したら、データの読み込みを自動化できます。詳細については、マッピング データ読み込みの代替ワークフローを参照してください。

マッピング結果の理解

インポートとマッピングのプロセスが完了すると、[シミュレーションの準備状態] セクションのステータス領域に結果が表示されます。結果は、マッピングを設定するときに [モデルの更新] オプションを選択したかどうかによって変わります。

状態モデルの更新モデルを更新せずに続行

マッピングされたデータと入力端子のプロパティはシミュレーションに適しています。

データと入力端子のデータ型、次元、信号タイプのプロパティには互換性があります。

該当なし

データとルートレベルの端子のデータ型、次元、信号タイプのプロパティの比較では、一致するかどうかを判定できません。マッピングの前にモデルを更新しなかった場合、入力端子のデータ型を明示的に指定しない限り、すべてのデータ型が一致しているかどうかを評価できません。次のブロック パラメーターが正しく設定されていることを確認してください。

Inport ブロック パラメーターの [データ型][Inherit:auto] に設定されていない。

Inport ブロック パラメーターの [次元][-1] に設定されていない。

Inport ブロック パラメーターの [信号タイプ][自動] にすることはできない。

マッピングされたデータと入力端子のプロパティはシミュレーションに適していません。

信号データのデータ型、次元、信号タイプの 1 つ以上がルートレベルの入力端子と互換性がありません。

モデルでシミュレーションを有効にするには、ルート Inport マッパーがマッピングする入力端子を検出しない場合、これらの入力端子をマッピングして接地し、マッピングされた信号を空 ([]) として表示します。

次の図は、成功したマッピング、失敗したマッピング、接地割り当てを示しています。問題がある場合、ステータス列に推奨される解決策が表示されます。解決策を読み、問題の診断を行います。

[シミュレーションの準備状態] セクションに警告やエラーが表示された場合でも、要素を調べた結果、データのマッピングには問題がないこともあります。その場合は、[オプション] メニューの [モデルの更新] チェック ボックスをオンにしていなければオンにして、[モデルにマッピング] を再度クリックします。

ルート Inport マッパー ツールの [シミュレーション用にマーク] をクリックすると、モデルの [コンフィギュレーション パラメーター] ダイアログ ボックスの [データのインポート/エクスポート] ペインにある [入力] チェック ボックスがオンになります。また、値がインポートしたデータ変数に設定されます。変更内容をモデル コンフィギュレーションに適用するには、[データのインポート/エクスポート] ペインで [OK] をクリックします。

コンフィギュレーション参照を使用してコンフィギュレーション セットを参照しているモデルは、シミュレーション用にマークできません。このデータをルート Inport マッパー ツールでモデルをシミュレートするために使用するには、先に、モデル エクスプローラーを使用してコンフィギュレーション セットを有効にします。

次のグラフィックスは、データのマッピングのモデルについて、変更内容のモデル コンフィギュレーションへの適用を示しています。

インポートしたデータを検証するには、以下を行います。

  • 出力をスコープに接続し、モデルをシミュレーションして、データを観察します。

  • 信号のログを作成し、シミュレーション データ インスペクター ツールを使用してデータを観察します。

信号に関連付けられている Inport ブロックを強調表示するには、[シミュレーションの準備状態] セクション内の項目を選択します。選択された Inport ブロックは、青で縁取りされています。

メモ

入力がバスの場合、バス オブジェクトのレベルをクリックすると、バスの個々の要素が表示されます。

マッピング データ読み込みの代替ワークフロー

マッピング定義をモデルに保存したら、データの読み込みとシミュレーションを自動化できます。次のいずれかの方法を検討してください。

コマンド ラインまたはスクリプト

MATLAB コマンド ラインでデータを読み込んでモデルのシミュレーションを実行するには、次のようなコマンドを使用します。

load('signaldata.mat');
simout = sim('model_name');

異なる信号グループのテストおよび読み込みを自動化するには、スクリプトの使用を検討してください。

次のコード例では、時系列データを作成して、各信号グループの読み込み後にモデルのシミュレーションを実行します。具体的には、以下のとおりです。

  • 変数名 In1、In2、In3 で信号グループを作成して、各変数を MAT ファイルに保存します。

  • 各信号グループの読み込み後にモデルのシミュレーションを実行します。

メモ

変数名は、[コンフィギュレーション パラメーター][データのインポート/エクスポート][入力] パラメーターのインポート データ変数と一致しなければなりません。

% Create signal groups
fileName = 'testCase';
for k =1 :3
    
    % Create the timeseries data
    var1 = timeseries(rand(10,1));
    var2 = timeseries(rand(10,1));
    var3 = timeseries(rand(10,1));
    
    %create a dataset
    ds = Simulink.SimulationData.Dataset();
    ds = ds.addElement( var1, 'var1');
    ds = ds.addElement( var2, 'var2');
    ds = ds.addElement( var3, 'var3');
    
    % Save the data 
    save([fileName '_' num2str(k) '.mat' ],'ds');
end
clear all
 
% After mapping and saving the model loop over signal groups and simulate
% Set the filename to append testcase # to
fileName = 'testCase';
% Loop backwards to preallocate
for k=3:-1:1
   % Load the MAT-file.
   load([fileName '_' num2str(k) '.mat']);
   
   % Simulate the model
   simOut{k} = sim('model_name');
end

PreLoadFcn モデル コールバックの使用

データとマッピングに満足したら、信号グループが含まれる MAT ファイルを MATLAB ワークスペースに読み込むようにモデルを構成できます。関数 load をモデルの PreLoadFcn コールバックで呼び出します。

  1. MAT ファイルを保存した後、[モデル化] タブで、[モデル設定] ドロップダウンをクリックし、[モデル プロパティ] を選択します。

  2. モデル プロパティ ウィンドウで、[コールバック] タブ、PreLoadFcn ノードの順に選択します。

  3. 信号データが含まれる MAT ファイルを読み込むコマンドを入力します。以下に例を示します。

    load d_signal_data.mat;
  4. [OK] をクリックし、モデルを保存します。

関連する例

詳細