🚗

ESP-WROOM-02搭載移動ロボット - ハード編

2021/07/17に公開

はじめに

今回のモチベーションはネットワークにつながる移動ロボットをできるだけ安くお手軽に作ることです。そのため、ESP-WROOM-32よりも安価なESP-WROOM-02をマイコンとして使うことにしました。また、(ロボット本体にかかる)値段を削るために、開発ボードは買わずにマイコンとUSBシリアル変換モジュール別々で購入しました。結論からいいますと(どんぶり勘定ですが)ロボット本体にかかった値段は4500円くらいです(そのうち車輪やボディーキットやバッテーリーで約3000円もかかりました、、)。制作はそこそこお手軽にできました。USBシリアル変換回路で若干手間取りましたが、それ以外は特に難しくなかったです。

この記事ではESP-WROOM-02を搭載した移動ロボットの作成方法(主にハード面)について説明していきます。後半の記事でMQTTを用いた制御方法を説明します。

ESP-WROOM-02とは

Wi-Fi接続できるESP8266ベースのマイコンボード(技適取得済み)です。Arduinoスケッチを書き込むことができます。同種の類でESP-WROOM-32というものがあります。ESP32ベースのマイコンボード(技適取得済み)で、こちらはWi-FiとBluetoothが利用できます。ESP-WROOM-02と比べると少し高価です。

秋月電子 ESP-WROOM-02より

ESP8266EX(SoC、32bit MCU)を搭載したWiFiモジュールです。SPI、UART、I2C、I2S、IrDA、PWM、GPIO、SDIO、10ビットADコンバータなど、多彩なインターフェースが内蔵されています。TCP、UDPをサポートしています。

数百円で売られており、非常に安価です。

ブレッドボードを使用する場合は、以下のT型基板などが使えます。

回路の作成

今回はユニバーサル基板を用いて回路を作成しましたが、ブレッドボードを用いた方がはんだ付けの作業がない分、楽に作成できます。

部品、機材の価格は2021/05/18現在のものを参照しています。

モーター制御

ESP-WROOM-02とデュアルフルブリッジドライバNJM2670D2を用いて、2つのモーターを制御する回路を作成します。

単価 品名 個数 備考
650円 Wi-Fiモジュール ESP-WROOM-02 DIP化キット 1
40円 丸ピンICソケット(18P) 1 ESP-WROOM-02を抜き差しする用
300円 デュアルフルブリッジドライバ NJM2670D2 1
--- 10Kオームの抵抗 5

ESP-WROOM-02


ESP-WROOM-02を使ってみる」を参考にさせていただきました。

NJM2670D2

NJM2670は耐圧60Vの汎用Hブリッジドライバ。2個の単相DCモータをドライブできる。

NJM2670D2 データシート」を参考にさせていただきました。

配線

電源の接続

モーターの接続

USBシリアル変換

パソコンとESP-WROOM-02を接続するためのUSBシリアル変換回路を作成します。ESP-WROOM-02にプログラムを書き込むときに使います。

単価 品名 個数 備考
950円 FT232RL USBシリアル変換モジュール 1
110円 USBケーブル USB2.0 Aオス-ミニBオス 1.5m A-miniB 1
40円 丸ピンICソケット(18P) 1 ESP-WROOM-02を抜き差しする用
60円 丸ピンICソケット(24P)600mil 1 FT232RL USBシリアル変換モジュールを抜き差しする用
10円 タクトスイッチ(黒色) 1 リセットボタン用
25円 小型スライドスイッチ 1回路2接点 SS12D01G4 1 実行・書き込みモードの切替用
--- 10Kオームの抵抗 5

配線

USBシリアル変換モジュールのIO0をプルアップさせると実行モード、プルダウンさせると書き込みモードになります。モードを変更する場合はリセットボタンを押して(RSTをGNDに繋げて)、一度リセットする必要があります。

パソコンとESP-WROOM-02をUSBシリアル変換で接続する [ATコマンド]」を参考にさせていただきました。

電源

5V(モバイルバッテリー)の電源をレギュレーターで3.3Vに降圧する回路を作成します。5Vはモータードライバの出力側電源として、3.3Vはマイコンの電源やモータードライバのロジック側電源として使用します。

単価 品名 個数 備考
130円 電源用マイクロUSBコネクタDIP化キット 1 モバイルバッテリーからUSB給電する
100円 低損失三端子レギュレーター 3.3V1A TA48033S 1 ESP-WROOM-02に3.3Vが必要

配線


TA48033S PDFデータシート」を参考にさせていただきました。

その他機材

単価 品名 個数 備考
800円 ニクロムはんだこて KS-30R(30W) 1 ユニバーサル基盤を使用する場合必要
210円 はんだ 0.8mm 1 ユニバーサル基盤を使用する場合必要
270円 ブレッドボード EIC-801 1
60円 片面ガラスコンポジット・ユニバーサル基板 Cタイプ めっき仕上げ (72×47mm) 日本製 3
約1600円 BUFFALOのモバイルバッテリー 1
1519円 Aideepen UNO ロボットキット スマートロボットカー、スピードエンコーダー + バッテリーボックス + 65x26mmタイヤ付き 1
230円 スズメッキ線(0.6mm 10m) 1 ユニバーサル基盤を使用する場合必要

組み立て

ネジや結束バンドを用いて部品を固定しました。ジャンパー線で配線してあります。

プログラムの書き込み

ここではArduino IDEを用いて移動ロボットが前進する簡単なプログラムをESP-WROOM-02に書き込んでいきます。

環境

Windows 10 Home

Arduino IDEのインストール

Arduino IDEのWindows10でのインストール(2020/05/04版)」を参考にさせていただきました。

Arduino IDEのセットアップ

Arduino IDE で ESP-WROOM-02 にプログラムを書きこむ手順」を参考にさせていただきました。

書き込み

以下のコードをマイコンボードに書き込む

// the setup function runs once when you press reset or power the board
void setup() {
  pinMode(4, OUTPUT);
  pinMode(5, OUTPUT);
  pinMode(12, OUTPUT);
  pinMode(13, OUTPUT);
}

// the loop function runs over and over again forever
void loop() {
  digitalWrite(4, LOW); 
  digitalWrite(5, LOW); 
  digitalWrite(12, HIGH); 
  digitalWrite(13, HIGH);                     
}

まとめ

今回はESP-WROOM-02を搭載した移動ロボットを作成し、マイコンを起動させると前進する簡単なプログラムを書き込んでみました。今回のモチベーションはロボットをできるだけ安くお手軽に作ることでした。結果、ロボット本体の値段は約4500円でした。それなりに費用がかかってしまいましたが、その多くは車輪やボディーやバッテーリーだったので改善の余地はありそうです。USBシリアル変換回路の配線やユニバーサル基盤への実装は少し大変でしたが、全体としてはそこそこお手軽に制作できました。

続き、ESP-WROOM-02搭載移動ロボット - MQTT制御編

参考

Discussion