OBD-II PID (オンボード診断 パラメータID ) は、診断ツールとして使用され、車両からデータを要求するために使用するコードです。
SAE規格 J1979 では、多くの OBD-II PID が定義されています。北米で販売されるすべてのオンロード車両およびトラックは、主に州が義務付けている排出ガス 検査のために、これらのコードのサブセットをサポートすることが義務付けられています。メーカーは、自社の車両に固有の追加の PID も定義しています。義務付けられてはいませんが、多くのオートバイも OBD-II PID をサポートしています。
1996年に、軽量車両(8,500ポンドまたは3,900kg未満)が最初に義務付けられ、2005年には中型車両(8,500〜14,000ポンドまたは3,900〜6,400kg)がそれに続きました。[1]どちらもSAE J1962で定義された標準化されたデータリンクコネクタを介してアクセスする必要があります。
2010年以降に製造され、米国で販売される[1]大型車両(14,000ポンドまたは6,400kg超)は、CARBのタイトル13 CCR 1971.1に従って、SAE標準J1939-13(丸型診断コネクタ)を介してOBD-II診断をサポートすることが許可されています。北米の一部大型トラックは、マックトラックやボルボトラックなど、乗用車で一般的なSAE J1962 OBD-II診断コネクタを使用していますが、乗用車で使用されている11ビットヘッダーとは異なり、29ビットのCAN識別子を使用しています。
サービス / モード
最新の OBD-II 標準 SAE J1979 には、10 種類の診断サービスが記載されています。2002 年より前の J1979 では、これらのサービスを「モード」と呼んでいました。これらは次のとおりです。
自動車メーカーはすべてのサービスをサポートする必要はありません。各メーカーは、ハイブリッド電気自動車(HEV)のトラクションバッテリーの電圧など、その他の情報について、#9より上の追加サービス(例:SAE J2190で定義されたFord/GMのサービス22、Toyotaのサービス21)を定義することができます。 [ 2]
非OBD UDSサービスは、ID 範囲の重複を避けるために 0x10 から始まります。
標準 PID
以下の表は、SAE J1979 で定義されている標準 OBD-II PID を示しています。各 PID の予想される応答と、応答を意味のあるデータに変換する方法に関する情報が示されています。繰り返しになりますが、すべての車両がすべての PID をサポートするわけではなく、OBD-II 標準で定義されていないメーカー定義のカスタム PID が存在する場合があります。
サービス 01 と 02 は基本的に同一ですが、サービス 01 は現在の情報を提供するのに対し、サービス 02 は最後の診断トラブル コードが設定された時点で取得された同じデータのスナップショットを提供する点が異なります。例外は、サービス 01 でのみ使用可能な PID 01 と、サービス 02 でのみ使用可能な PID 02 です。サービス 02 PID 02 がゼロを返す場合、スナップショットは存在せず、サービス 02 のその他のデータはすべて無意味になります。
ビットエンコード表記を使用する場合、C4 のような数量はデータ バイト C のビット 4 を意味します。各ビットには 0 から 7 までの番号が付けられているため、7 が最上位ビットで、0 が最下位ビットです (以下を参照)。
サービス01- 現在のデータを表示
サービス02- フリーズフレームデータを表示
サービス02はサービス01と同じPIDを受け入れ、同じ意味を持ちますが[5] 、提供される情報はフリーズフレーム[6]が作成されたときのものです。PID $02はフリーズフレームをトリガーしたDTCを取得するために使用される ことに注意してください。
メッセージのデータ セクションでフレーム番号を送信する必要があります。
サービス03- 保存された診断トラブルコード (DTC) を表示する
サービス04- 診断トラブルコードと保存された値をクリアする
サービス05- テスト結果、酸素センサーモニタリング(非CANのみ)
サービス09- 車両情報のリクエスト
- ^ abcdefgh 数式列の文字 A、B、C などは、データの 1 番目、2 番目、3 番目などバイトを表します。たとえば、2 つのデータ バイトの場合は
0F 19、、A = 0Fおよび ですB = 19。(?) が表示される場合は、矛盾した情報または不完全な情報があったことを示します。 - ^ 2010年モデルから、カリフォルニア大気資源局は全てのディーゼル車に総エンジン時間を供給することを義務付けた[4]
- ^ カリフォルニア州大気資源局は2019年モデルから全ての車両に走行距離計の装備を義務付けた[4]
ビット単位でエンコードされたPID
上記の表の PID の一部は、単純な式では説明できません。これらのデータのより詳しい説明は、次のとおりです。
サービス 01 PID00- サポートされているPIDを表示
この PID の要求は 4 バイトのデータ (ビッグ エンディアン) を返します。MSB から LSB までの各ビットは、次の 32 個の PID の 1 つを表し、その PID がサポートされているかどうかを指定します。
たとえば、車の応答がBE1FA813の場合、次のようにデコードできます。
したがって、サポートされているPIDは次のとおりです: 01、03、04、05、06、07、0C、0D、0E 、0F、10、11、13、15、1C 、1F、20
サービス 01 PID01- DTCがクリアされてからのステータスを監視する
この PID の要求は、A、B、C、D というラベルの付いた 4 バイトのデータが返されます。
最初のバイト (A) には 2 つの情報が含まれています。ビットA7 (バイト A のMSB ) は、MIL (故障表示灯、別名チェック エンジン ライト) が点灯しているかどうかを示します。ビットA6からA0は、現在 ECU でフラグが付けられている診断トラブル コードの数を表します。
2 番目、3 番目、4 番目のバイト (B、C、D) は、特定のオンボード テスト ("OBD 準備チェック") の可用性と完全性に関する情報を提供します。3 番目と 4 番目のバイトは、エンジンが火花 点火式(オットー エンジンまたはヴァンケル エンジンなど) か圧縮点火式(ディーゼル エンジンなど) かによって解釈が異なります。2 番目のバイト (B) のビット3 はエンジン タイプを示し、バイト C と D の解釈方法を示します。0 は火花点火式 (オットー エンジンまたはヴァンケルエンジン)、 1 (設定) は圧縮式 (ディーゼル エンジン) です。ビットB6からB4およびB2からB0は、エンジン タイプに固有ではないテストに関する情報に使用され、共通テストと呼ばれます。テストの可用性を示すビットの場合、 1に設定されたビットは利用可能であることを示し、テストの完全性を示すビットの場合、0に設定されたビットは完了していることを示します。
共通テスト インジケータ (エンジン タイプに固有ではないもの) を表すバイト B のビットは、次のようにマップされます。
バイト C と D は、スパーク点火エンジン タイプ (オットー エンジンやヴァンケル エンジンなど) に応じて次のようにマッピングされます。
圧縮点火エンジン タイプ (ディーゼル エンジン) の場合、バイト C と D は次のように交互にマッピングされます。
- ^ C4/D4 は A/C 冷媒であるという誤解がよくありますが、これは J1979 では何年も前から予約済みとしてリストされており、最近になって GPF として定義されました。
- ^ NMHC は非メタン炭化水素の略語かもしれませんが、J1979 では説明されていません。翻訳すると、SCR 触媒のアンモニア センサーになります。
サービス 01 PID41- このドライブサイクルのステータスを監視する
この PID の要求は 4 バイトのデータを戻します。戻されるデータは PID 01の場合と同じ形式ですが、最初のバイトは常にゼロであるという点が異なります。
サービス 01 PID 78 および 79 - 排気ガス温度 (EGT) バンク 1 およびバンク 2
これら 2 つの PID のいずれかを要求すると、9 バイトのデータが返されます。PID 78 はバンク 1 のEGTセンサーに関連するデータを返し、PID 79 は同様にバンク 2 のデータを返します。最初のバイトは、それぞれのバンクでどの EGT センサーがサポートされているかを示すビットエンコードされたフィールドです。
最初のバイトは次のようにビットエンコードされます。
バイト B から I は、センサーの温度を示す 16 ビットの整数を提供します。温度値は、通常の式 (MSB は A、LSB は B) を使用して、-40 から 6513.5 (スケール 0.1) の範囲の摂氏度で解釈されます。対応するセンサーがサポートする値のみが意味を持ちます。
サービス 03 (PID は不要) - 保存された診断トラブル コードを表示する
このサービスのリクエストは、設定されている DTC のリストを返します。リストはISO 15765-2プロトコルを使用してカプセル化されます。
DTC が 2 つ以下 (最大 4 バイト) の場合、それらはISO-TPシングル フレーム (SF) で返されます。リスト内の DTC が 3 つ以上ある場合は、複数のフレームで報告されます。フレームの正確な数は、通信タイプとアドレス指定の詳細によって異なります。
各トラブル コードの記述には 2 バイトが必要です。これらのバイトには、カテゴリと番号がエンコードされています。通常、" U0158 " のような 5 文字の形式にデコードされて表示されます。最初の文字 (ここでは 'U') は DTC が属するカテゴリを表し、残りの 4 文字はそのカテゴリの番号の 16 進数表現です。最初のバイト (A) の最初の 2 ビット ( A7とA6 ) はカテゴリを表します。残りの 14 ビットは番号を表します。2 番目の文字は 2 ビットのみで構成されているため、 0~3 の範囲内にしかならないことに注意してください。
- ^ これは一般にネットワーク カテゴリと呼ばれますが、元々は「未定義」カテゴリであった可能性があり、そのため「N」ではなく「U」という文字が使用されています。
「 U0158 」の DTC の例は次のようにデコードされます。
結果として得られる 5 文字のコード (例: 「U0158」) は、OBD-II DTC の表で調べて、それが何を表すかの実際の説明を得ることができます。注目すべきは、DTC コード範囲の一部のブロックはすべての車両とメーカーに適用される一般的な意味を持ちますが、その他のブロックの意味はメーカーやモデルごとに異なる場合があります。
また、DTC は、たとえば「 C158 」のように 4 文字の形式で表示されることもありますが、これは単に 2 バイトの 16 進数表現であり、カテゴリに関する適切なデコードは実行されていません。
サービス 09 PID 08 - 火花点火エンジンの使用中のパフォーマンス追跡
触媒バンク、酸素センサーバンク、蒸発漏れ検出システム、EGR システム、二次空気システムのトラック使用時の性能に関する情報を提供します。
各コンポーネントまたはシステムの分子は、特定のモニターが故障を検出するために必要なすべての条件に遭遇した回数を追跡します。各コンポーネントまたはシステムの分母は、指定された条件で車両が運転された回数を追跡します。
データ項目の数は先頭(最初のバイト)で報告される必要があります。
使用中のパフォーマンス追跡レコードのすべてのデータ項目は 2 バイトで構成され、この順序で報告されます (各メッセージには 2 つの項目が含まれるため、メッセージの長さは 4 です)。
サービス 09 PID 0B - 圧縮着火エンジンの使用中のパフォーマンス追跡
NMHC 触媒、NOx 触媒モニター、NOx 吸着剤モニター、PM フィルター モニター、排気ガス センサー モニター、EGR/VVT モニター、ブースト圧力モニター、燃料システム モニターのトラック使用時の性能に関する情報を提供します。
すべてのデータ項目は 2 バイトで構成され、次の順序で報告されます (各メッセージには 2 つの項目が含まれるため、メッセージの長さは 4 です)。
列挙された PID
一部の PID は特別に解釈される必要があり、必ずしも正確にビット単位でエンコードされているわけではなく、任意のスケールである必要もありません。これらの PID の値は列挙されています。
サービス 01 PID03- 燃料システムの状態
この PID の要求は 2 バイトのデータを戻します。最初のバイトは燃料システム #1 を表します。2 番目のバイトは燃料システム #2 (存在する場合) を表し、最初のバイトと同じようにエンコードされます。各バイトの値に割り当てられる意味は次のとおりです。
その他の値は無効な応答です。
サービス 01 PID12- 二次航空ステータスを指揮
この PID を要求すると、二次空気の状態を示す 1 バイトのデータが返されます。
その他の値は無効な応答です。
サービス 01 PID1C- この車両が準拠するOBD規格
この PID を要求すると、この ECU がどの OBD 標準に準拠するように設計されているかを示す 1 バイトのデータが返されます。データ バイトが保持できるさまざまな値とその意味を以下に示します。
サービス 01 PID51- 燃料タイプのコード
この PID は、車両の燃料タイプを示す列挙リストから値を返します。燃料タイプは 1 バイトとして返され、値は次の表で示されます。
その他の値は ISO/SAE によって予約されています。現在、フレキシブル燃料車両の定義はありません。
非標準 PID
使用されている OBD-II PID の大部分は非標準です。ほとんどの最新車両では、標準 PID でカバーされている機能よりも多くの機能が OBD-II インターフェイスでサポートされており、これらの非標準 PID については車両メーカー間での重複が比較的わずかです。
非標準 PID に関して公開されている情報は非常に限られています。さまざまなメーカーの非標準 PID に関する主要な情報源は、米国に拠点を置くEquipment and Tool Instituteによって管理されており、メンバーのみが利用できます。スキャン コードにアクセスするための ETI メンバーシップの価格は、北米における自動車用ツールおよび機器の年間売上高によって定義される企業規模によって異なります。
しかし、ETIの会員であっても、非標準PIDに関する完全な文書は提供されない。ETIは次のように述べている。[7] [8]
一部の OEM は、スキャン ツール情報のワンストップ ソースとして ETI を使用することを拒否しています。各ツール会社と個別に取引することを好みます。これらの会社では、契約を締結する必要があります。料金はさまざまですが、2015 年 4 月 13 日現在の年間料金の概要は次のとおりです。
CAN(11ビット)バスフォーマット
ISO 15765-4 で定義されているように、排出プロトコル (OBD-II、EOBD、UDS などを含む) は ISO-TP トランスポート層 (ISO 15765-2) を使用します。ISO-TP を使用して送信されるすべての CAN フレームは、8 バイトのデータ長 (および 8 の DLC) を使用します。未使用のデータ バイトには 0xCC を埋め込むことをお勧めします。
PID クエリと応答は車両の CAN バス上で発生します。標準の OBD 要求と応答では機能アドレスが使用されます。診断リーダーは、ブロードキャスト アドレスとして機能する CAN ID 7DFh を使用してクエリを開始し、7E8h から 7EFh の範囲の任意の ID からの応答を受け入れます。OBD クエリに応答できる ECU は、7DFh の機能ブロードキャスト ID と、7E0h から 7E7h の範囲の 1 つの割り当て済み ID の両方をリッスンします。応答には、割り当てられた ID に 8 を加えた ID (例: 7E8h から 7EFh) が含まれます。
このアプローチでは、最大 8 つの ECU がそれぞれ独立して OBD クエリに応答できます。診断リーダーは、ECU 応答フレームの ID を使用して、特定の ECU との通信を継続できます。特に、マルチフレーム通信では、ID 7DFh ではなく、特定の ECU ID への応答が必要です。
CAN バスは、標準の OBD メッセージ以外の通信にも使用できます。物理アドレス指定では、独自のフレーム ペイロードを持つ特定のモジュール (たとえば、Ford の計器クラスターの場合は 720h) に特定の CAN ID を使用します。
クエリ
機能 PID クエリは、8 つのデータ バイトを使用して、ID 7DFh の CAN バス上の車両に送信されます。バイトは次のとおりです。
応答
車両は、CAN バス上の PID クエリに、応答したモジュールに応じたメッセージ ID で応答します。通常、エンジンまたはメイン ECU は ID 7E8h で応答します。プリウスのハイブリッド コントローラーやバッテリー コントローラーなどの他のモジュールは、07E9h、07EAh、07EBh などで応答します。これらは、モジュールが応答する物理アドレスより 8h 大きいアドレスです。返される値のバイト数は可変ですが、メッセージは 8 データ バイトを使用します ( CAN バスプロトコルは 8 データ バイトのフレーム形式です)。バイトは次のとおりです。
参照
- エンジン制御ユニット
- ELM327 は、OBD-II車両通信インターフェースで使用される非常に一般的なマイクロコントローラ(シリコンチップ)およびマルチプロトコルインタープリタです。
- 統合診断サービス、ISO規格
参考文献
- ^ ab 「基本情報 | オンボード診断 (OBD)」。米国環境保護庁。2015 年 3 月 16 日。2015年6 月 24 日閲覧。
- ^ 「Escape PHEV TechInfo - PIDs」。電気自動車協会 - プラグインハイブリッド電気自動車。 2013年12月11日閲覧。
- ^ ab 「拡張PID - 符号付き変数」。Torque -BHP 。 2016年3月17日閲覧。
- ^ ab 「最終規制命令」(PDF)。米国:カリフォルニア大気資源局。2015年。 2021年9月4日閲覧。
- ^ 「OBD2 コードと意味」。リトアニア:Baltic Automotive Diagnostic Systems。2020年6 月 11 日閲覧。
- ^ 「OBD2 フリーズフレームデータ: それは何? 読み方は?」OBD アドバイザー2018-02-28 2020-03-14閲覧。
- ^ 「ETI Full Membership FAQ」。The Equipment and Tool Institute 。 2013年11月29日閲覧。 OBD-II PIDドキュメントへのアクセスコストの表示
- ^ 「特別な OEM ライセンス要件」。The Equipment and Tool Institute。2015年4 月 13 日閲覧。
