Raspberrypiで動体検知カメラを自作

はじめに

自宅のセキュリティを強化したいと思ってRaspberryPiで監視カメラを自作。セキュリティサービスや高価な監視カメラを買う前にちょっと試してみたいという方向け。
具体的には、玄関前やリビング窓の不審者を検知しLINE通知させる仕組みとしている。将来的にはLINEBotにメッセージを送ると撮影させる事も考えたい。

準備するもの

・RaspberryPi Zero WH
Screenshot 2019-11-18 at 17.22.42.png
・カメラモジュール
Screenshot 2019-11-18 at 17.32.03.png
・zero用カメラケーブル
Screenshot 2019-11-18 at 17.24.43.png
※これらは事前に接続しておいてください

・RaspberryPiへRaspbianOSのインストール
・SSH接続ユーザの作成
LINE Notifyアクセストークン

今回はなるべく小型に作ることをコンセプトにしているため、RaspberryPi Zeroを選択した。このスターターキットは安定稼働に必要な5V3A対応電源と、フリスクサイズのケース、さらにケースにはカメラが取り付けられる穴が空いているので、初心者にも始めやすいと思う。
RaspberryPi3を利用する場合、カメラモジュールをそのまま使えるのでzero用ケーブルは不要。

ただひとつ失敗したことはzero WHはGPIOピンがデフォルトで付いていて、カメラ穴が空いている上蓋ケースを取り付けられなかった。GPIOピンは使わずカメラモジュールだけを使いたい場合はzero Wを購入することをおすすめする。
Screenshot 2019-11-18 at 17.28.08.png

ゴール

RaspberryPiで動体検知するとLINEに画像を送付する

設定

RaspberryPiがカメラモジュールを認識するように有効化

sudo raspi-config

動体検知にはmotionというモジュールを利用

sudo apt-get install motion

Daemonが起動できるように所有者を変更

chown motion:motion /var/lib/motion  

motion.confの設定。YOUR_PERSONAL_ACCESS_TOKENはLINE Notifyに合わせて設定

/var/etc/motion.conf
#解像度をLine通知に合わせてなるべく上げる
width 1024
height 768

# N秒以内のイベントを同一イベントとする設定
event_gap 5

# 動体検知したイベントの中で、一番変化が大きかった画像を保存する
output_pictures center

# 動画は保存しない
ffmpeg_output_movies off

# 動体検知箇所を赤枠表示
locate_motion_mode on

# 変化があったピクセル数を右上に表示
text_changes on

# 右下の時刻表示サイズを倍にする(デフォルトは小さくて見づらい)
text_double on

# 画像保存時に、LINE Notifyに送信する
on_picture_save curl https://notify-api.line.me/api/notify -X POST -H 'Authorization: 
Bearer YOUR_PERSONAL_ACCESS_TOKEN' -F 'imageFile=@%f'  

デーモンによる自動起動設定

/etc/defaults/motion
start_motion_daemon=yes 

サービス起動+自動起動設定

sudo service motion start
sudo update-rc.d motion defaults   # 自動起動設定

結果

玄関とリビングの前の足元に設置してみたところ。変化があった部分に白枠がついてLINEに通知してくれるようになった。
Screenshot 2019-11-18 at 18.19.15.png

とりあえずのお試しとしてはGood!だけど運用上の課題はたくさんありそう。ストレージ寿命、電源供給、自然環境(温度、風雨)対策など。それらの検討はまた別記事で。

参考

LINE Notifyを使って動体検知
https://engineering.linecorp.com/ja/blog/using-line-notify-to-send-stickers-and-upload-images/

motionのパラメータ設定
https://www7390uo.sakura.ne.jp/wordpress/archives/250

Why do not you register as a user and use Qiita more conveniently?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
Comments
Sign up for free and join this conversation.
If you already have a Qiita account