プラレールにカメラを取り付けてスマホで制御する

スポンサーリンク
工作

先日、プラレールにモータードライバを取り付け、プラレールのスピードを制御できるようにしました(記事は こちら)。
また、ESP32-CAM用のサンプルスケッチ「CameraWebServer」を編集し、スマホのWebブラウザで「Unit Cam Wi-Fiカメラ」の撮影した画像をストリーミング再生しながら、外付けの電子部品を制御できるようにしました(記事は こちら)。

今回はいよいよ、これらふたつを組み合わせます。
プラレールにモータードライバと「Unit Cam Wi-Fiカメラ」を取り付け、スマホのWebブラウザで画像をストリーミング再生しながら、プラレールのスピードを制御できるようにしてみたいと思います。

Unit Cam Wi-Fiカメラ(Yahoo!ショッピング)

最初に、Webページのデザインを変更します。
今回は「阪急電車」のプラレールを改造するので、Webページのデザインも阪急カラーにしてみました。

今回、改造するプラレールはこちらです。

電車の先頭にカメラを取り付けたいのですが、スペースが足りないので、シャーシ(車体)の先頭の方を切り取りました。

切り取った場所にL字のパーツを取り付け、そこに両面テープと結束バンドで「Unit Cam Wi-Fiカメラ」を取り付けました。

「Unit Cam Wi-Fiカメラ」からGROVEケーブルを引き出します。ケーブルはシャーシ(車体)の下をとおし、シャーシの中ほどに開けた穴から内側に引き込みます。

「GROVEプロトシールド」を使って、モータードライバに各信号をつなぐことにします。

こんな感じでつなぎます。

電池は2両目に格納します。
2両目にはスイッチも取り付けておきます。

ボディ(本体)の中に電池ボックスを入れ、シャーシ(車体)を取り付けます。配線を外に引き出しておきます。

2両目から引き出した配線を先頭車両の中にある基板につなぎ、ボディ(本体)をかぶせたら完成です。なお、ボディ前面のカメラがある場所には穴を開けておきます。

早速動かしてみます。
レールの上にプラレールを乗せ、スイッチをONにします。
スマホのWebブラウザで「Unit Cam Wi-Fiカメラ」にアクセスします。アクセスするアドレスは、「Unit Cam Wi-Fiカメラ」にスケッチを書き込んだときにシリアルモニタに表示されます。
ボタン操作で、ストリーミング再生を開始したり、プラレールのスピードを制御することができます。

なかなかいい感じに動きました。
ただ、つくるのがかなり面倒だった割に、おもちゃとしてはやや単調で、子供に遊ばせてもすぐに飽きてしまいそうです。

2023/3/29追記

Wi-Fiルータがない場所でも遊べるように、「CameraWebServer.ino」を少しだけ変更し、「Unit Cam Wi-Fiカメラ」自身がWi-Fiアクセスポイントになるようにしました。

        : 省略
#include "camera_pins.h"

const char* ssid = "ESP32-AP";
const char* password = "12345678";

void startCameraServer();

void setup() {
        : 省略
#if defined(CAMERA_MODEL_M5STACK_WIDE) || defined(CAMERA_MODEL_M5STACK_ESP32CAM)
  s->set_vflip(s, 1);
  s->set_hmirror(s, 1);
#endif

  WiFi.softAP(ssid, password);
  delay(100);
  IPAddress ip = WiFi.softAPIP();

  Serial.println("ESP32 softAP mode");
  Serial.print("SSID:");
  Serial.println(ssid);

  startCameraServer();

  Serial.print("Camera Ready! Use 'http://");
  Serial.print(ip);
  Serial.println("' to connect");
}
        : 省略

プラレール(Unit Cam Wi-Fiカメラ)のスイッチをONにしてから、スマホの「設定」でWi-Fi接続先を「ESP32-AP」に変更します。パスワードは「12345678」です。
その後、Webブラウザで「192.168.4.1」にアクセスすると、先ほどと同じようにスマホでプラレールを操作できます。

これで、このプラレールを他の場所に持っていっても遊べるようになりました。

 

なお、私がM5Stack、M5StickCの使い方を習得するのにあたっては、以下の書籍を参考にさせていただきました。


ごく基本的なところから、かなり複雑なスケッチや、ネットワーク接続など、比較的高度なものまで、つまづかずに読み進めていけるような構成になっており、大変わかりやすい本です。