バックナンバーはこちら。
https://www.simulationroom999.com/blog/model-based-of-minimum-2-backnumber/
はじめに
前回はPyXCPのCAN-FD対応の動作確認向けのコード修正を実施。
CAN-FD対応だけであればコンフィグレーションのJSON記述を変更するだけだが、
動作確認を加味するとUPLOAD、DOWNLOADのサイズ、DAQ listのODTのデータ長を変える必要がある。
ODTのデータ長はODT_ENTRYの数を増やすことで伸ばす。
今回はこれらの動作確認となる。
登場人物
博識フクロウのフクさん
イラスト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
PyXCPのCAN-FD対応の動作確認結果
じゃー、とりあえず動作確認用のコードを走らすよー。
・・・動作確認中・・・
一応、一通り動作したっぽい。
あとは、CAN-FDならではの部分のCAN回線ログを見て、効果の確認だな。
UPLOAD
まずは。UPLOAD。
Timestamp: 1641109999.272150 ID: 0001 S DLC: 2 f5 20 Channel: 0
Timestamp: 1641109999.272838 ID: 0002 S DLC: 48 ff 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 Channel: 0
お!
DLCが48byteになってる。
これはちゃんとCAN-FDのフレームに切り替わってるね。
DOWNLOAD
次はDOWNLOAD。
Timestamp: 1641109999.318697 ID: 0001 S DLC: 64 f0 2f aa 55 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 Channel: 0
Timestamp: 1641109999.319721 ID: 0002 S F BS DLC: 1 ff Channel: 0
これもOKだね。
データ長が64byteまで拡張されているし、CAN-FDとして動作していると言えるだろう。
(でもなんか変だな・・・。)
DAQ
Timestamp: 1641125205.988688 ID: 0002 S Rx F BS DLC: 24 00 66 4c aa 55 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 Channel: 0
Timestamp: 1641125205.998575 ID: 0002 S Rx F BS DLC: 24 00 70 4c aa 55 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 Channel: 0
Timestamp: 1641125206.008545 ID: 0002 S Rx F BS DLC: 24 00 7a 4c aa 55 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 Channel: 0
Timestamp: 1641125206.018580 ID: 0002 S Rx F BS DLC: 24 00 84 4c aa 55 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 Channel: 0
Timestamp: 1641125206.028517 ID: 0002 S Rx F BS DLC: 24 00 8e 4c aa 55 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 Channel: 0
Timestamp: 1641125206.036930 ID: 0001 S Rx DLC: 5 01 11 22 33 44
これもOKか。
うーん、少しまずいことになってきたな・・・。
え゛
PyXCP。
どうやらCAN-FDのフレームは受け取れているようだが、
CAN-FDのフレームを送出できていないようだ。
CAN回線ログ上にPyXCP側から送信したフレームはF、BSのフラグが入っていない。
これはCAN-FDのフレームになっていないってことだ。
えーーー!!
なんでー!
これはかなり厄介な誤算だな。
ど、どうするの?!
PyXCPがCAN-FDできる前提で話が進んでいるのに!
PyXCPもいろいろversionがあるから、少し調べて来よう。
頼むよ~~~~。
まとめ
まとめだよ。
- PyXCPのCAN-FD対応の動作確認の結果を確認。
- 一見するとうまく動いているように見える。
- が、どうやらPyXCP側からの送信フレームがCAN-FDになっていない。
- 少なくともCAN-FDフレームの受信はできている。
- PyXCPもVersionがあるので、Version別の挙動を確認してみる。
バックナンバーはこちら。
コメント