M5StickC

M5StickCで人感センサー

 

はじめに

前回はM5StickCを使用してHello Worldを行いました。

今回はM5SticCを使用して人感センサーを使用します。

  1. 用意するもの
  2. Arduinoにスケッチ
  3. 実行
  4. スケッチの書き換え

 

1.用意するもの

用意するものは以下となります。

番号

商品名

価格

参考販売店

1

M5StickC

1980円(セット)

1650円(本体のみ)

千石電商SwitchSience

2

M5StickC PIR Hat(AS312搭載)

380円

363円

千石電商

SwitchSience

M5StickC PIR HatはM5StickCに接続できる人感センサー(赤外線センサー)です。赤外線が検出されると2秒間High(1)になります。

 

2.Arduinoのスケッチ

arduino.exeを起動します。

[ファイル]⇒[スケッチ例]⇒[M5StickC]⇒[HAT]⇒[PIR]の順番でスケッチを開きます。

  • M5.begin()
    M5StickCをのLCD(液晶ディスプレイ)を初期化します。
  • M5.LCD.setRotation(3)
    画面を3回転します。(引数×90度)
    3回回転させるとM5StickCの左側が上になり、画面を横長に使用できます。
  • M5.Lcd.fillScreen(BLACK)
    画面を黒に塗りつぶします。REDにすると赤にWHITEにすると白と、変更できます。
  • M5.Lcd.println(“PIR TEST”)
    PIR TESTを表示します。print文が改行無しで表示、plintlnは表示+改行となります。
  • M5.Lcd.setCursor(60, 20, 4)
    カーソルの位置情報を指定します。左からX座標、Y座標、フォントサイズです。
  • M5.Lcd.println(digitalRead(36))
    digitalRead(36)で36番ピンからデータをリードします。値はHigh(1)またはLow(0)となります。printlnで取得した値を表示します。
    36番ピンは下の図のG36 と記載されている部分になります。

 

3.実行

M5StickCにセンサーを取り付けます。

M5StickCをPCに接続してスケッチを書き込みます。

近づくと1になり、離れると0となります。

 

4.スケッチの書き換え

背景色を変更する場合は、M5.Lcd.fillScreen(色を指定)で設定できます。

M5.Lcd.setTextColor(色1,色2)を指定することで、文字の色と文字の色の背景色を設定できます。

変更したスケッチと実行内容は以下となります。GREENYELLOWで黄緑に変更しました。文字の色は赤と黒にしました。

センサーの反応がない時にOK表示、反応した場合にあNGと表示するようにしました。

M5StickCでHello World

はじめに

M5StickCを使用して「Hello World]を表示します。

  1. 用意するもの
  2. 開発環境
  3. M5StickCについて
  4. プログラムの実行 

 

1.用意するもの

必要なものは以下の通りです。

番号 商品名 価格 参考販売店
1 M5StickC

税込1980円

(本体のみなら1650円)

SwitchSience

 

2.開発環境

Windows10での実行方法です。

2.1Arduino IDEのインストール

Arduino IDEをインストールします。Windows ZIP fileを選択するとZIPファイルがダウンロードされます。任意のフォルダでZIPファイルを解凍し、arduino.exeをクリックしするとArduino IDEが起動します。

 

「このアプリの機能のいくつかがWindows Defenderファイアウォールでブロックされています。」とセキュリティ警告画面がでますので、「アクセスを許可する」をクリックします。

 

2.2USBドライバーのインストール

USBドライバーをインストールします。

以下のURLからCP210x_VCP_Windows.zipをダウンロードします。

https://m5stack.oss-cn-shenzhen.aliyuncs.com/resource/drivers/CP210x_VCP_Windows.zip

ファイルを解凍し、CP210xVCPInstaller_x64_v6.7.0.0.exe(64bitCPU用)もしくはCP210xVCPInstaller_x86_v6.7.0.0.exe(32bitCPU用)を実行します。

[コントロールパネル]⇒[システムとセキュリティ]⇒[システム]の「システムの種類:」を見れば32bitか64bitの確認ができます。

Macユーザの場合はCP210x_VCP_windos.zipがCP210x_VCP_MacOS.zipになります。

 

exeファイルをダブルクリックで実行、もしくは右クリックから「管理者として実行」で実行します。「次へ」「同意します」「つぎへ」でインストールは完了します。

 

2.3ESP32のボードマネージャのインストール

arduino.exeを起動します。

Arduinoを起動したら[ファイル]⇒[環境設定]を選択します。

「追加のボードマネージャのURL:」にESP32のボードマネージャのURLを入力します。

ESP32ボードマネージャURL: https://dl.espressif.com/dl/package_esp32_index.json

次に[ツール]⇒[ボード:”Arduino Uno”]⇒[ボードマネージャ]を選択し開きます。



esp32と入力すると、候補があらわれるのでインストールをクリックします



2.4M5StickC用のライブラリインストール

[スケッチ]⇒[ライブラリをインクルード]⇒[ライブラリを管理]を選択します。

検索にm5stick coreと入力すると候補があらわれます。「M5Stick Core development kit」を選択してインストールします。

 

参考1:Arduino IDEが起動しない場合の対処方法について

起動しない場合の解決例が2つあります。

Arduinoが起動しない場合の対処方法 その1

以下の2つのファイルを削除したのち、arduino.exeを実行します。

C:\Users\ユーザ名\AppData\Local\Arduino15\package_index.json

C:\Users\ユーザ名\AppData\Local\Arduino15\cache

arduinoが起動しない場合の対処方法 その2

arduino.exeファイルと同じフォルダにportableという名前のフォルダを作成したのち、arduino.exeを実行します。

 

参考2:ESP32について

ESP32はESPRESSIFという会社が製造しているマイコンボードです。

GitHubで公開している資料は以下にあります。

公開している資料:https://github.com/espressif/arduino-esp32/blob/master/docs/arduino-ide/boards_manager.md

 

3.M5StickCについて

M5StickCは、下の写真の右のように4.8 x 2.4 x 1.4cmのスティック状の小型端末です。MPUはESP32と同じアーキテクチャのESP32-picoが使われています。80 x 160ピクセルのカラー液晶画面、ボタン3個、LED、赤外線送信機、マイク、6軸加速度・ジャイロセンサなどが搭載されています。プログラムはArduino IDEか、UIFlowという開発環境を使ってBlocklyまたはMicroPythonで開発します。

 

SwitchSienceでセットになっているタイプをでは以下のようなものがひとまとめになっています。

 

  • 1 x M5StickC
  • 1 x 腕時計マウンタ
  • 1 x ネジ固定用マウンタ
  • 1 x LEGO互換マウンタ
  • 1 x USB Type-Cケーブル

M5StickCのアップグレード版にM5StickC Plusがあります。こちらはディスプレイが18.7%拡大していますが、2200円でUSB Type-Cケーブルが付属しません。本体のみのようです。

 

4.プログラムの実行

Arduinoを起動します。[ツール]⇒[ボード:”Arduino Uno”]⇒[ESP32 Arduino]⇒[M5Stick-C]を選択します。

次に[ファイル]⇒[スケッチ例]⇒[M5Stick]⇒[Basics]⇒[HelloWorld]を選択してスケッチを開きます。

M5StickCとUSBTypCのケーブルをつなぎます。USBのほうはArduinoが設定済みのPCに接続します。接続すると、シリアルポートが設定します。[ツール]⇒[シリアルポート]⇒[COM??]を選びます。(??は数字です)

右向きの矢印(マイコンボードに書き込む)をクリックします。

Hello Worldが表示されました。