事例

【ASAM】最小構成のMBD事例 第2章 その273【MDF②】

MDFの説明はVersion4のみとする。ASAM仕様として公開されてるので妥当な判断。MDFのデータ構造について説明。基本はASAM公式サイトのMDFで説明されている。それだけだととっかかりが無さ過ぎるので、簡単に説明する。MDF内部はHD,DG,CG,CN,DTがツリー構造を取っている。
事例

【ASAM】最小構成のMBD事例 第2章 その272【MDF①】

Python環境下の仮想HILSで収録データが無いことが問題に。さらに収録データフォーマットはMDFが望ましいらしい。MDFはASAMで規定されてる標準仕様。ただしVersion4がASAM仕様で、それより以前のVersionは非ASAM。Version3,Version4のどちらかについて解説していく方向にしたい。
事例

【CANoe】最小構成のMBD事例 第2章 その271【仮想ECU連携⑧】

CANoe仮想HILS、AUTOSAR-XCP仮想ECUの実験構成を再確認上記の動作確認実施。かなりキレイな波形が取れている。CANoe環境であれば1msオーダーの応答性が確保可能。Python環境、CANoe環境を検証プロセスに含めると確保難な設備利用の回数を減らす効果が期待できる。
事例

【CANoe】最小構成のMBD事例 第2章 その270【仮想ECU連携⑦】

AUTOSAR-XCPこと仮想ECU側の修正コード開示。PID制御器の処理周期修正。ecu_t10ms_job()関数からecu_t1ms_job()関数へ移動。PID制御器か内の微分、積分の演算で使用しているΔtを修正。#define dTを0.001に変更。
事例

【CANoe】最小構成のMBD事例 第2章 その269【仮想ECU連携⑥】

AUTOSAR-XCP側こと仮想ECUもちょっとだけ修正が必要。修正しなくても動くがCANoe側が1ms駆動なので仮想ECU側も1ms駆動にしたい。修正は以下。PID制御器の処理周期を1ms化。PID制御器の演算用の想定処理周期パラメータを1ms化。
事例

【CANoe】最小構成のMBD事例 第2章 その268【仮想ECU連携⑤】

ネットワークノード(Controller)に追加するXCP DAQ/STIM関連のCAPLコード開示。CAPLのCAN送信/受信の機能を使って、無理やりXCPを実現。on message 2でDAQ受信を実現、stimでSTIM送信を実現。同時にシグナル単位の単位変換も行っている。
事例

【CANoe】最小構成のMBD事例 第2章 その267【仮想ECU連携④】

CANoeテストノードに記載するXCPセットアップ関連のCAPLコード開示。ネットワークノードはイベントドリブン型、テストノードはシーケンシャル型とやや性格が違う。といっても、テストノードでもCAN送信/受信イベントは受け取れるので気にするほどの差ではない。
事例

【CANoe】最小構成のMBD事例 第2章 その266【仮想ECU連携③】

CANoeでXCP関連の処理を追加する際の方針を確認。複数のノードにXCP関連処理を記載するので連携が必要。ノード間連携はCANoeシステム変数を使うのが最も手っ取り早い。CANoeシステム変数の追加方法を確認。CAPLからシステム変数にアクセスする際は変数名の目に「@」をつける。
事例

【CANoe】最小構成のMBD事例 第2章 その265【仮想ECU連携②】

CANoe上の指令器をdisable。シミュレーション設定ウィンドウのノード上でdisable操作が可能。CANOe上にテストノード追加。シミュレーション設定ウィンドウのバス上で追加操作可能。今回はCAPLテストモジュールを使用。.NET、XMLのテストモジュールは気が向いたら調べる。
事例

【CANoe】最小構成のMBD事例 第2章 その264【仮想ECU連携①】

残り作業はXCPだけではない。構造が複雑なので一旦整理。Virtual CAN BusとCANoeシミュレーションバスは直結していると思って良い。CANoe仮想HILSと仮想ECU連携のロードマップ提示。指令器disable。テストノード追加。XCP関連セットアップ。DAQ/STIM関連。