Raspberry Pi3にカメラモジュール(v2)を接続してみる

Pocket



Raspberry Pi3を購入してしばらく経ちましたが、高性能なカメラモジュールが発売されたよ!との情報を目にしたので、せっかくなので購入してみることにしました。
Ubuntu Mateではもしかしたら使えないのか?なんて思ったりもしたのですが、こちらにある通りきちんと使えることがわかりましたので、自分用の設定も含めて初期設定とpythonコードをメモしておこうと思います。
ちなみに、ちょうど観葉植物が欲しくてアボカドを種から育てる方法を実践してみようかなぁ・・・なんて考えていたところでしたので、アボカド観察用定点カメラとして利用する予定でいます。

Raspberry Piとカメラモジュールの接続

まずはRaspberry Piとカメラモジュールの接続ですが、カメラから伸びている白いケーブルをRaspberry Pi本体の下の画像の赤枠で囲った部分に差し込みます。
と言ってもそのまま差し込んではダメで、正確に言うと差込口の白い枠を上に引き上げた後ケーブルを差し込んで白い枠を元に戻す感じです。挟み込むと言ったほうがいいのかな。
そうそう、一応電源を切った状態で作業したほうが良いと思います。
UbuntuMate16-04_camera_module_01

カメラモジュールを利用するための初期設定

カメラの接続が完了したら電源を入れ、端末で以下コマンドを実行して[/boot/config.txt]を編集します。

sudo vi /boot/config.txt

viが苦手な方はplumaを使うのがお勧めです。メモ帳的なテキストエディタなのでとても使いやすいですよ。

sudo pluma /boot/config.txt

[/boot/config.txt]を開いたら、469行目辺りに移動し、もし「start_x=0」と記載された行を見つけたら、「start_x=1」に変更します。さらに516行目あたりを確認し、「#gpu_mem=128」という行があったら「#」を削除して有効にします。(「start_x=1」の行頭にも「#」が存在した場合はこれも削除です。)

[/boot/config.txt]の編集が終わったら上書き保存し、続いて以下コマンドを実行します。

sudo apt-get install libraspberrypi-dev
sudo pip install picamera

編集が終わったら以下コマンドで再起動します。

sudo shutdown -r now

pythonコードの記述

続いて写真撮影用のphtyonコードの記述です。
ほぼコピペでOKですが、7行目の「/path/to/」だけは画像を保存したいディレクトリに変更してください。

#!/usr/bin/python
import picamera
from datetime import datetime
cam = picamera.PiCamera()
cam.vflip = True
fileName = datetime.now().strftime(“%Y%m%d%H%M%S”)
cam.capture( ‘/path/to/’ + fileName + ‘.jpg’ )
cam.close()

phtyonコードの記述が終わったら、「任意の名前.py」として保存します。
(今回は「~/」に「cameramodule.py」として保存します。)

カメラモジュールを使った撮影テスト

これで全ての準備が整ったのでカメラモジュールを使った撮影テストに移りましょう。
といっても、以下のコードを実行するだけですが。
(「/path/to/」はスクリプトを保存したディレクトリを指定してください)

sudo python /path/to/cameramodule.py

定点観測用のcrontab設定

カメラの撮影テストが無事完了したところで、以下コマンドを実行して定点観測(1時間に1回自動的に先ほどのコマンドを実行)用の設定をcrontabに入れたいと思います。

sudo crontab -e

もしcrontabを初めて実行した場合、以下のようにどのエディタを使うか確認メッセージが表示されます。
どれを使っても一緒ですので、使い慣れたエディタをご利用ください。

no crontab for root – using an empty one
Select an editor. To change later, run ‘select-editor’.
1. /bin/ed
2. /bin/nano <---- easiest 3. /usr/bin/vim.tiny Choose 1-3 [2]:

というわけで、crontabが開いたら以下1行を追記し、それが済んだら上書き保存します。
(「/path/to/」は環境に合わせて変更してください)

0 */1 * * * /usr/bin/python /path/to/cameramodule.py 2> /path/to/log.txt

これで毎時0分にcameramodule.pyを自動実行し、何か問題があればログがlog.txtに保存されるようになります。

アボカドの撮影環境

というわけで準備が整いました。
色々試行錯誤した結果、まずカメラモジュールについているケーブル(FFCケーブルと言うそうです)を2メートルのものに変更して取り回しを簡単にし、続いてタブレット用のアームを別途購入、最後にグルーガンでカメラモジュールのカバーとアームを接着、最終的にこんな感じになりました。
UbuntuMate16-04_camera_module_02
UbuntuMate16-04_camera_module_03

撮影した画像はこんな感じです。
接写が苦手みたいなので若干引き気味で撮影する必要があるのですが、引くと散らかっている部屋の中まで写り込んでしまうため、それを防ぐために目隠し用にすだれを引いて・・・なんてやっていたら結構手間がかかりました。
UbuntuMate16-04_camera_module_04

ちなみに、6月下旬に種を半分ほど水没させて1週間ほどで種が割れてきました。
事前調査した情報に間違いが無ければ、この後しばらくで下方向に根が伸びてきた後、上方向に芽が伸びてくるはずです。
UbuntuMate16-04_camera_module_05

もし順調に育ってきた時にはタイムラプス動画でも作ろうかなぁ。
というか、一応思いついた時からそのつもりで準備したので、ちゃんと作りきりたいなぁ。

コメントを残す

メールアドレスが公開されることはありません。