【CanTp】車両診断通信 その40【シミュレーション㉗】

【CanTp】車両診断通信 その40【シミュレーション㉗】 車両診断通信

バックナンバーはこちら。
https://www.simulationroom999.com/blog/diagnostic-communication-backnumber/

はじめに

ISO-TPのシミュレーションをしよう。のシリーズ。
ついに当初の想定する構成でシミュレーションをする回。
のBSパラメータを変化させた場合の挙動。

登場人物

博識フクロウのフクさん

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

BSパラメータの変更

フクさん
フクさん

正真正銘、シミュレーションのシリーズとしては今回が最後だ。たぶん。

太郎くん
太郎くん

(「たぶん」って言ってるぞ・・・。本当は前回で終わらせる予定だったんだろうなぁ。)

フクさん
フクさん

前回言ったようにFC(FlowControl)のBS(BlockSize)のパラメータを変更する。
オフボードテスタ側が送出するBSが4
疑似ECU側が送出するBSが1
の想定だ。

太郎くん
太郎くん

BSの話は以下で復習できるよ。

BSパラメータの変更のログ

フクさん
フクさん

じゃ、ログを展開。
前回と同様、ちょっと加工している。

Begin Triggerblock
 0.000000 Start of measurement
 
 // SFリクエスト、SFレスポンス
 0.000000 1  18DA10F1x       Rx   d 8 03 22 01 0A CC CC CC CC	// SF
 0.001852 1  18DAF110x       Rx   d 8 06 62 01 0A 00 01 02 55	// SF
 
 // SFリクエスト、MFレスポンス
 0.200548 1  18DA10F1x       Rx   d 8 07 22 01 0A 01 0A 01 0A	// SF
 0.204890 1  18DAF110x       Rx   d 8 10 10 62 01 0A 00 01 02	// FF
 0.206496 1  18DA10F1x       Rx   d 8 30 04 00 CC CC CC CC CC	// FC
 0.207487 1  18DAF110x       Rx   d 8 21 01 0A 00 01 02 01 0A	// CF
 0.208470 1  18DAF110x       Rx   d 8 22 00 01 02 55 55 55 55	// CF
 
 // MFリクエスト、MFレスポンス
 0.400999 1  18DA10F1x       Rx   d 8 10 11 22 01 0A 01 0A 01	// FF
 0.401891 1  18DAF110x       Rx   d 8 30 01 00 55 55 55 55 55	// FC
 0.403939 1  18DA10F1x       Rx   d 8 21 0A 01 0A 01 0A 01 0A	// CF
 0.404881 1  18DAF110x       Rx   d 8 30 01 00 55 55 55 55 55	// FC
 0.406954 1  18DA10F1x       Rx   d 8 22 01 0A 01 0A CC CC CC	// CF
 0.413303 1  18DAF110x       Rx   d 8 10 29 62 01 0A 00 01 02	// FF
 0.415973 1  18DA10F1x       Rx   d 8 30 04 00 CC CC CC CC CC	// FC
 0.416883 1  18DAF110x       Rx   d 8 21 01 0A 00 01 02 01 0A	// CF
 0.417931 1  18DAF110x       Rx   d 8 22 00 01 02 01 0A 00 01	// CF
 0.418882 1  18DAF110x       Rx   d 8 23 02 01 0A 00 01 02 01	// CF
 0.420954 1  18DAF110x       Rx   d 8 24 0A 00 01 02 01 0A 00	// CF
 0.422027 1  18DA10F1x       Rx   d 8 30 04 00 CC CC CC CC CC	// FC
 0.422847 1  18DAF110x       Rx   d 8 25 01 02 01 0A 00 01 02	// CF
End TriggerBlock
太郎くん
太郎くん

やっぱりかなり複雑なハンドシェイクになったねぇ。

フクさん
フクさん

そうだね。
このBSの仕様が結構、車両診断通信の設計と実装を難しくしているところはあるね。

太郎くん
太郎くん

BSとかって結構使われるのかな?

フクさん
フクさん

どうだろうね?
私はあまり見たことは無いけど、
ECU側の性能があまり高くない場合は、

STminやBSでスループットのコントロールが必要な場面はあるのかもしれない。

太郎くん
太郎くん

うーん、やっぱりECU側の制約依存による仕様の振れ幅ってやつだねー。
シンプルな方が良いんだけど、それだと対応できないECUが出てくるかもしれないから、仕様に幅を持たせないといけないんだろうなー。

フクさん
フクさん

ここら辺は車両の宿命だね。

シリーズまとめ

フクさん
フクさん

普通だったらCANoe使うところをあえてPythonでやったわけなんだけど
どうだった?

太郎くん
太郎くん

最初は良く分からなかったけど、
動き始めたら割とイメージ湧いたかな。
まぁさすがにCANoeの方がいろいろやり易いんだろうけど。

フクさん
フクさん

そうだね。
ログを取りながら、何かするって場合はCANoeの方がやり易いだろうねー。
今回はPythonように複数のターミナルを起動してごちゃごちゃやることになったんで、結構手間だったと思う。

太郎くん
太郎くん

ここら辺は費用対効果依存かな。
ちょっと試す分にはPythonで十分で、
結構ガッツリテストする場合はCANoeの方が良いってイメージ。

フクさん
フクさん

あとは、うまく併用するって考え方もありかもね。

太郎くん
太郎くん

あ、
CANoeとPython-canって併用できるんだ?

フクさん
フクさん

うん。
今回は試してないけど、一応予備調査の時に併用できることは確認済み

太郎くん
太郎くん

ほー。
どっかのタイミングで試してみよう。

フクさん
フクさん

というわけで、ISO15765-2ことIsoTp、CanTpのシミュレーションは終了~。

まとめ

フクさん
フクさん

まとめだよ。

  • FC(FlowControl)のBS(BlockSize)パラメータを弄ったシミュレーション実施。
  • シリーズのまとめ。
    • CANoeとPythonの共存したテスト環境とか便利かもしれない。

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

コメント

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