WebIOPiを使ってスマホでRaspberry Piを制御する(準備編)
こんにちは.
ここまで学んできたことでラズパイを使ってかなり色々なことができるようになりましたが,他の人に使ってもらおうと思うと少しハードルが高いと思います.なぜならコマンドラインを使いこなせる人がそう多くはないからです.そこで,ブラウザを使ってPCやスマホから制御するようにしたいと思います.
そのために使用するのがWebIOPiというフレームワークです.フレームワークとは複雑な処理を簡単にしてくれて(抽象化と言います),人間がより使いやすくしてくれる仕組みのことです.
以下のWEBサイトからMacインストーラをダウンロードします.
WebIOPi - Browse Files at SourceForge.net
それを以前の記事を参考にSFTPでラズパイに転送します.転送先は/home/piの直下にします(以下の画面).
ラズパイにログインして,以下のコマンドを入力して先ほど転送したファイルを展開します.
tar xvfz WebIOPi-0.7.0.tar.gz
※"WebIOPi-0.7.0.tar.gz"の部分はダウンロードしたファイル名に合わせてください.
次に,セットアップスクリプトを実行します.これはインストールに必要な手順をシェルスクリプトにしてくれているものです.nanoでsetup.shの中身を見ると勉強になるかもしれません.このスクリプトはWebIOPi-0.7.0というディレクトリの中にあるため,cdコマンドでそのディレクトリに移動します.
cd WebIOPi-0.7.0
sudo ./setup.sh
以下の文字列が表示されたらインストール成功です.
WebIOPi successfully installed
そしてそのままWebIOPi-0.7.0のディレクトリで,下記のコマンドを実行します.
sudo /etc/init.d/webiopi start
WebIOPiはデーモンと言って,常に命令を待ち受ける形で起動されます.上記のコマンドはそれをスタートするためのものです.
システム起動時に自動的にWebIOPiが起動するように設定するには,下記のコマンドを実行します.
sudo update-rc.d webiopi defaults
次に一般ユーザである「pi」にWebサーバのドキュメントルート(ファイルをアップロードするところ)のオーナー権限を付与します.
sudo chown pi -R /usr/share/webiopi/htdocs
権限が付与できたらその場所にテスト用のディレクトリを作成します.
sudo mkdir /usr/share/webiopi/htdocs/test
これで準備は完了です.実際にブラウザからアクセスしてみましょう.Macでもスマホでも構わないので,ブラウザから下記の通りのURLでアクセスします.その時,そのMacやスマホがラズパイと同じルータに接続している必要があります.
http://[ラズパイのIPアドレス]:8000
例えば私の場合,ラズパイのIPアドレスが192.168.11.21なので,以下のようなURLになります.
8000はWebIOPiが割り当てられているポート番号です.ポート番号とはアプリケーションに割り当てられている番号でした(以前の記事).
うまくアクセスできるとIDとPASSWORDを求められますので,下記の通り入力します.
ID: webiopi
PASSWORD: raspberry
ログインできたら下記のような画面が表示されるはずです.
そこからGPIO Headerを選択すると,下記の画面に遷移します.
次回はこの画面の説明と,実際に使ってみる方法を解説します.
参考文献
[1]Raspberry Piで遊ぼう! 改訂第3版 〜 モデルB+完全対応
[2]hiramine.com「WebIOPiのインストール」(http://www.hiramine.com/physicalcomputing/raspberrypi/webiopi_install.html)