CAN-BUS SHEILDを使って車両のCAN情報を読む方法

CAN通信

CANのモニターツールの一つである、CAN-BUS SHIELDを使ってCAN通信を行いましたので、方法を紹介します。

CAN-BUS SHIELDとは?

CAN-BUS SHIELDとはArduinoと組み合わせてCAN情報を読み取ることができるガジェットです。

Amazonでも売っていますが高いため、秋月電子通商で買うのが良いかと思います。

CAN−BUS Shield V2.0: マイコン関連 秋月電子通商-電子部品・ネット通販
電子部品,通販,販売,半導体,IC,マイコン,電子工作CAN−BUS Shield V2.0秋月電子通商 電子部品通信販売

裏側に下図の通り端子がついており、ちょうどArduinoに接続できるように設計されています。

Arduinoと接続すると以下のようになります。

車両との接続方法

D-sub端子からでもCAN通信が可能ですが私が持っているDsubと端子配列が合わないため、以下の箇所から接続します。

上記のD-subと、以前作成したOBDカプラとD-subを接続するコネクタを使うことで、車両と接続することができます。

実験構成は以下の通りです。

以前実験した以下の構成とほぼ同じ(CAN-BUS SHIELD⇔CAN USBの違いのみ)ですので、構成について詳細を確認したい方は以下の記事を参照願います。

使い方

Arduinoのライブラリの中にCAN-BUS SHILED用のライブラリがありますので、そちらを利用します。

「ライブラリを管理」から探します。

下図の通り「CAN-BUS SHIELD」と入力すると見つかります。

下図ではすでにインストール済みとなっていますが、こちらをインストールします。

下図の通り「receive_monitor」を選択します。

下図の通り無事CAN情報を見ることができました。

右下の通り、115200bpsに設定します。

txtデータとして表示すると以下の通りです。

16:30:47.335 -> CAN init ok!
16:30:51.165 -> 0003.836 RX: [18DA0EF1](02) 02 3E 00 00 00 00 00 00 
16:30:51.165 -> 0003.837 RX: [18DAF10E](02) 02 7E 00 55 55 55 55 55 
16:30:51.165 -> 0003.847 RX: [18DA0EF1](02) 03 22 26 10 00 00 00 00 
16:30:51.165 -> 0003.851 RX: [18DAF10E](02) 10 39 62 26 10 FF DD BF 
16:30:51.165 -> 0003.852 RX: [18DA0EF1](02) 30 00 00 00 00 00 00 00 
16:30:51.165 -> 0003.856 RX: [18DAF10E](02) 21 7D E7 FC 18 48 26 0B 
16:30:51.165 -> 0003.860 RX: [18DAF10E](02) 27 EB 13 7E 09 BA FF DC 
16:30:51.165 -> 0003.865 RX: [18DAF10E](02) 22 80 8E 7A 81 01 08 00 
16:30:51.198 -> 0003.869 RX: [18DAF10E](02) 28 00 00 55 55 55 55 55 
16:30:51.198 -> 0003.874 RX: [18DAF10E](02) 24 02 15 3C 00 00 80 00 
16:30:51.198 -> 0003.878 RX: [18DAF10E](02) 28 00 00 55 55 55 55 55 
16:30:51.198 -> 0003.884 RX: [18DA0EF1](02) 30 00 00 00 00 00 00 00 
16:30:51.198 -> 0003.888 RX: [18DAF10E](02) 28 00 00 55 55 55 55 55 
16:30:51.198 -> 0003.893 RX: [18DA0EF1](02) 03 22 26 10 00 00 00 00 
16:30:51.198 -> 0003.897 RX: [18DAF10E](02) 28 00 00 55 55 55 55 55 
16:30:51.198 -> 0003.902 RX: [18DA0EF1](02) 03 22 26 11 00 00 00 00 
16:30:51.232 -> 0003.906 RX: [18DAF10E](02) 25 00 00 00 00 00 00 00 
16:30:51.232 -> 0003.911 RX: [18DA0EF1](02) 03 22 26 10 00 00 00 00 
16:30:51.232 -> 0003.915 RX: [18DAF10E](02) 28 00 00 55 55 55 55 55 
16:30:51.232 -> 0003.920 RX: [18DA0EF1](02) 03 22 26 11 00 00 00 00 
16:30:51.232 -> 0003.924 RX: [18DAF10E](02) 22 80 8E 7A 81 01 08 00 
16:30:51.232 -> 0003.930 RX: [18DAF10E](02) 28 00 00 55 55 55 55 55 
16:30:51.232 -> 0003.934 RX: [18DAF10E](02) 21 7D E7 FC 18 CC 25 0B 
16:30:51.232 -> 0003.938 RX: [18DAF10E](02) 28 00 00 55 55 55 55 55 
16:30:51.268 -> 0003.943 RX: [18DA0EF1](02) 30 00 00 00 00 00 00 00 
16:30:51.268 -> 0003.947 RX: [18DAF10E](02) 28 00 00 55 55 55 55 55

まとめ

CAN-BUS SHIELDの使い方を紹介いたしました。

Arduinoをお持ちの方にとっては安くCAN情報を見ることができますし、ライブラリも充実しており、モニタ情報も加工がしやすい形で出てきますので、非常にお勧めです。

関連記事

自分でICを購入してCANを読む方法は以下の通りです。

車両をOBDカプラを介して接続する方法は以下の通りです。

Arduinoを持っていない方にはCAN USBを使用する方法もおすすめです。

コメント

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