主要内容

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

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

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

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

マッピング モードの選択

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

目的 マッピング モード

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

ブロック名

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

ブロック パス

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

信号名

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

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

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

端子の順序

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

カスタム

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

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

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

目的 オプション

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

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

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

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

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

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

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

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

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

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

目的 オプション

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

すべてをマッピング

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

選択をマッピング

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

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

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

マッピングに失敗

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

マッピングで警告が発生

データのマッピング

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

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

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

  2. [ファイル]セクションで,マッピング結果を表示するデータセットをクリックします。

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

      メモ

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

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

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

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

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

マッピング結果の理解

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

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

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

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

該当なし

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

输入ブロック パラメーターの[データ型)[继承:自动]に設定されていない。

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

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

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

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

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

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

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

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

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

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

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

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

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

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

メモ

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

ハーネス駆動型のモデルからハーネスのない外部入力の使用への変換

この例では、信号生成器ブロックを入力として使用するハーネスモデルを,ルート尺寸をもつ,ハーネスのないモデルに変換する方法を示します。この例では,ハーネスのないモデル用に,ハーネスモデルからデータを収集してそのデータを垫ファイルに保存します。データを保存した後に,ハーネスモデルから信号生成器ブロックを削除し,ルート尺寸を追加してハーネスのないモデルを作成します。その後,垫ファイル内のデータをモデルのルート尺寸にマッピングします。

ハーネスデータを垫ファイルに保存

ハーネスのないモデルに変換する前に,ハーネスのテストケースを収集します。

この例では、オートマチックトランスミッションコントローラーのモデル化の例に含まれているモデルsldemo_autotransに変更を加えます。

モデル例を開きます。

信号生成器ブロックグループのエクスポート

信号建设者ブロック信号グループを定義するデータを、信号建设者ウィンドウから 小地毯ファイルにエクスポートします。信号建设者信号データを Simulink.SimulationData.Dataset金宝appの形式で、小地毯ファイルにエクスポートするには、信号建设者ウィンドウを開き、[ファイル][データのエクスポート][垫ファイルへ]を選択します。ダイアログで,データを含む垫ファイルの名前とエクスポートするグループの番号を入力します。この例では,ファイル名がslexAutotransRootInportPassingManeuver.matで,通过机动グループに対するグループ番号は1です。

信号建设者ブロックの削除

机动という名前の 信号建设者ブロックを削除し、それを 2.つの入力端子で置き換えます。

  1. 机动という名前の 信号建设者ブロックを削除します。

  2. 金宝appSimulink/常用块ライブラリから、2.つの 输入ブロックをモデルにドラッグします。

  3. 入力端子を,それまで信号生成器ブロックに接続されていたラインに接続します。

  4. 入力端子の名前を変更します。节流ラインに接続されている入力端子に掐死という名前を付けます。布拉克托克ラインに接続されている入力端子に刹车という名前を付けます。

モデルをslexAutotransRootInportsExample1.slxという名前で保存します。または,slexAutotransRootInportsExample.slxサンプルを使用します。

この例における次の手順では,slexAutotransRootInportsExample.slxモデルを使用します。モデルを別の名前で保存した場合、以下の手順のモデル名は保存した名前で読み替えてください。

ハーネスのない入力の設定

モデルがハーネスなしになったので,保存済みの入力を設定します(“ハーネスデータを垫ファイルに保存“を参照)。

[モデル化]タブで[モデル設定]を選択します。[データのインポート/エクスポート]ペインで,(入力の接続)ボタンをクリックします。

信号をルート尺寸にマッピング

ルート尺寸マッパーツールが開きます。

この例では,このツールを使用して垫ファイルからモデルの入力を設定し,マッピングアルゴリズムに基づいてそれらの入力を入力端子にマッピングします。入力データを含む垫ファイルを選択するには,[ルート尺寸マッパー]ツールバーの(垫ファイルから]ボタンをクリックします。リンクダイアログが表示されたら,[参照]ボタンをクリックします。ブラウザーにて,保存済みの垫ファイルを選択します。

マッピング モードの選択

入力データを含む 小地毯ファイルslexAutotransRootInportPassingManeuver.matを選択したら,入力データを送信するルート入力端子を決定します。金宝app仿真软件は,以下の5つの基準のいずれかに基づいて,入力データと入力端子を対応させます。

  • 端子の順序——ファイルに出現する順序で,対応する端子番号にマッピングします。

  • ブロック名——変数名を使用して,ブロック名が一致するルート尺寸にマッピングします。

  • 信号名——変数名を使用して,信号名が一致するルート尺寸にマッピングします。

  • ブロックパス——BlockPathパラメーターを使用して,ブロックパスが一致するルート尺寸にマッピングします。

  • カスタム——MATLAB関数を使用してマッピングします。

この例の最初の方で,ハーネス信号节流および制动と同じ名前をもつ変数に入力データを保存し,それらの変数に対応する名前をもつ入力端子を追加しました。入力データおよびモデルの入力端子に関する条件を考慮すると,マッピングの基準として[ブロック名] を選択するのが最適です。この基準を使用すると、金宝app模拟は入力データの変数名と入力端子の名前を対応させようと試みます。このオプションを選択するには、以下のようにします。

  1. [ブロック名]ラジオボタンをクリックします。

  2. [オプション]ボタンをクリックし,[モデルの更新]を選択します。これによりマッピングが検証されます。

  3. [マップ]ボタンをクリックします。

金宝app模拟は、データのコンパイル時に以下の基準に基づいて入力端子を評価し、互換性に関する問題を判断します。この互換性に関するステータスは、テーブルの色 (緑、オレンジ、赤) で示されます。警告とエラーには診断メッセージのフラグが付きます。[オプション]、[モデルの更新)オプションを選択しない場合,これらのブロックパラメーターと割り当てられた信号を評価することにより,ルート尺寸マッパーで互換性ステータスが決定されます。

  • データ型——倍精度,単精度,列挙,…

  • 実数/複素数——実数または複素数

  • 次元 - 信号の次元と端子の次元の比較

モデルへの入力を確定

マッピング互換性の結果を確認します。シナリオデータセットリストのシナリオデータセット[PassingManeuver]をクリックします。シミュレーションの準備をするには,[シミュレーション用にマーク]をクリックします。このアクションにより、マッピング変数がコンフィギュレーション パラメーター[データのインポート/エクスポート],[外部入力)テキスト ボックスに適用されます。このテキスト ボックスに内容がある場合は、上書きされます。

モデルのシミュレーション

変更内容を適用したら,モデルのシミュレーションを実行してその結果を見ることができます。モデルを実行します。シミュレーションの結果を確認するには、Scope ブロックの绘图结果をダブルクリックします。

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

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

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

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

加载('signaldata.mat');simout=sim('model_name');

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

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

  • 変数名三机一体、In2 In3で信号グループを作成して,各変数を垫ファイルに保存します。

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

メモ

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

%创建信号组文件名='testCase';对于k=1:3%创建时间序列数据var1=timeseries(rand(10,1));var2=timeseries(rand(10,1));var3=timeseries(rand(10,1));%创建数据集ds=Simulink.SimulationData.dataset();ds=ds.addElement(var1,'var1');ds=ds.add金宝appElement(var2,'var2');ds=ds.addElement(var3,'var3'));%保存数据保存([fileName'.'num2str(k)'.mat'],'ds');在映射和保存信号组上的模型循环后,结束清除所有%,并模拟%设置文件名以将testcase#附加到文件名='testcase';%loop backward to preallocate for k=3:-1:1%加载mat文件。加载([fileName'.'num2str(k).mat']));%模拟模型simOut{k}=sim('model_name');结束

预处理モデル コールバックの使用

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

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

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

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

    加载d_信号_data.mat;
  4. (好的)をクリックし,モデルを保存します。

関連する例

詳細