【CAN-FD】車両診断通信 その98【AUTOSAR②】

【CAN-FD】車両診断通信 その98【AUTOSAR②】 車両診断通信

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

はじめに

AUTOSARでのCAN-FDのシミュレーションに向けて。
AUTOSAR-CanTpとAUTOSAR-Dcmのコンフィグレーションを修正。

登場人物

博識フクロウのフクさん

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

AUTOSAR-CanTpのCAN-FD向けコンフィグレーション

フクさん
フクさん

ぱっとコンフィグレーションを見せるとこんな感じかな。

const NSDU_INIB nsdu_inib_table[2] = {
	{
		0,				/* 所属するチャネル番号 */
		CANTP_SEND,		/* NSDU送受信方向 */
		1000,			/* N_Ar/N_Asタイムアウト値 */
		1000,			/* N_Br/N_Bsタイムアウト値 */
		1000,			/* N_Cr/N_Csタイムアウト値 */
		CANTP_ON,		/* 通信中止の許可/禁止 */
		CANTP_NORMALFIXED,	/* アドレスフォーマット */
		CANTP_ON,		/* Paddingの使用有無 */
		CANTP_CANFD_PHYSICAL,	/* N-SDUの通信タイプ */
		0,				/* N_AE */
		0x10,			/* N_SA */
		0xF1,			/* N_TA */
		62,				/* 最大SDUデータ長(シングルフレーム) */
		65535,			/* 最大SDUデータ長(マルチフレーム) */
		62,				/* SF最大データ長 */
		62,				/* FF最大データ長 */
		63,				/* CF最大データ長 */
		&nsdu_inib,		/* 送受信別NSDU初期化ブロック */
	},
	{
		1,				/* 所属するチャネル番号 */
		CANTP_RECEIVE,		/* NSDU送受信方向 */
		1000,			/* N_Ar/N_Asタイムアウト値 */
		1000,			/* N_Br/N_Bsタイムアウト値 */
		1000,			/* N_Cr/N_Csタイムアウト値 */
		CANTP_ON,		/* 通信中止の許可/禁止 */
		CANTP_NORMALFIXED,	/* アドレスフォーマット */
		CANTP_ON,		/* Paddingの使用有無 */
		CANTP_CANFD_PHYSICAL,	/* N-SDUの通信タイプ */
		0,				/* N_AE */
		0xF1,			/* N_SA */
		0x10,			/* N_TA */
		62,				/* 最大SDUデータ長(シングルフレーム) */
		65535,			/* 最大SDUデータ長(マルチフレーム) */
		62,				/* SF最大データ長 */
		62,				/* FF最大データ長 */
		63,				/* CF最大データ長 */
		&rx_nsdu_inib,		/* 送受信別NSDU初期化ブロック */
	}
};
太郎くん
太郎くん

N-SDUの通信タイプが変わって、
各データ長がCAN-FD向けに変わった感じだね。

フクさん
フクさん

これだけでCAN-FDの診断通信に対応するはずだよ。

太郎くん
太郎くん

ちなみにCAN版のAUTOSAR-CanTpのコンフィグレーションは以下で話してるから比較してみるのも良いかも。

AUTOSAR-DcmのCAN-FD向けコンフィグレーション

フクさん
フクさん

実はいじるところはほぼ無くてー。
DCM_BUF_SIZEを調整すれば終了。

#define DCM_BUF_SIZE	4095
↓
#define DCM_BUF_SIZE	65535
太郎くん
太郎くん

え?これだけ?
まぁCAN-FDになってメッセージ長が大きくなったからそれに合わせてバッファサイズも大きくしたってことなんだろうけど。

フクさん
フクさん

実際には4Gbyteまでは大きくしてOKだけど、
CanTpのコンフィグレーション側で65535byteを最大値にしたんで、
それに合わせた感じ。

太郎くん
太郎くん

あ、確かにCanTpの方も65535byteになってるね。

太郎くん
太郎くん

DcmのDCM_BUF_SIZEに関係する話は以下で話したね。

フクさん
フクさん

これで大体準備はそろった感じかなー。

まとめ

フクさん
フクさん

まとめだよ。

  • AUTOSAR-CanTpのコンフィグレーションをCAN-FD用に修正。
  • AUTOSAR-DcmのコンフィグレーションをCAN-FD用に修正。

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

コメント

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