Dcm

AUTOSAR Dcm関連のタグページ。

Dcmは、診断データの流れを確保し、診断状態(特に診断セッションとセキュリティ状態)を管理する。
さらに、診断サービス要求がサポートされているかどうか、および診断状態に従って現在のセッションでサービスを実行できるかどうかをチェックする。

OSIレベル7では、ISO14229-1の広範なサービスを提供する。
さらに、SAE J1979およびISO 15031-5で定義されたOBDサービス$01~$0Aをサポートするメカニズムも提供。
これらのサービスにより、AUTOSARのOBD機能は、世界中のすべてのライトデューティーOBD規制(California OBDII、EOBD、Japan OBD、その他すべて)に対応することが可能。
OSIレベル5のDcmは、以下の仕様のネットワークに依存しない部分を処理する。

  • ISO15765-3: Implementation of unified diagnostic services (UDS on CAN)
  •  ISO15765-4: Requirements for emission-related systems, Chapter 5 ”SessionLayer”

AUTOSARアーキテクチャでは、Diagnostic Communication Manager はCommunication Services (Service Layer)に位置する。
Dcmはネットワークに依存しない。
ネットワーク固有の機能(CAN、LIN、FlexRay、MOSTなどのネットワーク固有の機能)はすべてDcmの外部で処理される。
PDUルーター(PduR)モジュールは、ネットワークに依存しないDcmとのインターフェイスを提供。
Dcmは、PduRモジュールから診断メッセージを受け取る。
要求された診断サービスを処理する一環として、Dcmは他のBSWモジュールや(RTEを介して)ソフトウェアコンポーネントと対話し、要求されたデータを取得したり、要求されたコマンドを実行する。
この処理はサービスごとに異なる。通常、Dcmは収集した情報をまとめ、PduRモジュールを通じてメッセージを返信する。

 

車両診断通信

[CAN-FD] Vehicle Diagnostic Communication Part 86 [Overview 2]

Simulation procedure and intuition explanation. CAN-FD control with python-can. CAN-FD diagnostic communication with can-isotp (ISO15765-2). CAN-FD diagnostic communication with AUTOSAR-CanTp (ISO15765-2). AUTOSAR-Dcm for CAN-FD diagnostic communication (ISO14229-1).
車両診断通信

[CAN-FD] Vehicle Diagnostic Communication Part 85 [Overview 1]

Switch from CAN to CAN-FD for the physical and data link layers. CAN-FD is described in Vector's "CAN/CAN-FD for Beginners".
車両診断通信

[Dcm] Vehicle Diagnostic Communication Part 84 [Simulation 23]

We saw a pattern of returning NRC$10 (generalReject) when NRC$78 (ResponsePending) exceeds a certain number of times. This specification is not specified in ISO 14229-1. However, it is likely to be a de facto standard. Therefore, it is assumed that it is incorporated as an AUTOSAR specification.
車両診断通信

[Dcm] Vehicle Diagnostic Communication Part 83 [Simulation 22]

Check the results of the WriteDataByIdentifier simulation. Confirmation of the message. Confirmation of CAN line. Often used in conjunction with ReadDataByIdentifier to check operation for reading after writing. NRC$78 returned atmosphere. In fact, NRC$78 is rarely followed three times.
車両診断通信

[Dcm] Vehicle Diagnostic Communication Part 82 [Simulation 21]

I wrote Python code to simulate WriteDataByIdentifier. WriteDataByIdentifier is often protected by session and security, so the main test is to test it.
車両診断通信

[Dcm] Vehicle Diagnostic Communication Part 81 [Simulation 20]

Check the results of the ReadDataByIdentifier simulation. Confirmation of the message. Check CAN line logs. Multi-DID specification is tricky. A request for a non-existent DID is an error. However, if the DID exists in the multi-DID, it is not an error. If the DID exists, it is not an error. However, an error may occur due to the response message length.
車両診断通信

[Dcm] Vehicle Diagnostic Communication Part 80 [Simulation 19]

I wrote Python code for simulation of ReadDataByIdentifier. Test pattern main related to ReadDataByIdentifier multi-DID. Multi-DID. Mix unsupported DIDs. Specify DIDs such that the response message length exceeds the maximum value.
車両診断通信

[Dcm] Vehicle Diagnostic Communication Part 79 [Simulation 18]

Check the results of the TesterPresents simulation. Verification of messages. Checking the CAN line log. TesterPresents with suppressPosRspMsgIndicationBit is a special AUTOSAR-Dcm specification. After S3 time extension in Dsl, the message is discarded and not passed to Dsd and Dsp. The result is different from ISO14229-1, but the practicality is more important.
車両診断通信

[Dcm] Vehicle Diagnostic Communication Part 78 [Simulation 17]

I wrote a Python code to simulate TesterPresents. Considering the main purpose of TesterPresents, SessionControl and SecurityAccess are also implemented. The main purpose is to suppress S3 timeouts.
車両診断通信

[Dcm] Vehicle Diagnostic Communication Part 77 [Simulation 16]

Check the results of the SecurityAccess simulation. Check the message level. Check the CAN line level. SecurityAccess behavior depends on session state and security state. SecurityAccess behavior depends on session state, security state, and S3 timeout.