トランソニックソフトウェア

ブログ
BLOG

2019.05.08

[Arduino] Arducam Miniモジュール(5メガピクセル)を購入してみた

Arduinoで動作する高性能カメラを試してみたくて、スイッチサイエンスで5メガピクセルSPIカメラを購入しました。

Arduino以外にもRaspberryPiなどでも動作するようです。

今回は Arduino UNO、Arduino MEGA2560に接続してみました。

今回の記事は、Arduino UNO R3 (互換機)と接続したときの内容です。

※5メガピクセルイメージセンサ OV5642

https://www.switch-science.com/catalog/3781/

 

初めに・・

想像よりもずっしりとして重量感があります。

こんなにも小さいカメラでまともに写るのか不安になります。

 

(1) ピンを結線してArduino UNO R3と接続する

8ピンのデュポンワイヤが付属していますのでピンに順番に挿し、スイッチサイエンスのチュートリアルに載っているようにArduino UNOと結線してみます。

また、PCにUSBケーブルで接続します。

http://www.arducam.com/knowledge-base/mini-tutorial/

 

 

(2) カメラライブラリをArduino IDEの librariesに登録する

以下の4つのライブラリをArduino IDEの librariesにコピーする

 

  • ・ArduCAM
  • ・ArduCAM_Touch
  • ・OV7670FIFO
  • ・UTFT4ArduCAM_SPI

 

(3) memorysaver.hファイルを修正する

 

OV2640_MINI_2Mピクセル、OV5642_MINI_5Mピクセル、またはOV5640_MINI_5Mピクセルカメラモジュールを有効にするには librariesにコピーした ArduCAM内にある memorysaver.h ファイルを修正する必要があるらしい。

以下のようにコメント行を変更しました。

 

(4) サンプルスケッチを実行する

libraries/ArduCAM/examples/mini/ArduCAM_Mini_Video_Streaming においてあるスケッチを実行します。

コンパイルして、Arduino UNOにインストールします。

 

(5) Windowsホストアプリを実行して画像を取得する

インストールが完了後、Arudino IDEを閉じて、以下のPATHにあるWindowsアプリを実行します。

libraries/ArduCAM/examples/host_app/ArduCAM_Host_V2.0_Windows/ArduCAM_Host_V2.exe

 

Arduino UNOとPCをUSBで接続した状態で、
[PORT]をArduino UNOと接続しているPORTを選択します。
[Baudrate]を921600を選択、
[Pix]を今回のカメラと同じ5642にします。

その後、[Open]ボタンを押して接続して、[Mode]をContinuousに変更。[Capture]ボタンを押すと正常に動作している場合は画像が別ウインドウで表示されます。結構、解像度高く綺麗に表示されます

[Open]ボタンを押したときに結線が問題無ければ、[SPI interface OK.]のログが出ますが、接続に問題があれば [SPI interface Error!]のメッセージが連続して表示されてしまいます。その場合は接続を見直してください。

Arduino UNOでは上記の結線で問題有りませんでしたが、MEGAと接続しようとしたときには結線方法が違います。

 

(6) Arduino MEGA 2560と接続する

MEGAに普通に接続すると ホストアプリに[SPI interface Error!]のメッセージが表示されます。

ArduCamライブラリのチケットを調べていると以下の記事に接続方法が載っていました。

https://github.com/ArduCAM/Arduino/issues/175

 

上記の内容に従って接続場所を以下のように変更したところ正常に動作するようになりました。

 

(7) 動作させてみて・・・

思った以上の高解像度でした。しかし、動体に対してはブレが酷い。静止している物体を撮影するには問題なく高いクオリティの画像が撮れますが、動きのある被写体には使えないなという印象です。