CANのモニターツールの一つである、CAN-BUS SHIELDを使ってCAN通信を行いましたので、方法を紹介します。
CAN-BUS SHIELDとは?
CAN-BUS SHIELDとはArduinoと組み合わせてCAN情報を読み取ることができるガジェットです。

裏側に下図の通り端子がついており、ちょうど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を使用する方法もおすすめです。

コメント