バックナンバーはこちら。
https://www.simulationroom999.com/blog/model-based-of-minimum-2-backnumber/
はじめに
前回はMDFのデータ構造について説明。
DGに含まれるCGの数によってunsorted MDFとsorted MDFに分けられる点が割と重要。
Vector MDF ValidatorでMDFの内部構造を参照できるので、作成したMDFの構造確認に利用できる。
今回から「MDFの有用性」について確認していく。
登場人物
博識フクロウのフクさん

イラスト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
MDFの有用性

MDFのデータ構造についてはおおよそ説明したので
そろそろ「MDFの有用性」について話そうか。

そうだね。
標準化されたフォーマットってことで異なるツールで計測しても同じように参照できるって利点はありそうだけど。

うん。
「標準仕様である」ってのは最大のメリットだね。
仕様も開示されてるから、自前で読み書きのツールや機能を作ることも可能だし。
MDFが持ってるデータ

でもそれだけだともっとシンプルなバイナリデータの方が楽な気がするんだよねー。

計測ってサンプリングしたデータだけを抱えてるわけでは無いんだよね。
例えば以下がある。
- channel名
- サンプリング時刻
- 物理変換式
- 単位

特に物理変換式、単位などを保持しておく仕様を0から考えるのは骨が折れるね。

確かにそこまで考えると結局MDFのデータ構造と似たような仕様を考えることになるのかー。

それだった、もうMDFの仕様を利用しちゃった方が早い。
って話になりやすい。
異なるファイルとの同期

あとは異なるMDF間の同期が取り易い構成になっているってのも利点かな。

え?
そんなことができるの?

まぁビューワ依存なのでMDF自体がそういう機能をもっているわけではないが、
基本的にDG毎にDTがあり、そこに時系列でタイムスタンプ付きのデータレコードが格納されてて、DGも複数抱えている場合がある。
複数のDGを読むことと複数のMDFを読むことは処理としてはあまり変わらないんで、
ビューワとしては複数のMDFを同期して表示することはそれほど難しくはないね。

なるほど。
そういうことができるなら、
複数の計測器で取ったMDFをあとで時刻同期して見たりできるから
タイミング依存の検証とか不具合特定とかに役立ちそうだね。

車両の計測対象は年々増えて行ってるからね。
一つの計測器で全てを取り込むのは現実的には不可能になって来てる。
よって、MDFのようなデータ構造の方が便利ってことになる。

あとはカメラで取り込んだ動画と同期できるような仕様もあるね。

自動運転、ADASとかでカメラは使うからそういうのは必須だね。
確かに計測データと動画の同期を想定したものってあんまりなさそうだから
こういうのが標準仕様として定義されてるのはありがたいねー。

と、ここまでがMDF仕様単体としての有用性だな。
まとめ

まとめだよ。
- MDFの有用性についての話に突入。
- 計測生値以外の情報も格納されている。
- 物理値変換式。
- 単位。
- 異なるファイルとの同期を取り易い構造になっている。
- 複数のDGを読み取る機能があれば、異なるMDF間でも同様の処理になるため、結果的に同期が取れるビューワになることが多い。
- 動画への参照も可能。
バックナンバーはこちら。
コメント