【DoCAN】車両診断通信 その2【概要②】

車両診断通信

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

はじめに

車両診断通信のレイヤについて。

登場人物

博識フクロウのフクさん

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

車両診断通信のレイヤ

フクさん
フクさん

さて、車両診断通信の詳細に入っていくわけなんだけど。

太郎くん
太郎くん

サクっと言っちゃって。

フクさん
フクさん

車両診断通信は比較的明確なレイヤが存在する。

太郎くん
太郎くん

レイヤ?
OSI参照モデル的な?

OSI参照モデル(OSIさんしょうモデル、英: OSI reference model)は、OSIにおいて「コンピュータの持つべき」だとされた、通信機能を階層構造に分割したモデルである。国際標準化機構(ISO)によって策定された。2020年4月現在広く使われているインターネットがこれとは大幅に違っているDARPAモデルであるように、一般論としてこれがコンピュータの持つべきモデルというわけではない。OSI基本参照モデル、OSIモデルなどとも呼ばれ、通信機能(通信プロトコル)を7つの階層に分けて定義している。

Wkipediaより
フクさん
フクさん

うん。
そうだね。
ただ、すべてのレイヤがあるわけじゃなけどね。

太郎くん
太郎くん

いつもの感じで絵で描いてもらえると。

フクさん
フクさん

絵じゃなくて表になるけど。
DoCANの場合だと、こんな感じだよ。

LayerUDSOBD
アプリケーション層ISO14229-1ISO15031-5
プレゼンテーション層
セッション層ISO14229-2(UDS)
トランスポート層ISO15765-2(診断通信)
ネットワーク層ISO15765-2(診断通信)ISO15765-4(OBD診断通信)
データリンク層ISO11898-1(CAN)ISO15765-4(OBD診断通信)
物理層ISO11898-2(CAN)ISO15765-4(OBD診断通信)
太郎くん
太郎くん

????
7層あるのはいいのだけど、
UDSとOBDという2本あるのは?

フクさん
フクさん

ここが車両診断通信に於いてのややこしい部分。
基本はUDSの列で話をすればOKなんだけど、
CARB法規こと自動車排出ガス規制に紐づいているのがOBDの方なんだよ。

自動車排出ガス規制(じどうしゃはいしゅつガスきせい、英: Vehicle emissions control)とは、自動車の内燃機関から排出されるガス(排出ガス、排気ガス、排気)に含まれる有害物質の量の規制の総称である。自動車排ガス規制、自動車排気ガス規制とも呼ばれる。国や自治体、中央政府や各州(各自治体)の政府ごとに規制値が定められており、例えば一酸化炭素 (CO) ・窒素酸化物 (NOx) ・炭化水素類 (HC) ・黒煙など、大気汚染や健康被害をもたらす物質の上限を定めている。アメリカ合衆国において1963年に「大気浄化法」、1970年に「マスキー法」が成立したことで、世界各国でも本格的な排出ガス規制が行われるようになっていった。

Wikipediaより
フクさん
フクさん

排出ガス規制の都合で実際に計測することになるのだけど、
その際に車速、アクセル開度、吸気流量、吸気圧、O2センサ値も見るんで、
規格でその取得方法を明記しているってことになる。

太郎くん
太郎くん

(だめだ。ついていけない。)

フクさん
フクさん

(ついてこれて無い感じだな。)

UDSとOBD

フクさん
フクさん

車両診断通信のユースケースは大きく2つになる。

  • 完成車メーカ、サプライヤのプロセス効率化目的。
  • 法規に定められた情報の開示。

1個目がUDSで2個目がOBD。
ってイメージ。
UDSはUnified Diagnostic Servicesの略。
OBDはOn-Board Diagnosticsの略。
OBDの方は法規から参照されている規格なんで、
UDSと比べると通信のタイムアウト値とかが明確になっている。

太郎くん
太郎くん

え?ということはUDSの方は明確じゃない?

フクさん
フクさん

一応、推奨値程度の記載はあるけど、
各完成車メーカお任せだね。
また、セッション制御という概念があって、
セッションを切り替えると通信タイムアウト値が変化してもOKな仕様になってる。

太郎くん
太郎くん

なんかむちゃくちゃメンドクサソウだな。

フクさん
フクさん

本格的に設計しようと思うと規格内で定義されてる大量のパラメータと
それの意味不明さにモチベーションを根こそぎ持ってかれるね。

太郎くん
太郎くん

(すでに根こそぎ持ってかれたんだけど・・・。)

フクさん
フクさん

まぁ細かい話は追々するとして、
ここはで、OSI参照モデルと規格番号の関係性だけを認識すればOKだよ。

太郎くん
太郎くん

うん。とても覚えられそうもないからメモっておくよ。

まとめ

フクさん
フクさん

まとめだよ。

  • 車両診断通信のレイヤはOSI参照モデルで表現できる。
    • ただし、プレゼンテーション層は無い。
  • 車両診断通信には大きく2つの軸がある。
    • UDSとOBD。
    • OBDは自動車排出ガス規制から参照されているため、各種パラメータが明確。
    • UDSは推奨値があるだけで、実際の数値は完成車メーカ依存。

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

ボッシュ自動車ハンドブック 日本語第4版

https://amzn.to/3wTDHph

CAN入門講座: 組込みマイコンで学ぶCANプロトコルとプログラミング

https://amzn.to/3yuI5LI

CANおよびCANopenによる組み込みネットワーク

https://amzn.to/3Vf9bzj

カーハッカーズ・ハンドブック ―車載システムの仕組み・分析・セキュリティ

https://amzn.to/3Vh1Lfg

車載イーサネット “クルマIT”高度化への基盤技術

https://amzn.to/44USgFJ

詳解 車載ネットワーク -CAN、CAN FD、LIN、CXPI、Ethernetの仕組みと設計のために

https://amzn.to/3VeENoK

自動車用ECU開発入門 システム・ハードウェア・ソフトウェアの基本とAUTOSARによる開発演習 (エンジニア入門シリーズ122)

https://amzn.to/3Xf4Ain

車載ネットワ-ク・システム徹底解説: CAN,LIN,FlexRayのプロトコルと実装 (Design wave mook)

https://amzn.to/3Vh3b9e

コメント

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