モデルベース開発

事例

【Viewer】最小構成のMBD事例 第2章 その300【AsamMdf①】

AsamMdf付属Viewerで作成したMDFを確認していく。 まずはMDFを開くところ。 それっぽく表示されるのは確認。 Linear変換を細かく確認。 指定通りの線形変換がされている。 同一のChannelを複数表示する方法に加えて片方だけ生値表示する方法がある。 次回説明予定。
事例

【Python】最小構成のMBD事例 第2章 その299【AsamMdf⑲】

MDFの残りの物理値変換式をMDF validatorで確認 tabular with range。 Lower、Upper、valueで1セットになるよに情報が埋まっている。 value range to text。 tabular with rangeの文字列変換型。 文字列も情報として埋まっている。
事例

【Python】最小構成のMBD事例 第2章 その298【AsamMdf⑱】

今回もMDF Validatorで物理変換式を確認。 tabular without interpolationとtabular with interpolationはcc_typeが違うだけで保持している情報は一緒。 value to textはtabularのようなテーブル情報と変換先の文字列を格納している。
事例

【Python】最小構成のMBD事例 第2章 その297【AsamMdf⑰】

MDF validatorで作成したMDFの構造を確認。 DataGroup、ChannelGroupは想定通りの構成。 物理変換式もMDFに埋まっているので、同じく確認。 linear、algebraicを確認。 パラメータや式文字列が埋まっていることも確認。
事例

【Python】最小構成のMBD事例 第2章 その296【AsamMdf⑯】

MDFの全体構造を作るにはMDFクラスのインスタンス(MDFモジュール)が必要。 MDFモジュールにDataGroupを登録することでMDFとしてのデータ構造が完成する。 データ構造が完成しているMDFモジュールのsaveメソッドを呼び出すことで保存可能。 上書きオプションがあるのでお好みで利用。
事例

【Python】最小構成のMBD事例 第2章 その295【AsamMdf⑮】

前回までだとシグナルが存在しているだけでMDFのデータ構造にはなっていない。 今回はDataGroupに各種シグナルを登録することでMDFのデータ構造と同等の形となる。 DataGroupの下位にChannelGroupがあるが、AsamMdfとしてはSorted想定のため複数登録はできなそう。
事例

【Python】最小構成のMBD事例 第2章 その294【AsamMdf⑭】

シグナル生成の10msサンプリングと100msサンプリングの部分のコード作成。 10msサンプリングの方に複雑さが寄ってる状態。 各種物理値変換式のパターンを入れ込んでいるため。 100msサンプリングはDataGroupを複数にするために入れている。
事例

【Python】最小構成のMBD事例 第2章 その293【AsamMdf⑬】

MDFの各種物理変換仕様をやったので、折角なのでそれらもMDF生成実験に組み込む。 具体的には以下の変換パターンを構成に追加。 tabular。 tabular with interpolation。 value to text。 tabular with range。 value range to text。
事例

【Python】最小構成のMBD事例 第2章 その292【AsamMdf⑫】

MDF conversion仕様 value range to textを説明。 value to textの入力側が範囲指定できる。 value to textとtabular with rangeを合わせたような仕様。 tabular with rangeの出力側のphys_がtext_になった感じ。
事例

【Python】最小構成のMBD事例 第2章 その291【AsamMdf⑪】

MDF conversion仕様 tabular with rangeについて説明。tabular仕様とにているが、入力側をレンジ指定できる。tabular with range仕様ではdefault caseの値設定が必須。レンジ外の場合はこの値が採用される。この部分がtabular仕様の振る舞いとの大きな差。