【CAN-FD】車両診断通信 その93【python-can⑥】

【CAN-FD】車両診断通信 その93【python-can⑥】 車両診断通信

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

はじめに

python-canでCAN-FDのシミュレーション。
今回はCAN-FD用のPythonコードを動作させる。

登場人物

博識フクロウのフクさん

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

シミュレーション構成復習

フクさん
フクさん

予想以上に手間取ったので一旦シミュレーション構成を復習しておこう。

Python、CAN-FD、can.logger、can.player、python-can、BusMaster、Virtual CAN Bus
太郎くん
太郎くん

いろいろあって忘れかけてたけど、こんな感じだったねー。
まぁCANのときと一緒なんだけど。

シミュレーション

フクさん
フクさん

とりあえずPython用のターミナルを3つ立ちあげて以下のコマンドでそれぞれ動作する感じ。

> python -m can.logger -i vector -c 0 --fd -f canfdlog.asc
> python canfdrecv.py
> python canfdsend.py
太郎くん
太郎くん

動作せる順番もこれで良いね。

シミュレーション結果

フクさん
フクさん

シミュレーション結果はこうなる。

canfdsend.pyの出力

Send msg : Timestamp:        0.000000    ID: 00000111    X     F BS       DLC:  9    01 02 03 04 05 06 07 08 09
Recv msg : Timestamp: 1602731010.594256    ID: 00000222    X     F BS       DLC:  6    0a 0b 0c 0d 0e 0f           Channel: 0

canfdrecv.pyの出力

Recv msg : Timestamp: 1602731010.593276    ID: 00000111    X     F BS       DLC: 12    01 02 03 04 05 06 07 08 09 00 00 00    Channel: 0
Send msg : Timestamp:        0.000000    ID: 00000222    X     F BS       DLC:  6    0a 0b 0c 0d 0e 0f

can.loggerの出力

Begin Triggerblock
 0.000000 Start of measurement
 0.000000 1  111x            Rx   d 12 01 02 03 04 05 06 07 08 09 00 00 00
 0.000967 1  222x            Rx   d 6 0A 0B 0C 0D 0E 0F
End TriggerBlock
太郎くん
太郎くん

Pythonコード側の出力でFとかBSってのは、
FDF(FD Format Indicator)とBRS(Bit Rate Switch)のことかな?

フクさん
フクさん

そうだね。

太郎くん
太郎くん

can.loggerでは判断付かないけど、
ちゃんとCAN-FDとして送受信できてるってことだねー。

フクさん
フクさん

とりあえず、CAN-FDの送受信はここまでかな。

まとめ

フクさん
フクさん

まとめだよ。

  • シミュレーション構成復習。
  • CAN-FDの送受信のシミュレーション実施。

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

コメント

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