OpenModelica のインストールと動作テスト (Windows, Linux)

最新の OpenModelica は、利用状況に合わせた Modelica Standard Library のバージョンの選択や、パッケージマネージャによるライブラリのインストール、作業ディレクトリの設定、Replaceable クラスのサポートなど、インストール後に若干の環境設定を行った方がよいと思われます。以下では、Windows と Ubuntu Linux へ OpenModelica をインストールする方法と、初期設定、動作テストの方法などについて述べます。

OpenModelica は、Modelica言語を使用したモデル化とシミュレーションが可能なオープンソースソフトウェアであり、Open Source Modelica Consortium (OSMC)によって長期的な開発がサポートされています。インストールに関する基本的な情報は、OpenModelica の web ページ https://www.openmodelica.org/ の左上の方にあるダウンロードからアクセスできます。本記事の作成時点では Official Release の最新バージョンは ver.1.18.1 なので、これをインストールします。

Mac 用の OpenModelica の開発は ver.1.16 で止まってしまいました。現状では、私は、Mac に Ubuntu Linux の仮想マシンを作成して、そこに Linux 用のバイナリをインストールして使用しています。

インストール

Windows の場合

注意点

インストールする前に、次のような注意が必要です。

  • ユーザーアカウントに管理者権限があること
  • ユーザー名に、日本語などのマルチバイト文字を使っていないこと

インストール

https://openmodelica.org/download/download-windows からリンクをたどり、Official Release v1.18.1、64bit版 のインストーラ OpenMocelica-v1.18.1-64bit.exe をダウンロードします。ダブルクリックすることによってインストールが開始されます。以下の手順でインストールします。

  • 「この不明な発行元からのアプリがデバイスに変更を加えることを許可しますか?」というダイアログで、「はい」を選択します。
  • 「Welcome to OpenModelica 1.18.1-64bit Setup」で「Next」をクリックします。
  • 「Choose Components」で Open-Source Modelica Libraries がチェックされていることを確認し、「Next」をクリックします。空き容量によってはライブラリを選択する必要があるかもしれませんが、この設定では全部インストールをします。
  • 「Choose Install Location」で、インストール先のフォルダ Destination Folder を確認し、「Next」をクリックします。通常は変更する必要はありません。
  • 「Choose Start Menu Folder」で、スタートメニューフォルダ名が OpenModelica となっていることを確認し、「Install」をクリックします。これでインストールが開始されます。
  • しばらくすると「Installation Complete」というダイアログが表示されます。「Next」をクリックします。
  • Start OpenMocelica Connection Editor (OMEdit) にチェックされた状態で「Finish」をクリックすると OMEdit が起動します。

初めて起動すると、OMEdit 起動時に自動的にロードされるMSLのバージョンを選択するダイアログが表示されます。これについては「インストール後、最初にすること」に進んでください。

OpenModelica Connectiorn Editor (OMEdit) の起動方法

インストール後、OMEdit を起動するには次のようにします。

  • Windows10の場合、スタートメニューの下部の「ここに入力して検索」に、OMEdit と入力して表示される「OpenModelica Connection Editor」をクリックします。
  • Windows11の場合、スタートメニューの上部の「検索するには、ここに入力します」に OMEdit と入力して表示される「OpenMOdelica Connecton Editor」をクリックします。

OMEdit の起動を簡単にするため、通常のWindows用アプリのように「スタートにピン留めする」や「タスクバーにピン留めする」などの処理を適宜行ってください。

Linux (Debian / Ubuntu) の場合

Linux のディストリビューションとして Debian や Ubuntu を使用している場合、https://www.openmodelica.org/download/download-linux の手順にしたがってリポジトリを追加することによって、Linux の パッケージ管理システムのコマンドライン apt を使っってインストールすることができます。以下、記載された手順と、さらに追加してインストールする項目を示します。

インストール

  • Official Release のリポジトリの登録
$ echo "deb https://build.openmodelica.org/apt `lsb_release -cs` release" | sudo tee /etc/apt/sources.list.d/openmodelica.list
  • GPGキーのインポートと確認
$ wget -q http://build.openmodelica.org/apt/openmodelica.asc -O- | sudo apt-key add - 
$ apt-key fingerprint
  • OpenModelica とライブラリのインストール
$ sudo apt update
$ sudo apt install openmodelica
$ for PKG in `apt-cache search "omlib-.*" | cut -d" " -f1`; do sudo apt-get install -y "$PKG"; done 
$ sudo apt install libomccpp

for PKG … の行でオープンソースのサードパーティ製ライブラリ等を /usr/lib/omlibrary にインストールしています。
ここまでの手順で一応 Web に記載された手順のインストールは完了ですが、追加で以下をインストールします。

OpenModelica のパッケージマネージャを使った Modelica Standard Liberary Ver.4.0.0 のインストール

コマンドラインで

$ OMShell

と入力して OpenModelica Shell を起動し、以下のように入力します。

>> updatePackageIndex()
>> getAvailablePackageVersions(Modelica,"")
>> getAvailablePackageVersions(Modelica,"4.0.0")
>> installPackage(Modelica, "4.0.0+maint.om")

入力したコマンドの動作は次のようになります。updatePackageIndexでパッケージマネージャでインストール可能なライブラリのデータを更新します。getAvailablePackageVersionsで使用できるライブラリ名やバージョンを確認します。installPackageでライブラリをインストールします。

メニューバーの [File]>[Exit] で OpenModelica Shell を終了します。これらのオペレーションの実行のようすは以下のようになります。

パッケージマネーを使ってMSL4.0.0のインストールする様子

パッケージマネージャを使ってインストールしたライブラリは ~/.openmodelica/libraries にインストールされます。

$ ls ~/.openmodelica/libraries/
'Complex 4.0.0+maint.om'   'ModelicaServices 4.0.0+maint.om'
'Modelica 4.0.0+maint.om'   index.json 

パッケージマネージャでインストール可能なライブラリは、このディレクトリの index.json に記述されています。

ドキュメントのインストール

OMEdit のメニューバーのヘルプで表示できるドキュメントをインストールするには以下を実行します。
(ユーザーガイドのPDFはインストールされないようです。)

$ sudo apt install omc-doc

OpenModelica Connection Editor (OMEdit) の起動方法

コマンドラインから以下を入力します。

$ OMEdit

インストール後、最初にすること

OMEdit 起動時に自動的にロードされる Modelica Standard Library の設定

一番最初に OMEdit を起動しようとすると、下図のような「Setup of Modelica Standard Library version」というダイアログが表示されます。このダイアログは、OMEditの起動時に自動的にロードされる Modelica Standard Library (MSL) のバージョンを設定するものです。下図では MSL v4.0.0 を選択しています。

このダイアログが表示されないときは、OMEdit のメニューバーの [ツール] > [オプション] をクリックし、「OMEdit – オプション」ダイアログの下の方にある [リセット] ボタンをクリックします。 そして、OMEdit を再起動すると表示されます。

OMEdit起動時のMSLのバージョンの選択

MSL の最新バージョンは v4.0.0 です。これから始める人や最新の環境を求める人は v4.0.0 を選んで問題ありません。しかしながら、

  • v3.2.3 と v.4.0.0 は互換性が無い。
  • 多数のライブラリが、v3.2.3 に依存している。

などの理由から v4.0.0 に完全には移行できないのが現状です。デフォルトの利用状況に合わせて設定してください。

OpenModelica Ver.1.17 以降では、OSMCのデータベースに登録されたサードパーティ製のオープンソースのライブラリは、パッケージマネージャによって管理されています。これらのオープンソースライブラリは、メニューバーの [ファイル] > [システムライブラリ] からロードできます。MSLをロードしていない状態でこれらをロードすると、依存するMSLがインストールされている場合は自動的にロードされます。このような使用方法ならデフォルトでMSLをロードしない設定もありだと思います。

Linux の場合、上述のパッケージマネージャを使った MSL v4.0.0 のインストールを行わないで「Load MSL v4.0.0」を選ぶとエラーになります。Windows の場合は、OpenSource Modelica Libraries をチェックすると MSL v4.0.0 もインストールされます。

[Setup of Modelica Standard Library versions] ダイアログで [OK] ボタンをクリックすると OMEdit が起動します。「MSL v4.0.0」を選択した場合、ライブラリブラウザに Modelica と表示されているアイテムが MSL v4.0.0 です。MSL v4.0.0 の依存関係から Complex 4.0.0 と Modelica Services 4.0.0 も自動的にロードされる旨がメッセージブラウザに表示されます。

OMEdit の起動画面

作業ディレクトリの設定

作業ディレクトリは、OpenModelica で作成したモデルから生成される C のソースコードやバイナリ、シミュレーション結果のデータなどが保存されるディレクトリです。まず、任意のディレクトリを作成します。OMEdit のメニューバーで [ツール] > [オプション] をクリックし、「OMEdit – オプション」ダイアログの左の欄の「全般」をクリックし、作業ディレクトリの欄に作成したディレクトリを設定します。下図は Linux の場合で、作業ディレクトリを /home/amane/OMEdit としています。

作業ディレクトリの設定

Enable Replaceable Support の設定

OMEdit のメニューバーで [ツール] > [オプション] をクリックし、[OMEdit – オプション]ダイアログの左側の欄の「全般」をクリックし、 右側の欄を一番下までスクロールすると、Enable Replaceable Support と書かれたチェックボックスが見つかります。これをチェックします。

Enable Replaceable Support の設定

特にModelica.Fluid ライブラリを使用する場合は、コンポーネントに対して宣言されている交換可能 (replaceable) なパッケージ Medium を再宣言 (redeclare) することによって流体の種類を設定します。
このオプションをチェックすることによって、このような replaceable クラスの再宣言が、パラメータ設定のダイアログからグラフィカルユーザインターフェースを使用して行えるようになります。

動作テスト(コンポーネントを使ったモデル作成手順)

自動的にロードされるライブラリに「MSL v4.0.」を設定した場合について、簡単なモデルを作成して動作テストを行います。「MSL v3.2.3」 を設定した場合も同様の手順でできます。「Do not load MSL」を設定した場合は、メニューバーの[ファイル]>[システムライブラリ]で[Modelica]を選択してMSLをロードしてください。以下に、動作テストとしてコンポーネント使ったモデル作成とシミュレーション実行の一連の手順を示します。

動作テスト用に作成するモデルは下図のようなものです。右端が固定されたばねの左端に質量のある物体を取り付け、この物体に時刻 1 秒から 1N の力を加えた場合のシミュレーションを行います。

「インストール」および「インストール後、最初にすること」までが終わった後、OMEditを再起動します。

新規パッケージと新規モデルの作成

MyPackage というパッケージを作成し、その中に SpringMass というモデルを作成する方法を示します。

メニューバーの [ファイル] > [New] > [Modelicaクラス新規作成] をクリックします。表示される「OMEdit−新規Modelicaクラス作成」ダイアログに次のように入力し、[OK]ボタンをクリックします。

  • 名前: MyPackage
  • クラス・タイプ: Package

ライブラリブラウザに表示された MyPackage を右クリックし、コンテキストメニューの [Modelicaクラス新規作成] をクリックします。

新規 package の作成とpackage 内のクラスの作成

「OMEdit−新規Modelicaクラス作成」ダイアログに次のように入力して[OK]をクリックします。

  • 名前: SpringMass
  • クラス・タイプ: Model
  • 挿入するクラス: MyPackage

ライブラリブラウザの [SpringMass] をダブルクリックし、[ダイアグラムビュー]ボタンをクリックします。

新規 model の作成とダイアグラムビューへの切り替え

コンポーネントの配置と接続

ダイアグラムビューにモデルにコンポーネントを配置して接続する方法を示します。

ライブラリブラウザのアイテムの左側の ▶ マークを Modelica > Mechanics > Translational > Components の順にクリックしてライブラリの内部のアイテムを表示させます。Components にある Fixed、Spring、Mass をダイアグラムビューにドラッグ・アンド・ドロップします。ドロップするときに、コンポーネントの名前を設定するダイアログが表示されますが、そのままにして [OK] ボタンを押します。配置しやすいように、適宜、[ズームイン][ズームアウト]ボタンで画面表示を拡大縮小したり、[グリッド線]ボタンでグリッド線の表示のオン/オフします。

コンポーネントの配置

同様にして、Modelica > Mechanics > Translational > Sources の Force と Modelica > Blocks > Sources の Step をダイアグラムビューにドラッグ・アンド・ドロップして配置します。

コンポーネントの配置

ダイアグラムビューで、step のコネクタ(右側の▷の部分)の上にマウスカーソルを移動させるとマウスカーソルが + に変わります。この状態でマウスの左ボタンをクリックし、ボタンを押したままマウスを少し移動させてからボタンを離します。すると、step のコネクタからマウスカーソルまで線が引き出された状態になります。マウスカーソルを force の左端のコネクタ(▶の部分)に移動させるとマウスカーソルが+に変わります。その状態でクリックすると、step と force のコネクタを接続することができます。コンポーネントの種類によってコネクタの種類も異なりますが、同様の手順で接続することができます。
このようにして、force と mass、mass と spring 、spring と fixed のコネクタも、それぞれ、接続します。

fixed については、右クリックして「反時計回りに回転」を選択してコンポーネントを回転させます。

コンポーネントの接続

コンポーネントのパラメータの設定

コンポーネントのパラメータの設定方法について述べます。

配置したコンポーネントは、固定点、ばね、質量のある物体、物体に加えられる力、力の変化を表す信号を表現しています。これらのコンポーネントを特徴付けるパラメータを設定します。fixed を右クリックし、[パラメータ]を選択します。パラメータを設定するダイアログが表示されます。固定点の位置として s0 に 0 [m] を設定して [OK] をクリックします。同様にして下図のように spring、mass、step のパラメータを設定します。

コンポーネントのパラメータの設定

作成したモデルのチェック

モデルのチェック方法について述べます。

メニューバーの [モデルチェック]ボタンをクリックします。メッセージの内容は、モデルには 21 個の方程式 (equations) と 21 個の変数 (variables) があることを示しています。方程式の数と変数の数が一致することを確認して [OK] ボタンをクリックします。

モデルチェック

変数や方程式の内容を調べる場合は、メニューバーの [モデルのインスタンス化] ボタンをクリックします。画面にパラメータと変数が表示されます。

モデルのインスタンス化によるパラメータと変数の表示

さらにスクロールすると方程式が表示されます。確認したら [OK] をクリックします。

モデルのインスタンス化による方程式の表示

モデルのソースコードの確認と保存

[テキストビュー]ボタンをクリックすると、モデルのソースコードを見ることができます。model … の行と equation の行の間にコンポーネントと設定したパラメータが列記されています。equation の行より下にはにはコンポーネントの接続情報が connect 文で記述されています。(見やすいように多少編集しました。)

テキストビューによるソースコードの確認

行の左の ▶ マークをクリックして表示を展開すると、コンポーネントの annotation にコンポーネントの位置情報などが記述されていることがわかります。

コンポーネントなどの annotation の表示

以上を確認した後、[保存]ボタンをクリックしてモデルをファイルに保存します。デフォルトでは、ファイル名はパッケージ名に拡張子 .mo を付けた MyPacakge.mo となります。

シミュレーションの実行と結果の表示

メニューバーの [シミュレーション] > [シミュレーションのセットアップ] を選択します。[OMEdit – シミュレーションのセットアップ] ダイアログが表示されます。[全般]タブで終了時間を 10 [secs] にして、[OK] をクリックします。

シミュレーションの実行

コンパイルおよびシミュレーションが実行されます。下の方にあるメッセージブラウザにモデル名のタブ [SpringMass] が表示され、シミュレーションが成功すると「The simulation finished successfully.」と表示されます。また、自動的に[プロット]タブに切り替わります。そして、右の方にある変数ブラウザにシミュレーション結果を表すアイテム [(Active) SpringMass] が表示されます。このアイテムの左の▶マークをクリックして展開し、さらに mass を展開し、位置を表す変数 s のチェックボックスをチェックすると、物体の位置の時間変化を表すグラフが表示されます。

結果の表示

物体が単振動するようすのシミュレーションが実行できました。再びモデルを編集する場合は [モデリング]タブをクリックします。シミュレーション結果のデータは、作業ディレクトリ内のディレクトリ MyPackage.SpringMass に保存されています。

以上で、インストールおよび動作テストは終了です。お疲れ様でした。

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です