Measurement and Calibration Protocol XCP - Fundamentals

測定およびキャリブレーションプロトコルXCP - 基礎

開発に携わる技師や技術者にとって、優れた標準規格と、ECUを最適にパラメーター化できるツールはありがたいものです。そのような標準規格およびツールには、変数やメモリー内容への柔軟なアクセスと、それらの読取り/書込みを可能にすることが求められます。1990年代にこれを目的として開発されたのが、自動車メーカーに依存しない、CAN Calibration Protocol (CCP) です。当時、車載ネットワークといえばCANが唯一の支配的なシステムでした。

カーエレクトロニクスの発展と共に、LIN、MOST、FlexRayなど、その他のバスシステムの使用が拡大しましたが、CANバス限定のCCPではこれらの新しいバスシステムには対処できないため、XCPプロトコルが開発されました。

ASAMによる標準化とその利点

XCP (XUniversal Measurement and Calibration Protocol) は、CCPと同じくASAM (Association for Standardization of Automation and Measuring Systems) によって考案され、2003年に標準規格として策定されました。ベクターはそのリリースに際して重要な役割を果たしています。
「X」は変数と、交換可能なトランスポートレイヤーを表しています。ASAMの作業部会では、多種多様なアプリケーションに用いられる汎用的な通信ソリューションのニーズを充足するために、以下の基準を重点的に検討しました。

  • CAN、FlexRay、Ethernet、SPI、SCI、USBなど、多彩なトランスポートレイヤーのサポート
  • ECUでのリソースの利用効率が高い(動的なDAQリスト)
  • 同期的なデータスティミュレーション(バイパス)
  • 起動時の測定のサポート(再開モード)
  • ブロック転送による通信の最適化
  • ECUで使用可能なXCP機能のポーリング(プラグ&プレイ)
  • ECU(スレーブ)のタイムスタンプを測定することによる、より正確な測定データ収集

XCPは2つのレイヤーからなるプロトコルであり、プロトコルおよびトランスポートレイヤーは常に分離されています。また、シングルマスター/マルチスレーブのアプローチを取っています。

ASAMによる標準化とその利点

プロトコルレイヤーとトランスポートレイヤー

XCPでは、異なるトランスポートレイヤー上で同じプロトコルレイヤーを使用できます。このプロトコルは、使用するネットワークのタイプに依存せずに動作する、汎用的な測定/キャリブレーションプロトコルです。ASAMは以下のトランスポートレイヤーを標準規格として規定しています(2016年10月現在)。

  • XCP on CANおよびCAN FD
  • XCP on SxI(SPI、SCI)
  • XCP on Ethernet(TCP/IPおよびUDP/IP)
  • XCP on USB
  • XCP on FlexRay

Graphic XCP protocol layer and transport layers

プロトコルレイヤーとトランスポートレイヤー

シングルマスター/マルチスレーブのコンセプト

測定/キャリブレーションシステムはXCPマスターの役割を引き受け、ECUはスレーブとして動作します。マスターとスレーブは統合されているXCPドライバーを介して相互に通信します。各スレーブにはA2L形式のECU記述ファイルがあり、そこではたとえば、変数のシンボル名とそれに関連付けられているアドレス範囲、データの物理的な意味、使用されるチェックサムの方法などが指定されています。XCPマスターはこれらのA2L記述ファイルから、必要なすべての情報を読み取ることができます。

XCP経由の通信では、CTO (Command Transfer Object) とDTO (Data Transfer Object) が区別されます。たとえば、マスターはバス上でCTOを使用してECUにコマンドを送り、ECUは要求されたサービスを実行した後、同じ経路を使用して確認応答を送ります。使用可能なCTOには、CMD(コマンド)、RES(レスポンス)、ERR(エラー)、EV(イベント)、SERV(サービス依頼プロセッサー)などがあります。XCPスレーブのメモリーからの測定変数の読取りや、メモリーへの値の書込みをイベント駆動で行うには、DAQ(データ取得)およびSTIM(スティミュレーション)のデータ転送オブジェクトを使用します。

Graphic XCP communication model with CTO/DTO

シングルマスター/マルチスレーブのコンセプト

開発プロセス全体での測定とキャリブレーション

XCPを用いる測定およびキャリブレーションでは、そのコードやモデル(Simulink、ラピッドプロトタイピングハードウェア、HIL、SILなど)をどの環境で実行するかは重要ではありません。すなわち、ECUの制御アルゴリズムは、いつも同じ1つのツールで、同じような作業ステップを実行して最適化することができるのです。これによってコンフィギュレーション、測定データ、記述ファイルなどを開発プロセスの全ての段階において使用したり、交換したりすることが可能になります。
CANapeなどのXCPマスターは、以下のような異なるXCPスレーブと同時に通信することができます。

  • ECUまたはECUプロトタイプ
  • デバッグインターフェイスやメモリーエミュレーターなどの測定およびキャリブレーションハードウェア
  • ラピッドプロトタイピングハードウェア
  • HiL/SiLシステム

Bild XCP Slaves

開発プロセス全体での測定とキャリブレーション
このページはお役に立ちましたか?
E-Mail:

コメント