モデルベース開発

事例

【XCP】最小構成のMBD事例 第2章 その240【CAN-FD⑰】

xcp_canfdクラス動作確認を実施。 問題無く動作。 念のためxcp_canの時の動作確認結果とも比較。 同じ動きをしていることが確認できる。 CAN-FD回線モニタも実施し、CAN-FDフレームのレベルでも確認。 こちらも想定通りの動作をしていることを確認。 PID制御器もおおよそ狙い通り動いてそう。
事例

【XCP】最小構成のMBD事例 第2章 その239【CAN-FD⑯】

xcp_canクラス改めxcp_canfdクラスを作成。 xcp_canfdクラスのソースコードを開示。 前回までの修正分を盛り込んだのみ。 コンフィグレーション、ODT_ENTRY構成、STIMレイアウト、DAQレイアウト、STIM送信用データ。 次回は、これを実際に動作させてみる。
事例

【XCP】最小構成のMBD事例 第2章 その238【CAN-FD⑮】

STIMの送信レイアウト調整した。 int.to_bytesを使用指定していたので一撃で修正完了。 STIM送信時のrawデータ変換(浮動小数点→1/65536)を実施。 xcp_canのテストコードとしては送信データをリスト管理しているだけなので、そのリスト修正するのみ。 仮想HILS修正時に要注意。
事例

【XCP】最小構成のMBD事例 第2章 その237【CAN-FD⑭】

DAQ listのODT_ETNRYのデータ長変更(16bit→32bit)。 namedtupleを使用していたので修正は楽。 DAQの受信レイアウト調整。 int.from_bytesを使用してるので16bitから32bitへの変更は楽。 DAQ受信データの物理値変換(1/65536→浮動小数点)。
事例

【XCP】最小構成のMBD事例 第2章 その236【CAN-FD⑬】

xcp_canクラス改造箇所を整理。 予想以上に多いが、仮想HILSにXCPの都合を見せないための部分なので修正内容が集中し易い。 コンフィグレーション用のJSON記述の修正。 事前のPyXCP CAN-FD実験を元に修正。 SERIALを消して、FDとDATA_BITRATEと追加。
事例

【XCP】最小構成のMBD事例 第2章 その235【CAN-FD⑫】

PyXCP Version0.16.5にてCAN-FDの動作確認。 UPLOAD、DOWNLOAD、DAQ、STIMを確認。 基本的にOK。 PyXCP側からのCAN-FDはBitrate_switchが無効になっているが、現状のPyXCPの仕様上やむを得ない。 この結果を元にxcp_canクラスを改造予定。
事例

【XCP】最小構成のMBD事例 第2章 その234【CAN-FD⑪】

PyXCP Version0.16.5にてCAN-FDの動作確認再開。 まずはコンフィグレーション用JSON記述を修正。 SERIALパラメータを削除。 SERIALパラメータはデバイスの製品シリアルを指定するもの。 CAN-FD対応有無を判断しているようで、この判定でCAN-FD不可側になってるように見える。
事例

【XCP】最小構成のMBD事例 第2章 その233【CAN-FD⑩】

PyXCPのVersion別CAN-FD対応状況を確認。 かなり、いろいろ変化してい居る。 SERIALパラメータがあると、CAN-FDフレーム送信でエラーが発生する。 よって、現時点では0.16.5のVersionを使用する。 CAN-FDフレーム送信可能、DLC可変。
事例

【XCP】最小構成のMBD事例 第2章 その232【CAN-FD⑨】

PyXCPのCAN-FD対応の動作確認の結果を確認。 一見するとうまく動いているように見える。 が、どうやらPyXCP側からの送信フレームがCAN-FDになっていない。 少なくともCAN-FDフレームの受信はできている。 PyXCPもVersionがあるので、Version別の挙動を確認してみる。
事例

【XCP】最小構成のMBD事例 第2章 その231【CAN-FD⑧】

PyXCPのCAN-FD対応はコンフィグレーションのJSON記述部分だけではあるが、動作確認用に修正する部分もある。 UPLOAD、DOWNLOADのサイズ。 DAQ listのODTのサイズ。 上記の方針に合わてコード修正実施。 DAQ listはODT_ENTRYの数を増やした。