モデルベース開発

事例

【FMU】最小構成のMBD事例 第2章 その30【FMI①】

Modelicaモデルを外部から利用する手段は一応ある。 OpenModelicaからFMIをもったFMUを出力可能。 FMIは物理モデルをモジュール化したものの標準インターフェース。 MODELISARプロジェクトで策定。 その後、Modelica Association Project(MAP)で管理。
事例

【Modelica】最小構成のMBD事例 第2章 その29【DCモータ⑥】

DcPermanentMagnetDataをOpenModelica Connection Editorで確認。UI上でパラメータを設定可能。さらにそのパラメータをDC_PermanentMagnetに渡すことでモデル初期化している。初期化するモデルが一個だとあまり意味がないかもだが、同特性モデルが複数あるとサボれる。
事例

【Modelica】最小構成のMBD事例 第2章 その28【DCモータ⑤】

Modelicaコード モデル宣言部を確認した。 以下が存在しており、OpenModelica Connection Editor上にもある。 DC_PermanentMagnet、Ramp、SignalVoltage、Inertia、TorqueStep。 DcPermanentMagnetDataが特殊な位置づけ。
事例

【Modelica】最小構成のMBD事例 第2章 その27【DCモータ④】

Modelicaコードのparameter部を確認。 parameterに関しては以前やった。 しかし、今回はReal型ではない。 厳密には、Real型に単位の定義を付加したもの。 電圧だったら"V"。 トルクなら"N.m"。 SI単位系で存在するものはModelica.SIunitsの中にすでに定義済み
事例

【Modelica】最小構成のMBD事例 第2章 その26【DCモータ③】

DCモータモデルのModelicaコードを確認。 半分くらいはannotationなのでそれほど規模は大きくない。 見るべきポイントを列挙。 先頭のparameter部。 中間のモデル宣言部。 真ん中DcPermanentMagnetData。 これが今回のサボりポイントの目玉となる。
事例

【Modelica】最小構成のMBD事例 第2章 その25【DCモータ②】

ModelicaのDCモータモデルをちょっと掘り下げ。 以下が絡んでくる。 電気/電子領域。 古典力学領域。 幾何学(材料力学)領域。 物理モデリングは伝達経路、伝達関数、微分方程式解決、シミュレーションの4つの工程がある。 Modelicaは伝達関数、微分方程式解決をサボれるツール。
事例

【Modelica】最小構成のMBD事例 第2章 その24【DCモータ①】

ModelicaのDCモータモデルのサンプルの位置をライブラリブラウザで確認。 DCモータモデルをとりあえずシミュレーション。 制御電圧、制御電流、角速度の結果を確認。 今回は電圧をランプ関数で制御したシンプルなもの。 ランプ関数は0を起点に徐々に上がっていく関数。
事例

【Modelica】最小構成のMBD事例 第2章 その23【massモデル⑫】

trapezoidの設定もせずにおもむろにシミュレーション。 矩形波的な出力になった。 変数ブラウザでtrapezoidの設定を編集。 台形波的な出力に変化。 このように、変数ブラウザからパラメータ変更が可能なソースブロックはそこそこある。 これらを知っているといろいろとサボれて楽できる。
事例

【Modelica】最小構成のMBD事例 第2章 その22【massモデル⑪】

trapezoidブロックとForceブロックを配置。ForceブロックはModelica→Mechanics→Translational→Sourcesにある。trapezoidブロックはModelica→Blocks→Sources→Trapezoidにある。本来はtrapezoidを修正する必要があるが今回は不要
事例

【Modelica】最小構成のMBD事例 第2章 その21【massモデル⑩】

ソースブロックによっては様々な信号を入力できる。 ソースブロックは信号を生成してくれるブロック。 信号を生成するソースブロックと物理量に変換するソースブロックがある。 今回はtrapezoidが信号生成、forceが物理量変換。 Modelicaライブラリは大量にあるがライブラリブラウザで検索ができるようになってる。