Main Content

FMU のインポート

Functional Mockup Unit (FMU) を Simulink® にインポートするには、FMU ブロックを使用します。

FMU ブロックは、インポートする既存の FMU に基づいて FMU モードを自動的に選択します。

  • Co-Simulation — FMI コシミュレーション インターフェイスを実装する FMU を統合します。これらの FMU には、ツールの結合に使用されるローカル ソルバーが含まれる場合があります。

  • Model Exchange — FMI モデル交換インターフェイスを実装する FMU を統合します。これらの FMU にはローカル ソルバーが含まれません。代わりに、これらの FMU は Simulink からソルバーを継承します。

このブロックでは、FMI Version 1.0、2.0、および 3.0 がサポートされます。FMI Version 2.0 および 3.0 では、FMU にコシミュレーションと Model Exchange の両方の要素が含まれていると、ブロックはこの状態を検出し、ブロックの動作モードを選択するように求めます。

他の Simulink ブロックと同じように FMU ブロックを使用できます。FMU ブロックは、ノーマル モード、ラピッド アクセラレータ モード、およびアクセラレータ モードをサポートします。ラピッド アクセラレータ モードは、FMU ブロックまたは FMU のログではサポートされません。

このトピックでは、.fmu ファイルを提供すると仮定します。

FMU XML ファイルの命令

既定のパラメーター値は、FMU ModelDescription.xml ファイルで定義された対応するパラメーターの start 値から派生されます。ブロック パラメーター値によって、FMU バイナリ実装で定義された対応するパラメーターの初期値が上書きされます。

それに応じて Simulink が以下の FMU タグを解釈します。

FMU タグSimulink

ScalarVariable には次のような属性セットがあります。

  • causality="none" または causality="internal"

  • variability="parameter"

  • start 値が定義される

ScalarVariable 要素をブロック パラメーターとして解釈します。

Real

ブロック パラメーターを編集フィールドとして解釈します。

Integer

ブロック パラメーターを編集フィールドとして解釈します。

Boolean

ブロック パラメーターをチェック ボックスとして解釈します。

Enumeration

ブロック パラメーターをドロップダウン リストとして解釈します。

String

UTF-8 でエンコードされた文字列として解釈します。

FMU ブロックでは、モデル記述 XML ファイルに関して次のエンコード形式がサポートされます。

  • ISO-8859–1

  • UTF-8

  • UTF-16

その他のサポートと制限

機能FMI Version 3.0 のサポートFMI Version 2.0 のサポートFMI Version 1.0 のサポート

モデルの操作点をベース ワークスペースに保存

(FMU は、このモデル記述 XML の canGetAndSetFMUstate フィールドと canSerializeFMUstate フィールドを true に設定することで、この機能をサポートするフラグを設定します。)

(FMU は、このモデル記述 XML の canGetAndSetFMUstate フィールドと canSerializeFMUstate フィールドを true に設定することで、この機能をサポートするフラグを設定します。)

 

高速リスタート

(FMU は、このモデル記述 XML の canGetAndSetFMUstate フィールドと canSerializeFMUstate フィールドを true に設定することで、この機能をサポートするフラグを設定します。)

(FMU は、このモデル記述 XML の canGetAndSetFMUstate フィールドと canSerializeFMUstate フィールドを true に設定することで、この機能をサポートするフラグを設定します。)

 

シミュレーション ステッパー

(FMU は、このモデル記述 XML の canGetAndSetFMUstate フィールドと canSerializeFMUstate フィールドを true に設定することで、この機能をサポートするフラグを設定します。)

(FMU は、このモデル記述 XML の canGetAndSetFMUstate フィールドと canSerializeFMUstate フィールドを true に設定することで、この機能をサポートするフラグを設定します。)

 

ソルバーのヤコビアン

(FMU は、このモデル記述 XML の providesDirectionalDerivatives フィールドを true に設定することで、この機能をサポートするフラグを設定します。)

(FMU は、このモデル記述 XML の providesDirectionalDerivatives フィールドを true に設定することで、この機能をサポートするフラグを設定します。)

 

モデルの線形化

(FMU は、このモデル記述 XML の providesDirectionalDerivatives フィールドを true に設定することで、この機能をサポートするフラグを設定します。)

(FMU は、このモデル記述 XML の providesDirectionalDerivatives フィールドを true に設定することで、この機能をサポートするフラグを設定します。)

 

パラメーターを調整可能として宣言し、シミュレーション中に調整する

(FMU は、このモデル記述 XML の canGetAndSetFMUstate フィールドと canSerializeFMUstate フィールドを true に設定することで、この機能をサポートするフラグを設定します。)

(FMU は、このモデル記述 XML の canGetAndSetFMUstate フィールドと canSerializeFMUstate フィールドを true に設定することで、この機能をサポートするフラグを設定します。)

 

For Each Subsystem

(modelDescription.xml ファイルで canBeInstantiatedOnlyOncePerProcess 属性が false に設定されている場合にのみサポート)

(modelDescription.xml ファイルで canBeInstantiatedOnlyOncePerProcess 属性が false に設定されている場合にのみサポート)

 

型が string のパラメーター

(string 型のパラメーターの配列はサポートされません)

ラピッド アクセラレータ モード

 

ソフトウェアインザループ (SIL) モードとプロセッサインザループ (PIL) モード

   

コード生成

 

入れ子にされた FMU のエクスポート

 

保護モデルのエクスポート

 

モデル カバレッジ

   

Simulink Design Verifier™

   

アクセラレータ モードでのモデル参照

 

イベント モード

  

スケジュールされた実行モード

   

入力、出力、およびパラメーターの列挙データ型

 

Simulink では、FMU Import ブロックについて、FMU 自体でサポートされていれば、前後のステップへの移動、実行中のパラメーターの調整、状態の保存がサポートされます。FMU は、このモデル記述 XML の canGetAndSetFMUstate フィールドと canSerializeFMUstate フィールドを true に設定することで、これらの機能をサポートするフラグを設定します。

FMU インポートの例

説明

コシミュレーション FMU の Simulink へのインポート

このモデルでは、FMU ブロックを使用してコシミュレーション モードをサポートする FMU ファイルを読み込む方法を示します。

Model Exchange FMU の Simulink へのインポート

このモデルでは、FMU ブロックを使用して Model Exchange モードをサポートする FMU ファイルを読み込む方法を示します。

FMU Import ブロックによる構造化データのインターフェイスの簡略化

このモデルでは、Model Exchange モードをサポートする FMU ブロックでバス信号と構造体パラメーターを使用する方法を示します。

参考

関連するトピック

外部の Web サイト