ラズパイのGPIOをブラウザから操作できるツールWebIOPiを試してみた
WebIOPiについて
Raspberry PiのGPIOをブラウザから操作出来るツールのWebIOPiをRaspberry Pi 3 B+にて試した時の備忘録。
尚、WebIOPi は2015年に開発が止まってしまっていて Raspberry Pi 3 B+にて実行するにはパッチを当てる必要がある。
Raspberry Pi 4にてWebIOPiが正常に動作するかどうかは試していないのだが、いずれは試してみたいと思っている。
上記のようなGPIOを操作できるページがブラウザ上に表示されてピン番号やその横のIN、OUTをクリックすることでRaspberry PiのGPIOが操作が可能になる。
環境
尚、WebIOPi なのだがパソコンの性能やブラウザによっては表示されない事がある様だ。
ちなみに自分は今回は以下の環境で試した。 ラズパイ Raspberry Pi 3 B+ OS Raspberry Pi OS 32Bit パソコン DELL G7 15 7588(Windows10) ブラウザ Google Chrome
インストール
ファイルの確認
こちらのホームページにアクセスしてダウンロードをクリックする。
最新(最終?)版のファイル名がWebIOPi-0.7.1.tar.gzである事を確認する。
ここでダウンロードをしてファイルをRaspberry Piにコピーをしても良いだがRaspberry Piから直接wgetコマンドでダウンロードすることにする。
ダウンロード
Raspberry Pi上でLXterminalを起動して以下のコマンドでホームディレクトリ配下に作業用のディレクトリを作成する。
作成したディレクトリに移動してWebIOPiをダウンロードする。
WebIOPi-0.7.1.tar.gzがダウンロードされた。
ファイルの解凍
以下のコマンドでファイルを解凍する。
オプションの説明。 -x アーカイブされたファイルを解凍する -v アーカイブ結果を表示する -f アーカイブファイル名を指定する
解凍したら元のtarファイルは不要なので削除する。

修正パッチ
Raspberry Pi 3 B+で動作させるために修正パッチを取得する。
ディレクトリを移動してから修正パッチを入手する。
以下のコマンドで修正パッチをあてる。

セットアップ
セットアップを開始する。
途中でインターネット越しの接続を行うかどうかの確認をされるが、今回はインターネット越しにはアクセスしないので”n”と答える。
Do you want to access WebIoPi over Internet ?
以上でインストールが終了した。
サービスの起動
サービスファイル
WebIOPiサービスをsystemctlから起動出来るように設定ファイル(サービスファイル)をダウンロードする。
尚、サービスファイルは/etc/systemd/system/配下にコピーする。
サービスファイルの中身は以下の通り。
syslog.target、network.targetの後にExecStartに記述されたコマンドでWebIOPiを起動している。
尚、各セクションの意味は以前の「systemdによる自動起動」の記事を参照して欲しい。
startする
下記のコマンドでWebIOPiをスタートする。
スタート後のステータスの確認は以下のコマンド。
自動起動
Raspberry PiのOS起動時に常にWebIOPiを自動起動したい時はenableコマンドを使う。
この辺のコマンドについても詳細は「systemdによる自動起動」の記事を参照して欲しい。
ログインをする
パソコンのブラウザからRaspberry PiのIP Addressとポート番号を入力してWebIOPiにアクセスする。
Raspberry PiのIP AddressはLXTerminalからのifconfigコマンドで確認をすることができる。
またデフォルト設定だとRaspberry Piの IP AddressはDHCPより毎回空いているAddressを割り当てられるので前回と違ってくる可能性がある。
systemctl enableで自動起動の設定をしている場合はIP Addressが変わってしまうのは都合が悪いので固定IPを設定すると良い。
設定方法は以前の「RaspberryPi 3 B+ 固定IPの割当」の記事を参照して欲しい。
IDとパスワード
接続時にIDとパスワードの入力を求められるので、
- ID:webiopi
- password:raspberry
トップページ
GPIO Headerをクリックすると下記のページが表示される。
実際のRaspberry Piのピン番号と同様に並んでいるので分かりやすい。
IN、OUTをクリックするとINとOUTが切り替わる。
ピン番号をクリックするとLOWとHIGHが切り替わる。
LEDの点灯
WebIOPiでのLEDの点灯を試してみる。
回路図
GPIO23をOUTに変更
ピン番号16、GPIO23の右横をクリックしてINからOUTに変更する。
LED点灯
16(ピン番号)をクリックすると色が黒からオレンジに変わりLOW→HIGHになったことが分かる。
パソコンのブラウザ経由でRaspberry Piのピンを操作してLEDを点灯させられる事が分かった。
以上で今回の記事は終了する。
この記事が何処かで誰かの役に立つことを願っている。
GPIO Headerの画面を開くとこのサイトではIN OUTのようになっている灰色の枠に何も表示されておらずpin番号を押しても何も変化がありません。
解決方法を教えていただいたら幸いです
ログインが出来たという事はラズパイ上でwebiopiのサービスは起動しているのだとは思います。
F5でブラウザをReFleshしてらどうでしょうか。
またブラウザによっては読み込めない事があるようです。
自分はGoogle chromeを使用しています。