ISO-15765

ISO-15765関連のタグページ。

ISO 15765-2、またはISO-TP(Transport Layer)は、CANバスを介してデータパケットを送信するための国際規格である。このプロトコルは、CANフレームの8バイトの最大ペイロード長を超えるメッセージの転送を可能にする。ISO-TPは長いメッセージを複数のフレーム(マルチフレーム)に分割し、個々のフレームの解釈と受信者による完全なメッセージパケットへの再構成を可能にするメタデータを付与する。一つのメッセージパケットについて最大4095バイトのペイロードを搬送できる。

OSI参照モデルでは、ISO-TPはレイヤー3(ネットワーク層)と4(トランスポート層)をカバーする。

ISO-TPの最も一般的な適用例は、KWP2000やUDSを使用したOBD-2搭載車両との診断メッセージの転送であるが、他のアプリケーション固有のCAN実装で広く使用されている。

ISO-TPは、CAN IDのみを使用したアドレス形式(いわゆるNormal Addressing)や、いわゆるExtended Addressingという独自のアドレス形式で操作できる。Extended addressingは、各フレームの最初のデータバイト(0バイト目)をアドレスの追加要素として使用し、アプリケーション層ペイロードを1バイト減らす。簡単のため、以降のプロトコルの説明では8バイトのCANフレームを使用した Normal Addressing に基づいて説明する。ISO 15765-2プロトコルでは、合計で6種類のアドレス形式が利用可能である。

ISO-TPは、8バイトCANフレームのペイロードデータに1バイト以上のメタデータバイトを付加し、ペイロード長を1フレームあたり7バイト以下に削減する。メタデータは、Protocol Control Information(PCI)と呼ばれる。PCIは1~3バイトである。先頭フィールドは、フレームタイプを示す4ビットで、これによりPCI長を特定できる。

車両診断通信

【たぶん最終回】車両診断通信 その100【振り返り】

たぶん最終回。簡単に振り返りをやってみる。車両診断通信はユースケースが多岐に分かれるという特性上話もその分広くなる。反面。XCPなどは開発に特化している。本シリーズは一旦終了。
車両診断通信

【CAN-FD】車両診断通信 その99【AUTOSAR③】

AUTOSARでのCAN-FDのシミュレーションの実施と結果。AUTOSAR-Dcmのシミュレーション実施。メッセージ最大長が変わるくらいで基本は同じ。AUTOSAR-CanTpのシミュレーション実施。リクエスト、レスポンスともにCAN-FDのルールに則った振る舞いをしていた。
車両診断通信

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

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

【CAN-FD】車両診断通信 その97【AUTOSAR①】

AUTOSAR-CanTpとAUTOSAR-DcmのCAN-FDシミュレーションは一括でやってしまう方針。CanTpをr4.xのA-ComStackを使用していたのはCAN-FDに対応するため。(伏線回収!)シミュレーション構成はCANの時と全く一緒。レイヤードアーキテクチャの恩恵。
車両診断通信

【CAN-FD】車両診断通信 その96【ISO-TP③】

can-isotpでCAN-FDのシミュレーション結果。CAN回線ログとった。SingleFrameの確認。7byte以下のSingleFrame。8byte以上のSingleFrame。FirstFrameの確認。4095byte以下のFirstFrame。4096byte以上のFirstFrame。
車両診断通信

【CAN-FD】車両診断通信 その95【ISO-TP②】

can-isotpでCAN-FDのシミュレーションに向けて。送受信するPythonコードを書く。リクエスト用のPythonコード書いた。8byte以上のSingleFrame。4096以上のMultiFrame。レスポンス用のPythonコード書いた。max_frame_sizeパラメータを弄って受信できるサイズを拡張した。
車両診断通信

【CAN-FD】車両診断通信 その94【ISO-TP①】

can-isotpでCAN-FDのシミュレーションに向けて。シミュレーション構成とCAN-FDになった場合のフレーム構成の変化について。can-isotpでもたぶんCAN-FDはできる。拡張SingleFrameと拡張FirstFrameの構成を学んだ。