モデリングツールとしての「Modelica」(その3):1Dモデリングの勘所(15)(3/3 ページ)
「1Dモデリング」に関する連載。引き続き「Modelica」について説明する。連載第15回では、Modelicaのプログラミング上の特徴、構成を紹介するとともに、Modelica標準ライブラリ(MSL)の概要に触れ、その事例として1自由度振動系を作成する。併せて、Modelicaのプログラミング上の構成を示し、理解を深める。最後にModelicaの拡張機能を紹介する。
1自由度振動系のMSLによるモデリング
前回、1自由度マスダンパばねモデルをコード入力して作成する手順を説明した。そこで、図4のMSLの並進機械系ライブラリを用いて同様のモデルを作成する。
前回のテキストベースのモデリングと同様、まずGUIエディタ(OMEdit)を立ち上げる。上部アイコンの一番左の[modelicaクラス新規作成]をクリックすると、ダイアログボックスが現れるので、新規モデルのクラス名(ここでは“mslMck”とする)を入力する。この段階で、左側のライブラリブラウザの“Modelica”の下に“mslMck”が自動的に構成される。この状態で右の画面はダイヤグラムビューになっている(図5でダイヤグラムビューが白紙の状態)。
次に、左側のライブラリブラウザの並進機械系ライブラリの要素モデル(Modelica.Mechanics.Translational.Components)から、ここで使用する質量:Mass、ばね:Spring、ダンパ:Damperに加えて、固定:Fixedの4つの要素のアイコンを選んで右側のダイヤグラムビューにドラッグ&ドロップする。
そして、各要素を図5の左図を参考に結線する。結線はある要素の端子をクリックし、その状態で結線したい別の要素の端子にマウスを持っていき、クリックを解除すれば結線される。うまく結線されない場合もあるので何度か試してコツをつかんでほしい。以上で、モデルの作成は終わりだ。
続いて、[Mass][Damper][Spring]のアイコンをダブルクリックすると、パラメータ設定の画面が出てくるので、そこに各要素の値(ここでは、Mass=1、Damper=0.1、Spring=1)および初期条件(この場合は変位の初期条件として単位変位)を入力する。図5の通り、設定した要素の値はダイヤグラムビューに配置された図に反映される。シミュレーション実行と結果の表示は、前回のコード入力の際と同じである。
図5の表示をダイヤグラムビューから、テキストビューに変更するとプログラムが表示され、使用している要素と各要素を接続する情報が読み取れる。図2と同様にこれを元にたどっていくと図6となる。すなわち、これが1自由度振動系MSLモデルの構成である。ベースクラスの表現が電気系では“Pin”になっていたが、機械系では“Flange”となっている。これは「このようにMSLでは定義した」ということで、それ以上の意味はない。
Modelicaの拡張機能
3回にわたって、Modelicaの基本機能について説明した。Modelicaの仕組みを理解することにより、今回紹介したコード入力によるモデル作成、MSLによるモデル作成の他に、新規ライブラリの作成、MSLを改変した独自モデルの作成も可能となる。これらに関しては、参考文献[1]を参照されたい。また、FMI(Functional Mockup Interface)という規格を用いて、形式の異なるツール間でモデルを交換/接続することもできる。
Modelicaに関する解説はこれでいったん終了とするが、読者から要望があれば適宜、拡張機能について説明したい。
次回は「低次元化モデリング(ROM)」について、さまざまな視点から考える。 (次回へ続く)
参考文献:
- [1]大富浩一、平野豊|“対話形式で解きほぐすModelica 活用法”|日刊工業新聞社|月刊誌「機械設計」に連載中
筆者プロフィール:
大富浩一(https://1dcae.jp/profile/)
日本機械学会 設計研究会
本研究会では、“ものづくりをもっと良いものへ”を目指して、種々の活動を行っている。1Dモデリングはその活動の一つである。
- 研究会HP:https://1dcae.jp/
- 代表者アドレス:ohtomi@1dcae.jp
Copyright © ITmedia, Inc. All Rights Reserved.
関連記事
- 1Dモデリングの方法にもさまざまなアプローチがある
「1Dモデリング」に関する連載。連載第4回では、本題である1Dモデリングの方法を取り上げる。まず、1Dモデリングの方法には大きく「モデル生成」「低次元化モデリング」「類推モデリング」の3つのアプローチがあることを説明。特に本稿では1Dモデリング固有の考え方としての類推モデリングについて詳しく解説する。 - 0Dモデリングとは? 理論・経験に基づく理論式・経験則が究極の1Dモデリング!?
「1Dモデリング」に関する連載。連載第3回は、理論・経験に基づく理論式・経験則が究極の1Dモデリングであることを、0Dモデリングの定義、3Dモデリングとの関係、幾つかの事例を通して説明する。また、理論・理論式を考えるに当たって重要な“単位”に関して、なぜ単位が必要なのかその経緯も含めて紹介する。 - 1Dモデリングとは? モデリングをさまざまな視点から捉えることで考える
「1Dモデリング」に関する連載。連載第2回は、モデリングをその表現方法から2種類の“3つのモデリング”に分けて考える。次に1Dモデリングが必要となる背景について、1DCAEとMBDという2つの製品開発の考え方を紹介し、これらと1Dモデリングの関係を示す。さらに、リバース1DCAEと1DCAEを通して、より具体的に1Dモデリングのイメージを明らかにする。以上を通して、最後に“1Dモデリングとは”について考察する。 - モデリングとは何か? 設計プロセスと製品設計を通して考える
「1Dモデリング」に関する連載。連載第1回は、いきなり1Dモデリングの話に入るのではなく、そもそもモデリングとは何なのか? について考えることから始めたい。ものづくり(設計)のプロセス、製品そのものを構成する要因を分析することにより、モデリングとは何かを明らかにしていく。 - なぜ今デライトデザインなのか? ものづくりの歴史も振り返りながら考える
「デライトデザイン」について解説する連載。第1回では「なぜ今デライトデザインなのか?」について、ものづくりの変遷を通して考え、これに関する問題提起と、その解決策として“価値づくり”なるものを提案する。この価値を生み出す考え方、手法こそがデライトデザインなのである。 - デライトデザインとは? 3つのデザイン、類似の考え方を通して読み解く
「デライトデザイン」について解説する連載。第2回では、デライトデザインとは? について考える。まず、設計とデザインの違いについて触れ、ユーザーが製品に期待する3つの品質に基づくデザインの関係性にも言及する。さらにデライトデザインを実行する際に参考となる考え方や手法を紹介するとともに、DfXについて説明し、デライトデザインの実践に欠かせない要件を明確にする。