12
12

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

M5Cameraで定期撮影して、写真をGoogle Driveに自動アップロードする

Last updated at Posted at 2019-10-09

#はじめに
image.png

200万画素(1600 x 1200)のカメラユニットを搭載しているM5CameraをArduinoでプログラムして、15秒に一回撮影し、Google Driveに自動アップロードするようにします。

M5Cameraについては下記を参照
M5Camera - 通常レンズ (4MB PSRAM搭載)
ESP32Cam/M5Camera クイックスタート
M5Camera をレビューしてみた。分解したり、Arduino IDE でスマホに映したりする実験
#必要部材

製品 説明 URL
M5Camera カメラユニット http://ssci.to/5207
Google Drive Googleが提供しているクラウドのファイル管理サービス https://drive.google.com/drive/

#参考サイト
M5CameraでGoogle Driveにアップロードする

#ソースコード

参考サイトで掲載されているオリジナル版からの変更点は下記

  • Googleの証明書が古く通信できない状態だったので新しくしました。
  • Google Driveのフォルダへのアップロードに対応しました。
  • 起動時にNTPサーバから時刻を取るようにしました。
  • ファイル名に日付を入れるようにしました。
  • 15秒ごとに定期撮影するようにしました。

#作成手順
##M5CameraとArduinoの準備

  1. M5Cameraをパソコンにつなぎましょう
    image.png

  2. Arduino IDEを開き、環境設定をクリック
    image.png

  3. image.pngをクリック
    image.png

  4. 下記を入力して、OKを押す。
    https://dl.espressif.com/dl/package_esp32_index.json
    image.png

  5. OKをクリック
    image.png

  6. [ツール]-[ボード]-[ボードマネージャ]をクリック
    image.png

  7. 情報の読み込みに時間がかかるのでしばらくまつ。赤枠の部分で読み込みに処理が表示されなくなるまでまつ。
    image.png

  8. esp32と入力し、インストールをクリック
    image.png

  9. 下の進捗が消え、インストール中が消えるまで待つ。
    image.png
    下記のようになったら、[閉じる]をクリック
    image.png

  10. [ツール]-[ボード]-[ESP32 Wrover Module]をクリック
    image.png

  11. [ツール]をクリックし、各項目を設定する。
    image.png

項目 設定
ボード ESP32 Wrover Module
Upload Speed 921600
Flash Frequency 80MHz
Flash Mode QIO
Partition Scheme Huge APP (3MB No OTA/1M APIFFS)
Core Debug Level なし
シリアルポート ESP32 WROVER ( M5Camera )のUSBポート
書込装置 USBasp

##Google Driveのフォルダ準備

  1. Google Driveに画像ファイルをアップするフォルダを作るため、下記にアクセスします。
    https://drive.google.com/drive/
    左上のimage.pngをクリックした後、フォルダをクリック
    image.png

  2. フォルダ名を入力して、作成をクリック
    image.png

3.フォルダ(下記ではTest)をダブルクリック
image.png

4.https://drive.google.com/drive/u/1/folders/よりも後の文字列をメモしておきます。
文字列はメモ帳にでも貼っておいてください。
 image.png

##ソースの用意 

  1. 下記にブラウザ(chromeでOK)でアクセスして、[Clone or Download]をクリックして、[Download ZIP]をクリックする。
    https://github.com/MypaceEngine/m5camera-arduino-googleDrive
    image.png
     
  2. m5camera-arduino-googleDrive-master.zipを展開して、フォルダ名をm5camera-arduino-googleDrive-masterからm5camera-arduino-googleDriveにする。
     
  3. [ファイル]-[開く]をクリックし、m5camera-arduino-googleDrive\m5camera-arduino-googleDrive.inoを選択
     
  4. 57行目くらいにある設定を編集
ソース 変更内容
String ssid = "SSID"; あなたのWIFIのSSIDをSSIDの部分に置き換えてください
String pass = "PASSWORD"; あなたのWIFIのパスワードをPASSWORDの部分に置き換えてください
String folderid="FOLDERID"; Google Driveのフォルダ準備でメモした番号をFOLDERIDに書いてください。

##Google DriveへのM5Cameraでのアクセス設定
Google DriveにM5Cameraがアクセスするための設定が必要です。

  1. Google Developers Consoleを開く
    https://console.developers.google.com/
     

  2. 左上のプロジェクトの選択をクリック
    image.png
     

  3. 右上の新しいプロジェクトをクリック
    image.png
     

  4. 好きなプロジェクト名を入力し、作成を押す。
    image.png
     

  5. [認証情報]をクリック、[認証情報を作成]-[OAuthクライアントID]をクリック
    image.png

  6. [その他]を選択し、名前に好きな名前を設定して、作成をクリック
    image.png

  7. クライアントIDとクライアントシークレットをメモしておく。
    メモ帳にでも貼っておいてください。
    image.png

##書き込み

  1. [スケッチ]-[マイコンボードに書き込む]をクリック
    image.png

##M5Cameraの設定

  1. [ツール]-[シリアルモニタ]をクリック
    image.png
  2. Client ID?が表示されたら、先ほど取得したクライアントIDを入力して、リターンキーを押す。
  3. Please access to https://accounts.google.com/o/oauth2/auth?client_id=が表示されたら
     https://accounts.google.com/o/oauth2/auth?client_id=で始まるURLにブラウザでアクセスして、許可をする。
  4. Code?が表示されているので、ブラウザ上に表示されたIDを入力をして、リターンキーを押す
  5. Client secret?が表示されているので、先ほど取得したクライアントシークレットを入力して、リターンキーを押す。

#最後に
Google DriveとWIFIの設定があっていれば、Google Driveにファイルがアップされていくと思います。
Google DriveからGoogle Photoに画像をアップしたい場合は、Google ドライブの写真や動画を Google フォトに追加するを参照してください。

12
12
5

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
12
12

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?