CAN M5Stack

安価で持ち運びが楽なCANモニタをM5Stackで作る。

投稿日:

今回は、M5StackでCANモニタを作る方法を紹介します。

CANは、「Controller Area Network」の略で、ドイツのBosch社が開発したシリアル通信プロトコルです。CANは、ほぼすべての車両に使われているほど自動車の車内LANとして普及している通信規格です。また、工場の自動化(FA:ファクトリーオートメーション)など幅広い分野で活用されています。

CANとは

現在の自動車は、複数のECUが連携することで、ADAS(先進運転支援システム)など高度なシステムを構築しています。

そのため、自動車開発においては、CANに流れる信号が設計通り流れているか、異常なタイミングや信号値が送信されていないかをモニターして評価することが重要です。

CANモニターは、様々なメーカから販売されていますが、複数バスを同時にモニターできる、任意の信号を送信できるなど、自動車開発に必要な多くの機能が入っているため、かなり高価となりますし、一般的にはPCとセットで使われるため、荷物が多くなり準備にも時間がかかります。

そこで、安価で、持ち運びが楽なCANモニターをM5Stackで作りたいと思います。

スポンサードサーチ

この記事で解決できること

・M5StackでCANモニターが作れます。

・COMMUモジュールの使い方(CANの受信処理)がわかります。

今回作成するアプリ

受信したCANデータをCAN ID毎に画面を分けて表示させます。

ボタンA、Cを押すことで、CAN IDを切り替えます。

スポンサードサーチ

準備

・M5Stack

・COMMUモジュール

・PCに、ArduinoIDEがインストール済み

COMMUモジュールについては、以下で説明していますので、参考にしてください。

構成

スポンサードサーチ

M5Stack(COMMUモジュール)のCANポートについて

下の写真のCANH、CANL、GNDを、通信相手のCANH、CANL、GNDにつないでください。

ライブラリのインストール

COMMUモジュールを使用するには、MCP_CAN_libというライブラリを、ArduinoIDEにインストールする必要があります。

①「MCP_CAN_lib」をダウンロードする

公式サイトから、MCP_CAN_lib-master.zipをダウンロードしてください。

②ArduinoIDEにインストールする

ArduinoIDEを起動して、「スケッチ」-「ライブラリをインクルード」-「ZIP形式のライブラリをインストール」を選択

先ほどダウンロードしたファイルを選択すれば、インストールされます。

スポンサードサーチ

サンプルコード

ArduinoIDEを立ち上げて、以下のサンプルコードをコピーしてください。

動かし方

ArduinoIDEでコンパイルしてダウンロードが完了すると、CAN待ち受け状態となります。

ここで、CAN通信が開始されると、M5Stackは、受信データを画面に表示します。

ボタンCを押すと、次に受信したCAN IDが表示されます。

ボタンAを押すと、元の画面に戻ります。

まとめ

今回は、M5StackとCOMMUモジュールを使った、CANモニターを紹介しました。

参考

西住工房

-CAN, M5Stack
-, ,

Copyright© ラズパイの実 , 2020 All Rights Reserved Powered by STINGER.