外出先から自宅の情報を手に入れるとしたら、やはり部屋の映像あたりが気になりますよね。
と言うわけで、今回はCloud Piをつかって、Raspberry Piに接続されたカメラの映像をスマートフォンに表示してみました。
使用するカメラはRaspberry Pi Camera Boardです。
まず最初にカメラをRaspberry Pi本体に装着します。
Raspberry PiのOSは Raspbian Wheezyを使用しています。
Raspberry Piを起動させたら、まず最初にアップデートをします。
pi@raspberrypi ~$ sudo apt-get update
次にRaspberry Pi Camera Boardが使えるように設定を変更します。
pi@raspberrypi ~$ sudo raspi-config
するとこのような画面が現れます。Enable Cameraを選択して次の画面でEnableを選びます。
Finishを選択して再起動します。
カメラの画像をストリーミング再生させるために、mjpg-streamerを使います。
そのための環境構築をしましょう。
$ sudo apt-get install libv4l-dev libjpeg8-dev imagemagick $ suto apt-get install cmake $ git clone https://github.com/jacksoliam/mjpg-streamer.git
gitからクローンしてできたディレクトリの中にmjpg-streamer-experimentalというディレクトリがあるので cd コマンドでその中に移動して、makeします。
$ cd mjpg-streamer/mjpg-streamer-experimental $ make
今作業しているディレクトリの中にwwwディレクトリがあるので、その中にcamera.htmlというファイルを作りました。
$ nano www/camera.html
中身はこれだけです。
<html> <body> <img src="/?action=stream"> </body> </html>
これで準備が整いましたので、早速実行します。
$ ./mjpg_streamer -o "./output_http.so -w ./www -p 8000" -i "./input_raspicam.so -fps 10 -vf"
オプション -p 8000 でポートの番号を8000に設定し、-fps 10 でフレームレートを10に、-vfで画像を上下反転させています。
画像のサイズはデフォルトで640x480、-x -y オプションで縦横のフレームサイズを変えることもできます。
ポート番号を8000番にしたので、スマートフォン側のCloud Piの設定は次のようにします。
ブラウザのURLに
http://127.0.0.1:8080/camera.html
と入力して接続すれば、Raspberry Piのカメラの映像がスマートフォンから見れてしまいます。Cloud Pi経由で接続しているおかげで外にいても簡単にRaspberry Piカメラの画像が確認できます。ペットの様子をチェックしたり、3Dプリンタの進捗状況を見てみたり、いろいろ使えそうですね。
Cloud Piをつかってみました。(サーバ側設定)
Cloud Piをつかってみました。(クライアント側設定)
Cloud Piをつかってみました。(環境センサモジュール:前編)
Cloud Piをつかってみました。(環境センサモジュール:後編):前