情報技術科 No.1 石井 柊哉
①研究の背景
一人暮らしや倉庫の防犯など、防犯カメラが役に立つ場面は多い。しかし、防犯カメラは高額で、気軽に買えるものではない。
そこで、価格が手頃な小型コンピュータのRaspberry Piを用いて防犯カメラを自作すれば、コストを抑えることができるのではないかと考えた。
②仮説とねらい
Raspberry Piには、カメラやセンサなどの電子部品を取り付けることができる。そのため実習で扱ったPythonを活用して、それらを活用した防犯カメラが製作できる。
今回実現したいこと(目標)
・人を検知したらカメラで記録する
・人を検知したことをLINEで通知する
・周りが暗くてもはっきり見えるよう撮影する
・カメラの映像をWebページ上に配信する
3つ目の目標を設定した理由は、照明のついていない室内などの暗い場所での使用を想定しているため。
③研究内容
・Raspberry Piを用いて製作する
Raspberry Piは小型のシングルボードコンピュータであり、防犯カメラのような小型の装置を制作するには最適であると考えたため。
・赤外線モーションセンサーを用いて人の動きを感知する
赤外線センサーは人や物が発する赤外線に反応するセンサーである。これをRaspberry Piに接続してPythonで制御して、センサー動作の防犯カメラを実現したい。
使用したセンサーの使用は以下の通り。
人感センサーモジュール HC-SR501
入力電圧 : DC 4.5-20V
出力チャンネル: 1チャンネル (モーション検知時にON、3.3V)
作動時間 : 5-300秒 (調節可能)
検知範囲 : 受光角 120° 距離3〜7m (調節可能
本体寸法 : 24×32×26mm(約)(突起部含まず)
※ON信号出力終了後は2.5秒のインターバル期間が挿入される
※30℃を超える高温下では検出範囲が短くなる場合がある
・LINE Notifyを用いて、人を検知したことをLINEで通知する
LINE Notifyとは、自作のアプリケーションやプログラムに通知を送ることができるサービスである。
これを利用して、人の動きを検知したときにLINEで通知する機能を実現したい。
・mjpg-streamerを用いて、カメラの映像をWebページに配信する
mjpg-streamerとは、カメラの映像をネットワークを通してWebページなどに配信できる、フリーのソフトウェア。
これを利用して、外出時などにスマホからカメラの様子を確認できるようにしたい。
④技術的知識
・プログラミング言語「Python」の知識
・PythonにおけるLINEメッセージ送信の知識
・Raspberry Piにおける、センサやカメラなどの電子部品の扱い方
⑤取り組んだ内容
・人を検知したらカメラで記録する
Pythonで、picamera.PiCamera().start_recording()などの、情報技術科の実習で取り扱った関数を使用して作成する。
今回は「センサーが最後に人を検知してから10秒経過したら録画を終了する」という動作にしたいと思ったので、録画を開始してから1秒ごとにカウントダウンをし続け、10秒経過したら録画終了の命令を実行、10秒経過する前に再びセンサーが反応したら最初からカウントダウンをし直すというプログラムにした。
・人を検知したことをLINEで通知する
LINEへの通知に利用するLINE Notifyは、公式サイトからトークンというコードを取得することで利用することができる。
これを利用して、防犯カメラが人を検知したことを知らせるメッセージと、その時の様子の画像を送信する。
・周りが暗くてもはっきり見えるよう撮影する
暗い場所での撮影は暗視カメラが必要で、自分で買わないと用意できないということに後から気づいた。なので今回は科の設備にあった普通のカメラで妥協することにした。
・カメラの映像をWebページ上に配信する
3つ目の機能の代わりになにか機能を付け加えたいと思い、カメラの映像のWeb配信に取り組んだ。
この機能はmjpg-streamerという、映像をネットワークを通してWeb上に配信できる、無料で公開されているソフトウェアを使い実現した。
⑥結果
防犯カメラを安く製作できればとても役に立つと思う。今回はその目標は達成することができたが、製作に掛かる費用に対して十分な機能を実現できなかった。もう少し機能を作り、特徴的な防犯カメラにしたかった。
⑦感想・考察
今回、防犯カメラを安く製作するという根本の目的は達成できたが、途中で目標の一つが変わってしまい、計画に沿って進めることができなかった。計画性のなさが招いた結果なので、これを教訓として今後気を付けていきたい。
製作を通して、Raspberry PiとPythonの扱い方を理解し、製品づくりに応用できる知識を身につけることができた。