
前回はOpenModelica付属のExampleの中から「渦電流ブレーキ(eddy current brake)を鑑賞。今回は地上走行車両(自動車、列車など)のモデル、Vehicleを動作させてみます。シンプル・モデルといいつつ、質量、回転モーメント、空気抵抗、転がり抵抗、傾斜抵抗など含まれてます。
※「ブロックを積みながら」投稿順 index はこちら
※動作確認にはWindows 11の パソコン(64bit)上にインストールした、The Open Source Modelica Consortium(OSMC)様の以下のバージョンを使用させていただいてます。(なお、ModelicaはModelica Association様の登録商標です。)
Openmodelica v.1.25.1 (Official Release版)
Vehicleデモ
今回「鑑賞のデモ」はOMEditのライブラリ・ウインドウから以下の赤色矢印の項目を選択することでロード可能です。
上記のダイアグラムで中心となるのは「斜面上の台車」のようなアイコンで表現されている地上走行車両のモデルです。このモデルは直接Modelica言語で言語記述されているわけではないみたい。ダイアグラムベースでの階層が1枚挟まっています。その様子が以下に。
上図にお惚け老人が赤字で書きこんであるのが、車軸にかかる駆動力による車軸の回転、そして車両重量の推進にいたるルートです。左のflangeRには、外部のモータなり機関なりからの駆動輪への駆動力(トルク)を与えます。ここに接続しなければ駆動力無になるので、牽引される側としてモデル化できるみたい。
一方、上図の右手の flangeTは、外部の他の車両と連結可能な「フランジ」です。内部的には、上記の駆動系+傾斜抵抗+転がり抵抗+空気抵抗で表されているみたい。
Inclination resistanceは、路面勾配をあらわす傾斜抵抗です。途中、ATANとかSINとかの計算が現れるのは、%表示の勾配率から、斜面の角度をもとめ(ATAN)、その角度のSINをとって高さ方向の距離を計算しているためだと思われます。負の傾斜は下り坂を表すと。
Rolling resistanceは転がり抵抗です。転がり抵抗係数Cr、傾斜角α(水平方向の距離を求めるのに使用)から転がり抵抗を計算しているみたい。
Drag resistanceは空気抵抗のようです。風速もモデル化されていて、風速の正負はflangeTと同じ方向が正みたい。
Vehicleデモの設定とシミュレーション
ダイアグラムの左端にあるのが「タイム・テーブル」です。固定の定数でなく、時間可変な信号として、ここではトルクと斜面の勾配をテーブル化しているみたい。
つづいて2つあるゲインブロックの下の方です。
シミュレーションの「テク」なのかもしれないけれども、テーブル出力のトルクにあたる値を計算でもとめた各種抵抗分、増幅して出力しているみたい。お楽なの?
トルクブロックが以下に。Vehicleの右フリンジに駆動力たるトルクを与えておるみたい。
さてVehicleの設定が以下に。
赤が空気抵抗分、青が傾斜抵抗分、緑が転がり抵抗分デス。そして紫が駆動力ね。
一方、Vehicle1とそれに「引かれる」トレーラの関係が以下に。
緑が速度、赤が加速度、青が牽引に使われているパワーみたい。「シンプル・モデル」といいつつ、モデリカ素人にはいろいろ複雑っす。