ラズベリーパイで監視カメラ
本日は子供のテスト期間ということもあり、趣味のラズベリーパイで遊んでました。
ターゲット
- ラズベリーパイを始めた方(これから何を作ろうか迷っている方)
- IoTに興味ある方
- ペットなど監視したい対象がある方
準備
- ラズベリーパイ(Raspberry Pi 3 Model Bを利用)
- USBカメラ
前提
- ラズベリーパイの初期設定が完了していること
- 自宅のネットワークに接続できる状態であること
- ssh接続でリモート接続できること
レベル
- 低(ラズベリーパイの構築が完了していれば)
手順
- ラズベリーパイにUSBカメラを接続
- teratermでラズベリーパイに接続
- webカメラドライバをインストール
$ sudo apt-get install fswebcam - カメラテスト
$ fswebcam image.jpg - mjpg-streamerインストール
$ sudo apt update
$ sudo apt install -y cmake libv4l-dev libjpeg-dev imagemagick
$ git clone https://github.com/jacksonliam/mjpg-streamer.git
$ cd mjpg-streamer/mjpg-streamer-experimental
$ sudo make; sudo make install - 起動スクリプト作成・実行
$ vi start_stream.sh
#!/bin/sh
PORT=”8080″ #ポート番号
ID=”****” #ID
PW=”****” #パスワード
SIZE=”1280×720″ #画面サイズ
FRAMERATE=”30″ #フレームレート
export LD_LIBRARY_PATH=/usr/local/lib
mjpg_streamer \
-i “input_uvc.so -f $FRAMERATE -r $SIZE -d /dev/video0 -y -n” \
-o “output_http.so -w ./www -p $PORT -c $ID:$PW”
ID/パスワードはBasic認証で利用します。 - 実行
$ /mjpg-streamer/mjpg-streamer-experimental/start_stream.sh - PCやスマートフォンなどで下記接続
http://IPアドレス:8080?action=snapshot
※静止画が表示されます。
http://IPアドレス:8080?action=stream
※動画が表示されます。
画像なので分かりづらいですが、action=streamで動画を取得したものをキャプチャしました。
家で飼っているハムスターを監視カメラで様子を見てました。
この方式は自宅のネットワークに接続している場合のみ見ることができますが、
ラズベリーパイを利用するとslackやLINEに画像を連携することも可能です。