バックナンバーはこちら。
https://www.simulationroom999.com/blog/model-based-of-minimum-2-backnumber/
はじめに
xcp_canクラスのCAN-FD向け改造はPyXCPのコンフィグレーション変えるのみ。
・・・のはず。
あまり自信も無いので、JupyterNoteBookでPyXCPを呼び出して動作確認をする。
AUTOSAR-XCPのCAN-FD対応も確認できるので一石二鳥とも言える。
登場人物
博識フクロウのフクさん
イラスト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対応
今回はPyXCPでCAN-FD対応ができるか確認するんだよね?
そうだね。
まぁ以前実施したAUTOSAR-XCP向けのPyXCP-AUTOSAR_test.ipynbを元にちょい修正するだけなんだけど。
PyXCP-AUTOSAR_test.ipynb
前回も出たけど、コンフィグレーションのJSON記述を以下にすればOKなのかな?
JSON = """{
"TRANSPORT": "CAN",
"CAN_DRIVER": "Vector",
"CAN_USE_DEFAULT_LISTENER": true,
"CHANNEL": "0",
"CAN_ID_MASTER": 2,
"CAN_ID_SLAVE": 1,
"CAN_ID_BROADCAST": 256,
"MAX_DLC_REQUIRED": false,
"CREATE_DAQ_TIMESTAMPS": true,
"SERIAL": 0,
"BITRATE": 500000,
"FD":true,
"DATA_BITRATE": 2000000,
"APP_NAME": "PyXCP-CANFD"
}"""
うん。
これだけでOKなはずだ。
じゃー、さっそくその部分だけ弄って動作確認してしまおう。
動作確認範囲
まず動作確認範囲だが、
基本的な流れはCANの時と全く一緒なので、
CAN-FDならではの部分だけピックアップしてCAN回線ログを見てみることになると思う。
で、具体的には?
DOWNLOADとUPLOADのサイズを30byteにするのと、
DAQのODTのデータ長を8byte越えにする。
とすると、コードの修正としてはこんなところかな。
DOWNLOADとUPLOAD部分
xm.setMta(0x0000,0xff)
bhv = xm.upload(30)
print(bhv.hex())
bhv = bytearray(bhv)
bhv[0] = 0xAA
bhv[1] = 0x55
xm.setMta(0x0000,0xff)
xm.download(bhv)
xm.setMta(0x0000,0xff)
bhv = xm.upload(30);
print(bhv.hex())
DAQ list構築の部分
DaqEntry = namedtuple("DaqEntry", "daq odt entry bitoff size ext addr")
de0 = (
DaqEntry(daq=0, odt=0, entry=0, bitoff=255, size=4, ext=0xff, addr=0x00000000),
DaqEntry(daq=0, odt=0, entry=1, bitoff=255, size=4, ext=0xff, addr=0x00000004),
DaqEntry(daq=0, odt=0, entry=2, bitoff=255, size=4, ext=0xff, addr=0x00000008),
DaqEntry(daq=0, odt=0, entry=3, bitoff=255, size=4, ext=0xff, addr=0x0000000C),
DaqEntry(daq=0, odt=0, entry=4, bitoff=255, size=4, ext=0xff, addr=0x00000010),
DaqEntry(daq=1, odt=0, entry=0, bitoff=255, size=4, ext=0xff, addr=0x00000004),
)
ふむ。
それでOKだろう。
次回は実際に動作確認してみよう。
まとめ
まとめだよ。
- PyXCPのCAN-FD対応はコンフィグレーションのJSON記述部分だけではあるが、動作確認用に修正する部分もある。
- UPLOAD、DOWNLOADのサイズ。
- DAQ listのODTのサイズ。
- 上記の方針に合わてコード修正実施。
- DAQ listはODT_ENTRYの数を増やした。
バックナンバーはこちら。
コメント