【IoT】ESP32を使ったWebカメラの電圧を下げてみた。
電源周りをリチウムイオン電池18650の3本並列に変更してみた。
これにより、稼働時間が大幅に伸びた。
しかし、依然として稀にgoogleドライブのスクリプトを叩かないことがある。
また、依然として発熱量が多い。
試しに、固定観念を捨て去り、電圧を5.3v低下させてみた。
意外とイイ。最初に使った電源モジュールがおかしかったのか?
発熱量ほぼなし。ヒートシンク不要。
経過観察してみます。
80スープラに乗って、電子工作して、魚釣りして、ZZR250でツーリングして、プログラミングして、キャンプして3Dプリンタで遊んで、原付バイクを作って、スキーして、酒飲んで寝る人のブログ
タグ「Webカメラ」の検索結果は以下のとおりです。
電源周りをリチウムイオン電池18650の3本並列に変更してみた。
これにより、稼働時間が大幅に伸びた。
しかし、依然として稀にgoogleドライブのスクリプトを叩かないことがある。
また、依然として発熱量が多い。
試しに、固定観念を捨て去り、電圧を5.3v低下させてみた。
意外とイイ。最初に使った電源モジュールがおかしかったのか?
発熱量ほぼなし。ヒートシンク不要。
経過観察してみます。
気になるほどではないけど、まれにエラーでアップされていないことがあったので対策してみた。
まずは電源。EAS32は3.3vでも稼働するとなっているけど、redditやgithubなんかのレビューを見ると5v以上を推奨しているみたい。
安全策をとって5v仕様にしていたが、何かの拍子に電圧が降下している様子。
使用中の電圧を計測すると5.1vから5.2v出ていた。
実験的に電源モジュール、接続しているケーブルも太いものに変更してみた。
実験なので可変式。少し高めの5.8vに変更。
偶然かもしれないが、精度は向上した。これが正解化は不明で、変更前のモジュールが破損していたのかもしれない。
お世話になっているmgo-tec電子工作さんのサイトでは5Vラインが最大1vの電圧降下が確認されたとのこと。
この辺が影響していたのかな。
いずれにしても、しばらく観察します。
前回の記事はこちら → 【IoT】ESP32で撮った写真をgoogleドライブに転送してみた。【前編】
やりたいことが、そのままあった。
この手の欲しい情報はgithubが良い。片言の英語でもなんとか探せる。
ESP32-camで撮影 → googleドライブのscriptを叩く → データをアップロード
を2分間隔で繰り返す。
ESP32のスケッチはhttps://github.com/gsampallo/esp32cam-gdriveを参照してください。
SSIDとパスの設定は9行目付近
const char* ssid = "SSID"; //your network SSID
const char* password = "PASSWORD"; //your network password
11行目で後述するスクリプトを指定します。
String myScript = "/macros/s/XXXXXXXXXXXXXXXXXXXXXX/exec"; //Replace with your own url
撮影間隔は101行目の
deray(60000)
を変更してください。1000=1秒です。
googleドライブに転送用フォルダを作成します。とりあえず「ESP32-CAM」としておきました。
次にスクリプトを設置します。
googleドライブ → 新規 → その他 → googleAPPscript
function doPost(e) {
var data = Utilities.base64Decode(e.parameters.data);
var nombreArchivo = Utilities.formatDate(new Date(), 'Asia/Tokyo', 'yyyyMMdd_HHmmss')+".jpg";
var blob = Utilities.newBlob(data, e.parameters.mimetype, nombreArchivo );
// Save the photo to Google Drive
var folder, folders = DriveApp.getFoldersByName("ESP32-CAM");
if (folders.hasNext()) {
folder = folders.next();
} else {
folder = DriveApp.createFolder("ESP32-CAM");
}
var file = folder.createFile(blob);
return ContentService.createTextOutput('Completo')
}
を書き込んだら適当な名前で登録
公開 → アプリの公開
Execute the app as: → 自分のアドレス
Who has access to the app → Aniyone even anonymous
要は、アップされた画像の所有権は自分だけで、app自体は誰がアクセスしてもいいよってことです。
ESP32をリセットして終了
googleドライブの「ESP32-CAM」フォルダに画像が転送されていれば成功です。
完璧に動作しました。