Raspberry Pi Zero W で見守りカメラを作ってみた


はじめに

赤ちゃんが別室で夜泣き、僕は書斎で仕事中、妻はドライヤー中。
気づくのに遅れて可哀想なことをしたなーと反省することがあったので、RaspberryPiとLineNotifyを使って見守りカメラを作ってみる事にした。

よく確認せずにアマゾンでポチってしまった結果、無線非対応のラズパイを買ってしまいました。
家にあったWifiドングルで応急処置したものの、ダサかったため急遽Zero Wを購入してこの記事を書いております。
また、カメラモジュールに関しても、よく確認しなかったため後でトラブルを引き起こします。

この記事ではRaspberryPiの動体検知のみを紹介します。
RaspberryPiOSのインストールやLineNotifyの設定などは割愛します。

準備

LineNotifyのパーソナルトークンを発行し、控えておきます。
Lineグループに対してトークンを発行することも可能ですが、その場合LineNotifyアカウントをグループに招待する必要があるため注意です。

用意したのは下記
Raspberry Pi Zero W

https://www.amazon.co.jp/gp/product/B07BHMRTTY

Raspberry Pi Zero Camera Module

https://www.amazon.co.jp/gp/product/B06XFPPBCW

その他、SDカード、リーダ、USB変換ケーブルなどが必要になります。

それでは、ラズパイにカメラモジュールをインストール!


カメラの向きが逆やんけ...
接続端子の都合上この向きでしか着きません。やらかした。。。
なんとか捻りつつ、ダクトテープなどでカメラを固定しました。多分そのうち切れます。


うわ、だせえ...

設定

VNC ViewerかSSHでラズパイに接続し、ターミナルから作業していきます。

四苦八苦しつつもRaspberryPi OSをインストールしました。

では、動体検知用にmotionというモジュールをインストールしていきます。

sudo apt-get install motion

続いて/etc/motion/motion.confの設定

#解像度上げる
width 1024
height 768

# 10秒以内の動体検知であれば同一イベントとする
event_gap 10

# 一番変化が大きかった画像を保存する
output_pictures center

# 動画は保存しない
ffmpeg_output_movies off

# 動体検知箇の枠表示
locate_motion_mode on

# 画像保存時に、LINE Notifyに送信する
on_picture_save curl -X POST -H "Authorization: Bearer (事前に発行しておいたパーソナルトークン)" -F "message = (好きなメッセージ)" -F "imageFile=@%f" https://notify-api.line.me/api/notify

これだけ!

では、motionを起動して結果を見てみましょう。

sudo motion

結果

ウチの猫にテストに参加してもらいました。

ちゃんと通知されました!

終わりに

猫の首振り程度でもバンバン通知来てたので、event_gapあたりの設定を見直す必要がありそうです。

本当はLineNotifyではなくLineBotとFirebaseを利用して、こちらの入力をトリガーにあれやこれやとやりたかったのですが、時間が足りずここまでしかできませんでした。。

皆様Amazonでのポチは計画的に!!


お疲れ様でした