Functional Mock-Up Interface(FMI)のサポート

Functional Mock-Up Interface(FMI)は様々なツール間のインターフェースを作成するための新たな規準です。

FMI規準は、2つの主要なインターフェースソリューション、モデル交換と連成シミュレーションを定義します。あるツールから別のツールへのエクスポートは、FMUファイルを通して行われます。Activateは、FMI-1.0およびFMI-2.0からのFMUブロックをシミュレートでき、モデル交換と連成シミュレーションの両方のブロックタイプをサポートしています。

FMU Import

FMU Importブロックは、FMUブロックのインポートとシミュレートを可能にします。

このブロックは、パレットのAdvanced#menucascade-separatorCoSimulationにあります。

FMUブロックは、FMIバージョン(1.0または2.0)とFMIタイプ(Model-ExchangeまたはCo-Simulation)を自動検出し、対応するシミュレーション方法を適用します。FMU Importブロックをダブルクリックすると、ブロックダイアログが表示されます。

このブロックダイアログでは、FMUブロックの選択とロードが可能です。選択後は、入力数、出力数、状態変数の数などの値を各フィールドに入力するか、ReloadをクリックしてFMUブロックを読み取り、フィールドに自動入力します。パラメーターテーブルには、FMU変数変数が表示されており、その開始値は編集可能です。値の変更は、シミュレーション開始前に考慮されます。

ダイアログに値が入力されると、FMUブロックをモデルダイアグラムに追加できるようになります。次の例は、水力学ソフトウェア製品による連成シミュレーションを実施するダイアグラムのFMUブロックを示しています。

FMUエクスポート

FMUエクスポート機能では、ActivateのスーパーブロックをFMUモジュールとしてエクスポートできます。

FMUエクスポート機能には次の特徴があります:
  • FMI-2.0としてエクスポートします。
  • モデル交換または連成シミュレーション、あるいはその両方としてFMUをエクスポートします。
  • スーパーブロックの内部情報がIP保護のために秘匿されます。
  • 内部ブロックのパラメータがFMUに表示されます。
  • いくつかの固定ステップソルバーと可変ステップソルバーを、連成シミュレーション向けにFMIへエクスポートできます。
  • エクスポートしたFMUを、ActivateなどのFMI互換ツールにインポートできます。
現在のバージョンのFMIエクスポートでは、以下がサポートされていません:
  • ReadfromMatやSignalInなどの信号インポートブロック。
  • WritetoMatやSignalOutなどの信号エクスポートブロック。
  • ScopeやDisplayなどの信号ビューアーブロック。
  • MotionSolve、HyperSpiceなどの連成シミュレーションブロック。
  • メモリブロックはサポートされていません。
  1. FMUにエクスポートするには、ダイアグラムの中でエクスポートする領域を選択し、それをスーパーブロックに変換します。
    たとえば、以下のモデルでは、スーパーブロックcontroller_to_exportを選択できます。

    controller-to-export スーパーブロックは線形システムとマトリックスゲインブロックを有し、1つのスカラー入力と2つのベクトル出力を備えています。

  2. このスーパーブロックの作成後、リボンでツール#menucascade-separatorFMU 2.0の順に選択します。
  3. エクスポート方法として、モデル交換連成シミュレーション、または連成シミュレーションとモデル変換を選択します。

    エクスポートしたFMUの名前と識別子では、スーパーブロックの名前が保持されています。したがって、スーパーブロックの名前にサポート対象外の文字を使用していると、それはASCII文字に変換されます。例えば、スーパーブロックの名前がSuperB !\%lockの場合、この名前はsb_SuperB32339237lockに変換されます。

    エクスポート方式として連成シミュレーションを選択した場合は、Activateのシミュレーターのほか、シミュレーションパラメータもモデルとともにエクスポートされます。

    NoteColonSymbol

    FMIエクスポート機能には、C/ C++コンパイラーが必要です。

    Windowsプラットフォームでは、MicroSoft Visual Studio C/C++コンパイラーが必要です。作成したCコードをコンパイルするには、システムに正しいコンパイラーがインストールされていることを確認します。コンパイラーがないと、FMUに対応したバイナリが存在しないのでFMIエクスポートができません。

    Linuxプラットフォームでは、Activateはシステム上のGCCコンパイラーを使用します。

    NoteColonSymbol

    Activateによって、システム上のCコンパイラーが自動的に検出されます。OMLコマンドvssGetCompilerName()を使用すると、Activateで認識されたCコンパイラーが表示されます。

  4. エクスポート方式を選択すると、によってスーパーブロックがエクスポートされ、FMUの保存先を指定するように求められます。デフォルトの保存場所は、元のモデルファイルが保存されているフォルダです。

FMU Export with Documentation

Issue the OML command to export FMU information in an .html file.

When exporting an FMU, you can generate and include an .html file with a description of the super block in the FMU. The description that is exported is the model report of the super block diagram.

By default, the .html page is not generated. To enable this feature, in the OML Command Window, enter: setenv('Activate_FMU_export_DOC','true')

FMU Export on Linux Platforms

FMU exporting on Linux requires ld version 2.27 or greater.

To export an FMU in Activate on Linux platforms, the compilation and linking of the C code requires ld version 2.27 or greater. You can ensure that you are working with a compatible version of ld by installing or updating Binutils with the command: yum install binutils.