Fluxを使用した3つの連成方法の検討

Tutorial Level: Advanced 連成シミュレーション、ルックアップテーブル、FMUを使用したTwin ActivateとFluxの3つの連成方法を比較します。

重要: Available only with Twin Activate commercial edition.
連成シミュレーション方法
これは、FluxとTwin Activateを同時に実行するアプローチで、実行時間が長くなる代償として、非常に正確な結果を得ることができます。連成シミュレーションは、Twin ActivateモデルActuator_Coupling.scmとFluxの2D transient magneticモデルMultiPhysics.FLU間から開始されます。連成シミュレーションは、Flux 2Dの解析オプションであるマルチフィジックスポジションで定義される運動学に基づきます。Fluxモデルは、カップリングコンポーネントのFluxブロックを介して、Twin Activateモデルに力、電流、速度などの値を提供します。Twin Activateでは、Fluxブロックが位置と電圧の値を入力として受け取るように定義されています。
ルックアップテーブル方式
このアプローチでは、2つの別々のシミュレーションを行います。1つ目は、FluxでFEAモデルStatic_no_solved.FLUを開き、静磁場モードでの解析を行います。電流、位置、Fluxのシミュレーション結果は、.omlスクリプトファイルとして生成されます。2つ目のシミュレーションはTwin Activateで行い、Fluxの結果を .oml スクリプトファイルからTwin ActivateモデルのLookup Table NDを使用して読み取ります。
FMU方式
このアプローチでは、2つの別々のシミュレーションを行います。1つ目は、FluxでFEAモデルStatic_no_solved.FLUを開き、静磁場モードでの解析を行います。電流、位置、Fluxのシミュレーション結果は、Functional Mock-up Unitファイルとしてエクスポートされます。2つ目のシミュレーションはTwin Activateで行い、FMU Importブロックを使用して.fmuファイルから Fluxの結果をインポートします。

このチュートリアルのファイル

主なファイルは以下の通りです。MultiPhysics.FLU (Fluxコンタクターモデルファイル)、Actuator_Coupling.scm (Twin Activateモデルファイル) 、およびStatic_no_solved.FLU (FluxルックアップNDテーブル)

チュートリアルで構築するモデルの完成版と、チュートリアルを完了するために必要なすべてのファイルは、次の場所にあります:<installation_directory>/tutorial_models/Flux_Actuator_Variants。デモブラウザからアクセスできます。
重要: 連成シミュレーションプロセスでは、FLUXの.FLUファイルと.F2STAファイルを同じ作業ディレクトリに置く必要があります。作業ディレクトリの名前には、Fluxが認識できない空白文字や特殊文字を使用しないでください。

FLUXプロジェクトの概要

このチュートリアルで説明する各シミュレーション手法に必要なファイルをすべて含むFluxプロジェクトは、デモブラウザ:/tutorial_models/Flux_Actuator/から入手できます。

Flux Applications
  • Magneto Static
  • Transient Magnetic
Fluxの主な機能
  • 並進運動、メカニカルセット(詳細はFluxヘルプのFlux Supervisorの例を参照してください。)
  • Kin.= multi-static applicationとmulti-physics position
  • OMLの生成
  • Twin Activate 結合コンポーネントの生成
  • FMUの生成
Fluxポスト処理結果
  • 磁気量
  • 運動量
  • 回路数量
  • 2次元曲線解析
Fluxコンタクター(トライデント)モデル
メインとなるFLUXコンタクターモデルMultiPhysics.FLUは、以下の3つの主要コンポーネントで構成されています:
  • 下部グリップ、強磁性固定部
  • 上部グリップ、スプリングで組み立てられた強磁性(ラミネート)可動部
  • 中心歯の周囲に配置されたコイル
Fluxプロジェクト用のPythonファイル
Fluxプロジェクトフォルダーには、3つのシミュレーション方法すべてについて完成したFluxの結果が格納されています。もし、自分でシミュレーションの起動、独自のカップリングファイルの使用などを試したい場合は、そのためのPythonファイルが3つのシミュレーション方法すべてのFLUXプロジェクトに用意されています。
  • Co-simulation = Coupling_Component.py
  • OML = Generate_OML.py
  • FMU = Generate_fmu.py

Twin Activateモデルファイルの概要

Twin Activateカップリングモデル
1. Actuator_Coupling.scm
電気回路
カップリングモデルの紫色のCIRCUITスーパーブロックは、主に4つのコンポーネントで構成されています。
  • 電圧によって開閉する制御スイッチ
  • 短絡を防ぐための抵抗器
  • 電流、電圧入力
  • 電圧出力センサ
調整コマンド

カップリングモデルにおける簡単な調整コマンドは、薄緑色のHysteresisブロックに含まれています。ここでは、時間のアクティブ調節に依存するモデルとなっています。



アクティブ調整
赤色のACTIVE REGULATIONスーパーブロックでは、2つの値を比較し、これを用いてヒステリシス調整を作動します。


機械方程式
明るい緑色のスーパーブロックMECHANICSには、デバイスの機械部分をシミュレートし、アクチュエータを配置するためのModelicaブロックが含まれています。


ElectroMagスーパーブロック

Twin Activateカップリングモデル(Actuator_Coupling.scm)のElectroMagスーパーブロック(黄色)にはモデルの電磁波コンポーネントが含まれており、Include Diagramブロック(赤色)と、以下の3つの追加スーパーブロックから構成されています:以下のダイアグラムにある、Cosimulation with Flux (青)、Lookup TableND from Flux(緑)、 FMU from Flux(ピンク)。Include Diagramブロックは、Mode変数で指定したシミュレーション方法に応じて、どのスーパーブロックを呼び出すかを定義しています。それ以外のスーパーブロックは非アクティブです。



モデルバリエーション

Twin Activateモデル、Actuator_Coupling.scmは、1つのモデルでFluxコンタクターとTwin Activateアクチュエーターをシミュレートする3つの方法を実装するように構成されています。実際には、3つの方法を駆動するために、モデルの初期化フェーズで1つの変数が定義されます。この変数はModeで、1、2、3のいずれかに設定できます。


Mode変数はIncludeDiagramブロックで使用され、3つのスーパーブロックのうちどのブロックをシミュレーションに含めるかを決定します。
モード2用に定義されたダイアグラムブロックセット

連成シミュレーション方法

Twin Activateで、モデルActuator_Coupling.scmを開きます。

スーパーブロックCosimulation with Fluxで、Fluxブロックは、Flux 2D transientアプリケーションファイルMultiPhysics.F2STAを使用して生成されたカップリングコンポーネントを読み込んで連成シミュレーションを実行します。





ルックアップテーブル方式

Twin Activateで、モデルActuator_Coupling.scmを開きます。

スーパーブロックActuator_Coupling > ElectroMag > Lookup Table from Fluxには、Fluxの静磁気シミュレーションからエクスポートされた結果を読み込むためのコンテキストが含まれています。





Fluxの結果は、2つの.omlファイルFLUX.omlFORCE.omlにエクスポートされます。これらのファイルはFluxのプロジェクトフォルダーにあり、Twin Activateモデルから直接読み込まれます。以下のイメージでは、スーパーブロックLookup Table from Fluxには、黄色のブロック LookupTableNDLookupTableND_1 が含まれ、それぞれFLUX.omlFORCE.omlを ロードしています。



この図のコンテキストには、FLUX.omlFORCE.omlファイルをスーパーブロックに読み込むための指示が含まれています。



Lookup TableNDダイアログで、フィールドTable dataは、2つのベクトルCURRENT と LINPOS_TRANSLATION_PARTの補間関数としてFLUX.omlファイルからOML変数FLUXを呼び出しています。


FMU方式

Twin Activateで、モデルActuator_Coupling.scmを開きます。

スーパーブロックActuator_Coupling > ElectroMag > FMU from Fluxには、Flux 2Dの静磁気シミュレーションからエクスポートされた結果を読み込むためのコンテキストが含まれています。

Fluxの結果は、2つの.fmuファイル:FLUX.fmuFORCE.fmuとしてエクスポートされます。Fluxで.fmuファイルをエクスポートする手順は、以下のダイアログに表示されています。





.fmuファイルはFluxのプロジェクトフォルダーにあり、Twin Activateモデルから直接読み込むことができます。スーパーブロックFMU from Fluxで、黄色のブロックFMUFMU_ 1でそれぞれFLUX.oclFORCE.oclを ロードしています。



Functional Mockup Interface規格は、他の製品への重要なゲートウェイとなるものです。このチュートリアルでは、ルックアップテーブルとFMUのどちらを使用してもほぼ同じで、FluxとTwin Activateの様々な機能を説明するためのものです。



シミュレーション結果

モード1:連成シミュレーション方法

連成シミュレーション方法では、Fluxの過渡(動的)解析は、Fluxからのカップリングコンポーネントを通してTwin Activateから直接実行されます。この種のシミュレーションは時間がかかりますが、巨大な鉄導体の渦電流効果を考慮することができます。Flux-Twin Activate連成シミュレーションの付加価値は、渦電流を含めた結果の正確さです。この場合、機械式ローターの運動学のタイプはmultiphysics positionです。なお、正しい結果を得るためには、初期位置の値を決定する必要があります。
電流、位置、速度、力の時間変化による連成シミュレーション結果


モード2:OML方式

この方法の目的は、線形アクチュエータの正確な縮小モデル(有限要素モデルに基づく)を構築することです。Twin Activateによる正確さと迅速なシミュレーションが、この手法の最大のメリットです。線形アクチュエータの挙動は、有限要素法を用いて計算されたコイルの磁束と力によって表現されます。まず、Fluxシミュレーションにより、流れと力の応答面を計算します。最初の近似では、変動パラメータは電流と位置とします。この応答曲面はTwin Activateで使用されています。
OML法結果:電流、位置、速度、力の時間関数による結果


モード3:FMU方式

FMUブロックは、Twin ActivateブロックとしてFMUをインポートし、シミュレーションを行うことが可能です。FMUはME(Model-Exchange)またはCS(Co-Simulation)タイプのいずれかの選択が可能です。バージョン1.0と2.0の両方に対応しています。入出力には、Real、Integer、Boolean、Stringのデータ型を使用することができます。スカラー入出力のみ対応しています。この方法の目的は、線形アクチュエータの正確な縮小モデル(有限要素モデルに基づく)を構築することです。Twin Activateによる正確さと迅速なシミュレーションが、この方法の最大のメリットです。線形アクチュエータの挙動は、有限要素法を用いて計算されたコイルの磁束と力によって表現されます。Fluxでは、有限要素法によるシミュレーションを行い、磁束と力の応答面を計算します。最初の近似では、変動パラメータは電流と位置とします。シミュレーションが終了すると、FMUファイルが生成されます。このFMUは、Twin Activateで使用されます。
FMU法結果:電流、位置、速度、力の時間関数による結果


結果の比較:

連成シミュレーションは青色、OMLは赤色、FMUは青色と、3つの手法でピークが異なることを除けば、結果は非常によく似ています。分散が小さいのは、OML法とFMU法では、縮小モデルでシミュレーションを実行する際に適用する補間法が異なるためです。

3つのシミュレーション手法の結果比較