LoginSignup
1
1

More than 3 years have passed since last update.

M5StackでWHILL Model CRの電源をON/OFFしてみた

Posted at

はじめに

この記事はWHILL Advent Calendar 2018の6日目の記事です。


今流行りのM5StackでModel CRが制御できるので、一番簡単な電源ON/OFFをやってみました。

WHILL Model CRとは

RS232Cで外部から制御できるパーソナルモビリティです。
詳しくはこちらのページご参照ください。
https://whill.jp/model-cr

image.png

準備するもの

接続方法

M5StackのHardwareSerial2(16,17pin)を使うため、Model CRから出ているRS232Cケーブルから、下記のポートに接続します。

M5Stack RS232C-TTLコンバータ
16pin(RXD) TXD
17pin(TXD) RXD

あとは、3.3VとGNDを各々接続します。

Arduino SDKの取得

Model CR用のArduino SDKをダウンロードしてライブラリに追加します。
M5StackではHardwareSerialを使用するので、esp32ブランチを使用してください。(masterはSoftwareSerialを使用しています。)

ライブラリの詳しい使用方法はこちらの記事を参照ください。
ArduinoからWHILL Model CRを動かす

電源ON/OFFのコーディング

このようなコードを書けば電源ON/OFF出来ます。
- Aボタン:電源ON
- Bボタン:電源OFF

M5Stack_whill_power_control.ino
#include <M5Stack.h>
#include "WHILL.h"

#define LCD

WHILL whill(&Serial2);

void setup()
{
  Serial.begin(115200);
  // Power ON Stabilizing...
  delay(500);
  M5.begin();

  M5.Lcd.setTextColor(GREEN);
  M5.Lcd.setTextSize(4);
  M5.Lcd.clear(BLACK);
}

void loop() {
  M5.update();
  if (M5.BtnA.wasPressed())
  {
    whill.setPower(true);  // Turn WHILL on
    M5.Lcd.clear(BLACK);
    M5.Lcd.setCursor(0, 0);
    M5.Lcd.println("POWER ON");
  }
  if (M5.BtnB.wasPressed())
  {
    whill.setPower(false);  // Turn WHILL off
    M5.Lcd.clear(BLACK);
    M5.Lcd.setCursor(0, 0);
    M5.Lcd.println("POWER OFF");
  }
}

おまけ

POWER ON/OFFのテキスト表示だけだとそっけないのでアバターくんに喋らせてみました。

最後に

M5 StackにつないでModel CRの電源ON/OFFしてみました。

Arduino SDKにはJoystickの制御など諸々用意されていますので、簡単にM5Stack経由でModel CRを動かすことも出来ます。
是非試してみてください。

1
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
1