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

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

バックナンバーはこちら。
https://www.simulationroom999.com/blog/model-based-of-minimum-2-backnumber/

はじめに

前回はxcp_canのCAN-FD対応のDAQ list関連の修正を実施。
namedtupleやint.from_bytesを使用していたこともあり、さほど難しい修正はなかった。

今回は残りのSTIM関連の修正を実施する。

登場人物

博識フクロウのフクさん

指差しフクロウ

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

STIMの送信レイアウト調整

太郎くん
太郎くん

前回はDAQ関連だったから、今回はSTIM関連の修正だね。

フクさん
フクさん

ノリはDAQの時と一緒だね。
まぁメソッドとしてはインターフェース仕様の違いはあるんで、
修正内容の雰囲気は違うけど。

フクさん
フクさん

まずSTIMの送信レイアウトの修正。
16bit長から32bit長への変更だ。

def stim( self, target,input):
	sndmsg = bytearray([0x01])
	sndmsg += target.to_bytes(4,byteorder="little", signed=True)
	sndmsg += input.to_bytes(4,byteorder="little", signed=True)
	self.xm.transport.send(sndmsg)
太郎くん
太郎くん

これはint.to_bytesを使ってたから2byte指定を4byte指定に変えるだけでOKなんだね。

フクさん
フクさん

うん。
int.to_bytesのおかげでチョロい修正となる。

STIM送信時のrawデータ変換(浮動小数点→1/65536)

フクさん
フクさん

次は物理値からrawデータへの変換だね。

太郎くん
太郎くん

DAQでやってたものも逆方向のやつか。

フクさん
フクさん

修正箇所は以下となる。

ram_update = [
	[100*0x10000,   0*0x10000],
	[100*0x10000,  60*0x10000],
	[100*0x10000,  80*0x10000],
	[100*0x10000,  95*0x10000],
	[100*0x10000, 110*0x10000],
	[100*0x10000,  95*0x10000],
	[100*0x10000, 110*0x10000],
	[100*0x10000, 100*0x10000],
	[  0*0x10000, 100*0x10000],
	[  0*0x10000,   0*0x10000],
]
太郎くん
太郎くん

あれ?
どっかの処理を直すのかとおもったけど、
送信データのリストを修正するのか。

フクさん
フクさん

うん。
まぁテストコードということもあって、
物理値って概念では管理してないんだよね。
ここらへんは仮想HILSで利用する際は注意が必要だろうね。

太郎くん
太郎くん

これはちゃんと覚えておかないと変なしくじりをしそうだ。

フクさん
フクさん

まぁしくじってもまともに動かないだけだからそんなに心配しなくても良いと思うよ。
何かが壊れるわけでも無いし。

太郎くん
太郎くん

そこら辺のシミュレーションならでは。だね。

フクさん
フクさん

次回は一旦このxcp_canの修正済みコードを確認して、
その後、実動作を確認って流れになるな。

まとめ

フクさん
フクさん

まとめだよ。

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

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

コメント

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