こんにちは、shotaです。
社員研修として、オリジナルマウスの製作を始めます。
前回までの研修では[Pi:Co Classic3]を動かしていました。
Pi:Coはマイクロマウスキットなので、筐体設計・基板設計は不要です。
マウスに必要なプログラミング要素を学ぶことができました。
今回からはいよいよマウス研修の本番です。
筐体・回路・プログラムのすべてを設計・製作します。
研修の課題
は、オリジナルマウスで迷路を走る(完走?)、です。
つまり、クラシック競技でもハーフ競技でも、早いマウスでも遅いマウスでも、何でもOKということです。
課題がゆるふわだと製作するマウスもゆるふわになってしまうので、まずはどんなマウスを作りたいか(目標)を決めます。
どんなマウスを作りたいか(目標)
ESP32を使ったマウスを作る!!!

ESP-WROOM-32D
ESP32(ESP-WROOM-32D)って何?
秋月さんの販売ページの言葉を拝借すると、以下のとおりです。
ESP-WROOM-32は、WiFiとBluetoothが一つのモジュールに収まったワイヤレスモジュールです。SPI、UART、I2C、I2S、PWM、GPIO、SDIO、ADコンバータなど、多彩なインターフェースが内蔵されています。モジュールは工事設計認証(技適/TELEC)番号を取得済みですので安心してお使い頂けます。
403- 現在メンテナンス中です。
詳細な情報は[ESP-WROOM-32Dのデータシート]を読んでみてください。
また、秋月さんからはブレッドボードに差し込めるタイプの[開発ボード]が販売されています。
お手頃価格ですので、話題のIoTを始めたい方にはピッタリだと思います。

ESP32-DevKitC-32D
なぜESP32を使いたいか?
理由は主に3つです。
- WiFiとBluetoothが使える
- マウスに必要な機能(GPIO、ADコンバータ、PWM、I2C、SPI、フラッシュメモリ…etc)がある
- 組み込みOS(FreeRTOS)に対応している
WiFiとBluetoothが使える、と何が嬉しい?
マウスを無線操縦できるようになったり、Webサーバと通信できるようになったり、と夢が広がります。
マウスをマイクロマウス以外の場面でも動かせるようになるはずです。
マウスに必要な機能がある、と何が嬉しい?
WiFiやBluetoothはあったら嬉しい機能ですが、GPIOやPWMやフラッシュメモリは、必要な機能です。
これらの機能がなければ、モータを回したり、迷路情報を記憶したり、エンコーダやジャイロセンサと通信することができません。
組み込みOS(FreeRTOS)に対応している、と何が嬉しい?
知識が増えて嬉しいです。
これについては、マイクロマウスに関係ない理由です。
自分は、組み込みOSというのを使ったことが全くありません。
これを機に使えるようになりたいです。
マルチタスクとか、クラウド(AWS)との通信とか、できると楽しいですね!
[Amazon FreeRTOSがESP32に対応したのでさっそく試してみた]
次回やること
マウスの仕様を決めたいと思います。
また、ESP-WROOM-32Dの欠点もいくつかあるので、それについても書きます。