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

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

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

はじめに

前回は、FMU/FMIのシミュレーション方式とSolverの位置づけについて図解。

MEことModel Exchange方式はプラットフォーム側で微分方程式を解決させる方式であり、
これにより、「テイラーn次相当の精度」に調整できるので、
実際のECUの精度に合わせたり、精度とシミュレーション速度のトレードオフのようなことができる。

対して、CEことCo-Simulation方式は内部で微分方程式を解決しているので、
繋ぐだけで動作するというお手軽さが秀逸。
MATLAB/SimulinkのS-Functionと同等なので、実際のはCEの方が使われるシーンは多いかも。

今回からFMU/FMIのもうちょっと踏み込んだ仕様の話となる。
(実は、FMUってzipで圧縮されたもので・・・。)

登場人物

博識フクロウのフクさん

指差しフクロウ

イラスト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

FMU/FMIの仕様を知らないといけないのか?

太郎くん
太郎くん

今回からFMU/FMIの仕様の話ってことだったけど・・・。

フクさん
フクさん

そうだね。
その予定だ。

太郎くん
太郎くん

知る必要ってあるのかなー。

フクさん
フクさん

と言うと?

太郎くん
太郎くん

利用する側からすると内部仕様って知らなくても良いと思うんだよね。
例えば、WindowsってOSの内部仕様を知るより利用方法を知る方が重要だったりするじゃん。

フクさん
フクさん

なるほど。
その意見はごもっとも。

フクさん
フクさん

ただ、この手の仕様って利用する側の情報自体が少ないからねー。
情報が多ければ、HowTo的なアプローチでもいいんだけど、
それが通じにくい領域なんで内部仕様から攻める必要がある。
って感じだ。

フクさん
フクさん

私も本来であれば「仕様を知らずに利用できる」のが理想形とは思ってるんだよね。
でもここら辺の仕様ってあんまり人に優しくないので
利用するために仕様を知っていないと利用できない
という謎現状が発生する。

太郎くん
太郎くん

うーん、利用するための切っ掛けがない。または恐ろしく少ないってところかー。

フクさん
フクさん

そうだね。
現状だとググっても利用するところまでたどり着けないんじゃないかなー?

太郎くん
太郎くん

むむむ。
ならば仕様から攻めるしかないのか。

どういう方針で仕様を見て行くのか?

太郎くん
太郎くん

そうなると、仕様書とにらめっこしながらって話になるのかな・・・。

フクさん
フクさん

仕様書はここで入手できるが・・・。

フクさん
フクさん

仕様書は必要になった時に読むってことで、
今回はFMU自体の中身を見て行く。

太郎くん
太郎くん

え?
中身?

太郎くん
太郎くん

もしかしてバイナリエディタでちまちま見て行くんじゃ・・・。

太郎くん
太郎くん

たしかFMUってMATLAB/SimulinkのMEXみたいな奴なんだよね?
MEXって確かWindowsだとDLLそのものだったような・・・。

FMUの構造について

フクさん
フクさん

あー、FMUの中にDLLもあるんだけど、
実はそれ以外の定義ファイルとかフォルダ構成ってのもあるんだよね。

太郎くん
太郎くん

フォルダ構成?
FMUって一個のファイルじゃないの?

フクさん
フクさん

FMU自体は一個のファイルだね。
ただ、特定のファイル&フォルダ構成をzipで1ファイルに圧縮しているんだよ。

太郎くん
太郎くん

ほう。
そういう作りなのか。

フクさん
フクさん

なので、拡張子をzipにすると解凍できる
ここらへんはMicrosoftのOffice製品と雰囲気似てるかもねー。

太郎くん
太郎くん

なるほど。
それを一個一個見て行くって方針なのか。

フクさん
フクさん

たぶん、現物を見ながらの方が分かり易いよね。

太郎くん
太郎くん

それは違いない!

まとめ

フクさん
フクさん

まとめだよ。

  • FMU/FMIはあまり一般的に知られているものではないので利用方法の情報が皆無。
    • よって、仕様に踏み込まないと利用方法も見えない。
  • 仕様書を読み込むのも大変なのでFMU自体の中身を見て行った方が理解としては楽そう。
    • 実はFMUは特定のファイルとフォルダ構成をzip圧縮したもの。
      • つまり解凍して中身を参照できる。

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

コメント

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