見出し画像

カメラ付きArduino互換機が動いた!

前回の記事では製品の情報が無くて動作させることができなかったと書いた。

その後、ショップに情報を求めたら、返品するか詳細情報を送るか選択するように言われたので、追加情報を送ってくれるように回答した。
翌日届いた回答は、説明書などが無かったので、返品/返金の手続きをしてほしいとのことだった。
 情報が貰えないので返品しようかとも思ったが、せっかく手元に来たデバイスなので、もう少しトライしてみようと、頑張ってみたら動作させることに成功しました。

Webカメラとして動作した!

スケッチ例の「CameraWebServer」を動かすことに成功し、ブラウザーで見た画像がこちら。

左側がコントロール部、右の画像がカメラの画像
(プリンターパネルの接写(笑))

アプリが動くとシリアルモニターにIPアドレスが表示されるので、それをブラウザで開くと最初は左側の設定メニューだけで画像が出ないが、設定メニューをスクロールしてストリーミングをスタートさせると画像が表示される。上の画像は表示サイズを大きくしてみたもの。

動作までの手順

Arduino IDE を起動して、ボードマネージャで ESP32 をインストールさせます。(私は既にインストール済みだった)
そのままではスケッチ例に希望のものが表示されなかった。

使用するスケッチ例を開く手順

この互換ボードに載っているチップが ESP32 Wrover Module なので、そのスケッチ例を表示させるために、ボードを接続して「新規スケッチ」を作成して、ボード情報を ESP32 Wrover Module 、ポートに接続したポートを選択する。
 そうしてからメニューの「スケッチ例」- 「ESP32」-「Camera」-「CameraWebServer」を選択して、該当のスケッチ例を開く。
(先ほど新規スケッチで開いたウインドウは不要なので保存せずに閉じる)
CameraWebServerのスケッチを適当な名前をつけて保存する。

スケッチを修正する

このサンプルでは色々なボードに対応できるようになっているが、このままではこのボードには合わないので、変更が必要。
17行目の
#define CAMERA_MODEL_ESP_EYE // Has PSRAM
をコメントアウトして16行目の
#define CAMERA_MODEL_WROVER_KIT // Has PSRAM
を有効にする。

変更後の状態

#define CAMERA_MODEL_WROVER_KIT // Has PSRAM
//#define CAMERA_MODEL_ESP_EYE // Has PSRAM

変更後はこのようにする

Wi-Fi の設定

38行目と39行目に Wi-Fi の SSID と Password があるので、自分の環境に合わせて修正し保存する。

ツールの設定

このままコンパイルして実行しようとするとメモリー不足のエラーになる。またプログラムのアップロード時に速度が合わずエラーになるので、画像のように Partition Scheme と Upload Speed を設定します。
 ソースを良く見たら、
"You must select partition scheme from the board menu that has at least 3MB APP space."
と、ちゃんと書いてありました。Upload Speed については書いてないけど。

Partition Scheme と Upload Speed の設定

これで、コンパイル、実行させ、シリアルモニター画面を見ると動作しているIPアドレスが表示されています。
ブラウザを立ち上げて、このIPアドレスを見ると画面左側にコントロールパネルが表示されていますね。
下にスクロールして「Start Stream」という赤いボタンを押すと、右側の上部に画像が表示されているはずです。
左上から2番目の Resolution を好きなサイズにしてみましょう。
結構それなりの画像が得られるようです。

結果OK

とりあえず、返品はしなくて済みますし、使い方は難しいものの勉強すればそれなりに使えそうですね。
このままWebカメラにするのが手っ取り早いですね。(他に思いつかないし技術も乏しい)
普通にネットワークカメラ製品を買う方が良いのかもしれませんが、知的好奇心が満足できて、苦労はしましたが、その分達成感を味わうことができました。

この情報が誰かの役に立つと嬉しい。

コメント、ご指摘、歓迎します。

この記事が気に入ったらサポートをしてみませんか?