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

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

バックナンバーはこちら。
https://www.simulationroom999.com/blog/model-based-of-minimum-2-backnumber/

はじめに

前回、DCモータモデルのModelicaコードを確認。
見るべきポイントは3点。

  • 先頭のparameter部
  • 中間のモデル宣言部
  • 真ん中DcPermanentMagnetData

今回は、Modelicaコードを解説していく。

登場人物

博識フクロウのフクさん

指差しフクロウ

イラストACにて公開の「kino_k」さんのイラストを使用しています。
https://www.ac-illust.com/main/profile.php?id=iKciwKA9&area=1

エンジニア歴8年の太郎くん

技術者太郎

イラストACにて公開の「しのみ」さんのイラストを使用しています。
https://www.ac-illust.com/main/profile.php?id=uCKphAW2&area=1

Modelicaコード解説

太郎くん
太郎くん

じゃ、Modelicaコードの解説よろしくー。

フクさん
フクさん

うーん、最初くらいは自分で説明してみたら?

太郎くん
太郎くん

えー。

フクさん
フクさん

分からなかったら分からないでOKだし、
不足してる点があれば補足するし。

太郎くん
太郎くん

じゃーやってみるかー。

Modelicaコードのparameter部

太郎くん
太郎くん

まずはparameter部。

  "Test example: DC with permanent magnet starting with voltage ramp"
  extends Modelica.Icons.Example;
  parameter Modelica.SIunits.Voltage Va=100 "Actual armature voltage";
  parameter Modelica.SIunits.Time tStart=0.2
    "Start of armature voltage ramp";
  parameter Modelica.SIunits.Time tRamp=0.8 "Armature voltage ramp";
  parameter Modelica.SIunits.Torque TLoad=63.66 "Nominal load torque";
  parameter Modelica.SIunits.Time tStep=1.5 "Time of load torque step";
  parameter Modelica.SIunits.Inertia JLoad=0.15
    "Load's moment of inertia";
太郎くん
太郎くん

これは即値だとシミュレーション時に再シミュレーションし難くなるから
変数を間に挟んでるところだねー。
ここらへんで以前やった。

変数の型について

太郎くん
太郎くん

ん?
でも変数の型がなんか違うな?
以前はRealって型だったようなー。

フクさん
フクさん

まぁRealは実数ならなんでもOKって型で、
今回使ってるうちのModelica.SIunits.Voltageの実体は以下のように定義さえてる。

Real (final quantity="ElectricPotential", final unit="V");
太郎くん
太郎くん

これはどういう意味になるんだ?

フクさん
フクさん

実装型で、物理量としては電気、単位は”V”って示してるだけだね。

太郎くん
太郎くん

そういえば、以前Real型でパラメータ設定したときだと変数ブラウザには単位はでてなかったな。
今回のだと単位もちゃんとでるのか。

フクさん
フクさん

そうそう。
まぁ同じようにReal型を宣言する際に引数として単位を指定すれば出ては来るんだけどね。
SI単位系で存在するものはModelica.SIunitsの中にあるんで、
基本はその中から選ぶってことになる。

太郎くん
太郎くん

parameterなんて変数定義するだけでしょ?
って思ってたけど、意外とまだまだ隠されてた謎があったんだな・・・。

フクさん
フクさん

SI単位系に無いものがあっても、Realで単位指定すれば良いので、
そういう機能があって、サボれるってのを知っておけば良いね。

太郎くん
太郎くん

なるほど。
これもサボりポイントかー。

まとめ

フクさん
フクさん

まとめだよ。

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

バックナンバーはこちら。

コメント

タイトルとURLをコピーしました