【M5でIoT入門】基本的な使い方から応用例まで解説

IoTデバイスのM5シリーズ(M5Stack、M5StickCなど)の基本的な使い方から応用例まで解説します。

M5シリーズとは

M5Stack(エムファイブ・スタック)は、下写真のようなコンパクトな四角いマイコンモジュールです。
Arduinoよりもコンパクトで、かつ最初から様々な機器が搭載されており、最初から色々なことができるのが特徴です。

【M5Stack Gray】

M5StickC(エムファイブ・スティック)は、M5Stackをさらにコンパクトにしたスティック状のモジュールです(下写真のオレンジ色のスティックが「M5StickC」です)。

主な特徴は以下のとおり。

M5Stack/M5StickCの特徴
1 M5Stackは、ESP32(Wi-Fi、Bluetooth通信可能)、microSDカードスロット、ボタン、USB、Groveのコネクタ、カラーLCDディスプレイ、バッテリー電源、スピーカーが最初から内蔵されている。M5StickCの場合、よりコンパクトな代わりにmicroSDカードスロットとスピーカーが省かれている。
2 M5Stackは、Arduinoのシールドのように、センサー等の載った拡張基板をメインモジュールに積み重ねることで拡張可能。
M5StickCも、ハットと呼ばれる拡張モジュールをスティックの先端部に接続することで拡張可能。
4 Arduino IDE、ESP-IDF、MicroPythonなど開発環境がいくつかある。(おすすめはArduino IDE)
5 Arduinoと同様、温湿度などのセンサーによる測定やモーター制御などハードウェア制御が可能。

M5Stack/M5StickCにはいくつも種類があります。
そのうちの代表例をピックアップして比較した結果が以下になります。

種類 M5Stack Basic M5Stack Gray M5StickC
価格 3600円前後 4300円前後 2400円前後
サイズ 54×54×12.5mm 同左 48mm×24mm×14mm
CPU ESP32 240MHz デュアルコア 同左 同左
フラッシュメモリ 4MB 4MB 4MB
LCD 320×240px カラーTFT 同左 80×160px カラーTFT
インターフェース USB Type-C, GROVE (I2C)、microSD スロット、I/O PORT、BUSPORT 同左 USB Type-C、GROVE (I2C,I/O,UART)
内蔵センサ なし 9軸(加速度,ジャイロ,磁気)センサ 6軸加速度センサ
無線通信 Wi-Fi、Bluetooth 同左 同左
バッテリ 150mAh 150mAh 800mAh
ボタン ボタン×3 + 電源ボタン 同左 ボタン ×2、リセットボタン×1
内蔵スピーカ 1W 同左 なし

M5Stackの使い方

【ボタン処理/M5Stack】

目次 概要
ボタン処理 A-Cの3つのボタンの使い方を解説します.
リレー操作 リレーユニットを使って電源をON・OFFします.

【データ測定/M5Stack】

記事リンク 概要
電圧測定 アナログ入力ピン(35,36番)を使って,0-3.3Vの電圧を測定します.分圧抵抗を使えばそれ以上の範囲でも測定できます.
温湿度・大気圧の測定 M5StackとBMP280ユニットで温度・湿度・気圧測定を行います。
傾きの測定 M5Stack Gray内蔵の9軸センサー(MPU9250)でロール・ピッチ・ヨー角(傾き)を測定します。

【データ通信/M5Stack】

目次 概要
CAN通信 M5StackとCommuモジュールでCAN通信します。
RS485通信
Modbus
wifi接続/簡易サーバー化 M5Stackをwifiに接続して無線通信したり、簡易サーバー化します。
超小型百葉箱 超小型百葉箱を作って無線LANに接続し、グローバルネットからスマホ端末などでモニタしてみます。

M5StickCの使い方