
Arduinoを使って、WiFi経由のカメラを作りたい
ESP32-CAMを使ってみたけど設定方法がわからないし、ホームページに説明がない
こんな疑問に対して、ESP32-CAMの設定方法から必要なものを紹介します。これを確認すれば、0からWebカメラを作って動画を撮影することができます。
わたしはESP32-CAMを購入したのですが、なかなか設定方法がわからず、使えていませんでしたが、最近ホームページを調べて、つながらなかった設定方法を解決することができましたので、内容について今回紹介いたします。

ESP32-CAMを使用するにあたって必要なもの
ESP32 カメラモジュール
1200円程度でWebカメラが作成できるので非常にお勧めです。ラジコンに乗せるなど様々な用途に使えると思います。
TTL-シリアルケーブル
ESP32カメラモジュールには、端子がむき出しとなっているため、こちらのケーブルが必要になります。自作でもよいですが、安価ですのでお勧めです。
上記2点のみで、作成できます。非常に安価でいろいろ使いたい用途がでてくるので、面白いと思います。
ESP32-CAMの回路接続・設定方法
ESP32-CAMの構成・取り付け方
まず最初にわたしが一番苦労した点を記載します。ESP32-CAMを購入すると、カメラレンズとボードが2つ送付されてきます。まず、このカメラレンズの取り付け方がどこのホームページにも書いていなくてものすごい苦戦しました。(一般的には常識なのかもしれません。)
こんなものが送られてきます。

このカメラレンズの裏にはシールが取り付けられていますが、ESP32-CAMへの取り付け方がさっぱりわかりませんでした。よくよくいじると、この差し込む部分のコネクタがパカっと90°開きます。最初はカメラモジュールの白線が見えていましたが、閉にすると、白線が見えなくなります。これでOKです。


ここに気づくまでに2時間程度かかり、ずっとWebサーバーにつながらず、エラーが出ていましたので、注意してください。
TTLケーブルとESP32モジュールの接続方法
ESP32の接続については、下記2つのサイトを参考にさせていただきました。非常にわかりやすかったのですが、上記のカメラの接続に戸惑い、ずっとエラーを繰り返していました。
まずTTLケーブルとESP32-CAMを表のように、接続してください。この時に、プログラム書き込み時には、ESP32-CAMのO0とGNDをつないでください。※カメラを起動時には、この接続を外す必要あり


接続するとこんな感じになります。


接続しましたら回路については完了です。
ESP32-CAMを使用する際のArduino IDEの設定方法
Arduino IDEの起動しましょう。ESP-32のライブラリが入っていない場合は、ライブラリをインクルードしてください。
ライブラリが入りましたら、スケッチ例より、ESP32 CameraWebServerを開いてください。
ESP32-CAMのスケッチ作成

スケッチ例を開くと、下記プログラムが開かれますので、赤線部を修正してください。
①define CAMERA_MODEL_WROVER_KITの先頭に”//”を記載(コメント化)
②//#define CAMERA_MODEL_AI_THINKERの先頭の”//”を削除(有効化)
③ssid、passwordにあなたのWiFIのssid、passwordを入力してください


ESP32-CAMの設定、Webカメラ撮影を行う
ツールのボードから、”AIThinker ESP32-CAM”を選択してください。

以上で設定完了です。他のサイトでは、こちらの設定で記載されておりますので、うまくいかない場合は試してみてください。こちらでは、ボードに”ESP32 Wroover Module”を設定しています。
↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓

設定が完了しましたら、検証(コンパイル)しましょう。問題なければ下記画面が出てきます。

上記画面が出ない場合、”設定が間違っている”か、”ESP32-CAMのO0とGNDが接続されていない”、”USBの接続不良” の可能性がありますので、プログラム確認、配線確認、USBの抜き差しをして、再度試してください。私は再度試すとうまくいきました。
OK画面がでましたら、シリアルモニタを開いてください。この際に、必ず、”ESP32-CAMのO0とGNDの接続を外す”を忘れないでください。カメラ起動時には、この接続を外します。外しましたら、ESP32カメラモジュールのリセットボタンを押してください。リセットボタンはレンズの裏側にあります。リセットボタンを押すと、成功すると、IPアドレスが記載されます。


上記画面が出たら成功です。IPアドレスを入力すると、サーバー上にカメラ撮影が画面が出てきます。この画面で、Get Stillを押すとカメラ画像が撮影されます。また、Start Streamを押すと、動画が撮影されます。


以上で設定は完了です。これから、このカメラを搭載して、顔認識+撮影などをやっていきたいと思います。
