OBD II コネクタ

「さき的視点@livedoor」で公開されていた記事です。

久しぶりの車載PCネタです。今日は車の診断コネクタについて書いてみたいと思います。ご存じの方も多いと思いますが、現在販売されている殆どの車には「OBD II」と呼ばれる共通の診断コネクタが採用されています。

なにするものぞ?

OBD II の OBD は On-Board Diagnostics の略です。俗に「診断コネクタ」と呼ばれています。名前からすると車の診断に使うコネクタで、診断以外では役に立たないような印象を受けます。

確かに診断コネクタを利用すると、車のエラーなど診断用の情報を得ることもできますが…それは診断コネクタから得られる情報のほんの一部にすぎません。

OBD II ではエラーコード以外にも「エンジンの回転数」「車速」「燃料計・水温計など各種センサーの情報」など、車に関する様々な情報が取得できるのです。

つまり、車載PCを車の診断コネクタに接続できれば、車載PCで様々な車の状態を自由にモニタリングできるようになるというわけです。

コネクタは共通、だけど…

私は最初「診断コネクタが共通だったらPCとの接続も簡単にできるかも?」と考えていました。しかし調べているうちに、そう簡単にはいかないということがわかってきました。

実はこの診断コネクタ、メーカーや年式によって通信方法がまちまちなのです。私が把握しているだけでも以下の通信方式が存在しています。

  • SAE J1850 VPW ( GM系 )
  • SAE J1850 PWM ( フォード系 )
  • ISO 9141 ( クライスラー系 / ヨーロッパ車全般 )
  • ISO 14230 KWP2000
  • ISO 15765 CAN

通信方式が違うといっても「コマンドが違う」程度の話であれば、とりあえずPCと診断コネクタを接続して後はソフトウェアで対応できるので、話は簡単だと思っていました。しかしこの診断コネクタ、なんと通信方式毎にOSI参照モデルで言うところの物理層が違うのです。( ※ ISO 9141 と ISO 14230 の物理層は共通です )

さらに困ったことに、日本で販売されている日本車については通信方式がよくわかりません。日本のメーカーは「独自仕様」と「非公開情報」が大好きで、診断コネクタに関する規格化や共通化が諸外国に比べて遅れているためです。例えば私はダイハツのコペンに車載PCを積んでいますが、コペンの診断コネクタがどの通信方式なのかはわかりません。

何とかできる…かもしれない

通信方式はわからなけど、車載PCを診断コネクタにつなげたい…となれば、話は簡単です。全ての通信方式に対応する方法を見つけて、つないでみれば良いのです。せっせと検索して「ELM327」というICを見つけました。

ELM327は診断コネクタの全ての通信方式に対応していて、シリアル(RS232)通信で制御することができます。既にUSBシリアル変換ICとELM327を組み合わせた「USB-OBD2変換器」 や、各種ソフトウェアも存在しています。

ところが、USB-OBD2変換器は日本国内で殆ど販売されていない上に、売られていても高価 ( 2万円程度 ) です。さらに、安定動作のためにはUSBシリアル変換にどんなICを使っているのかも気になりますが、その辺も含めて信頼できる製品は見つかっていません。

誰でも安心して気軽に使える製品があるのかないのかは、これから探してみたいと考えています。ちなみに、私が「これなら大丈夫だろう」と考えている製品の条件は以下の通りです。

  • ELM327 + FT232R
  • 邪魔にならないコネクタ ( 特に車両側 )
  • 車内での取り回しに十分な長さのケーブル
  • ケーブルを含めて+80℃までの耐熱性能
  • 車の振動で簡単に壊れない程度の耐震性能
  • USBバスパワーで動作
  • 小売りで1万円程度

使えそう商品が見つかったら、色々と試して、レポートする予定です。

この記事の投稿者

崎 洋佑
崎 洋佑プログラマーもどき
さきラボの代表取締役。自称プログラマーもどき。
開発でよく使う言語は日本語。
IT技術よりも人が好きな、天然物のエンジニアです。