スポンサーリンク

GroveシリアルカメラとArduinoを繋いで写真撮影をしてみる【Connect Grove serial camera and Arduino and try taking pictures】

今回はGroveシリアルカメラとArduinoを繋いで写真撮影をする方法をご紹介させていただきます。

Arduinoをやり始めて色々なセンサーなどを組み合わせて電子工作などをやってきました。そのときカメラを使用してみたいなと思ったので探してみたところ、見つけたのが「Groveシリアルカメラキット」でした。

さっそくこちらを購入。Arduinoと接続してみたところなかなか撮影まで上手くいかなかったので、そのときの情報を以下に紹介したいと思います。

購入したもの

今回は以下のものを購入してきました。今回は「Groveシリアルカメラキット」を使用するので簡単に接続できる「SDカードシールド」も購入することにしました。理屈が分かればSDカードシールドが無くても配線して動かせるようになると思います。

・Arduino Uno
・Groveシリアルカメラキット
・SDカードシールド
・SDカード
・Groveボタン
・Arduino USBケーブル

ハードを組立てる

以下のような感じに組み立てました。

①SDカードシールドをArduinoの上から差し込みます。
②SDカードシールドに「Groveシリアルカメラ」「Groveボタン」「SDカード」を接続します。
③電源を供給するためにUSBケーブルでArduinoとPCを接続します。

これだけでハードの組み立ては完成です。

サンプルコードをArduinoに書き込む

以下のGithubからサンプルコードをダウンロードし、Arduinoに書き込みます。

サンプルコード

サンプルコードにはハードウェアシリアル用ソフトウェアシリアル用のものがあります。今回はハードウェア用のサンプルコードを使用します。
ソフトウェアシリアル用のサンプルコードは色々と試してみましたが動かすことができませんでした。

ArduinoIDEで上記のサンプルコードを開いたら『→』ボタンでArduinoに書き込みます。ArduinoIDEのバージョンによってはここでコンパイルエラーが発生するものがあるようです。私も最初は『1.6.13』のバージョンを使用していましたが、こちらのバージョンではコンパイルエラーが発生してしまいましたので、現時点の最新バージョンである『1.8.5』を入れ直すとエラーが発生することなく書き込めることができました。

Groveシリアルカメラで撮影してみる!

上記までの準備が全て整ったら撮影してみます。撮影時の動作はArduinoIDEのシリアルモニタを開いて確認してみると分かりやすいです。

まずは初期化処理が動作します。ボタンを押下すると「撮影」→「SDカードへの保存」に動作が移ります。1回の撮影に約5秒ほどの時間がかかります。カメラのLEDが点灯するのでそれを確認しながらすると分かりやすいです。

サンプルコードの中身が知りたい場合はこちらの記事もどうぞ
Groveシリアルカメラのサンプルコードを解説【Grove serial camera sample code commentary】

Groveシリアルカメラが不安定なのでサンプルコードを使用しても多々撮影に失敗すると思います。
シリアルモニタで撮影が成功すると以下のように表示されます。

SDカードの写真を確認してみる

SDカードに写真が保存されているか確認します。SDカードをPCに差し込んで開いてみると写真が保存されていることが確認できます。更新日時が気になりますが、サンプルコードでは全部同じ日付になってしまうようです。

以上、今回はGroveシリアルカメラとArduinoを繋いで写真撮影をする方法をご紹介させていただきました。