デジタル入出力をブラウザから操作する(WebIOPiを使用)
WebIOPi・ドライバは、オープンソースソフトウェア(Apache License 2.0)です。
(作者および弊社が動作を保証するものではありません)
なお、Raspbian BusterおよびStretchで動作を確認しています。(最終確認日:2019年11月14日)
今後OS等の仕様変更により動作しなくなる可能性があります。
準備
初めて使用する場合は、WebIOPiのインストールとセットアップ(ボードの取り付け)をおこないます。
ラズベリーパイにWebIOPiをインストールする
DIO-8/4RD-IRCのセットアップ(ラズベリーパイ)
ソフトウェアの設定
「WebIOPi-0.7.1/python/webiopi/devices/digital」ディレクトリに移動します。
$ cd ~/WebIOPi-0.7.1/python/webiopi/devices/digital
ドライバをダウンロードします。
$ wget https://raw.githubusercontent.com/y2cjp/WebIOPi/master/WebIOPi-0.7.1/python/webiopi/devices/digital/dio_8_4rd_irc.py
$ wget https://raw.githubusercontent.com/y2cjp/WebIOPi/master/WebIOPi-0.7.1/python/webiopi/devices/digital/pca9555.py
エディタで「__init__.py」を開きます。
$ sudo nano __init__.py
最終行に以下を追加します。
DRIVERS["dio_8_4rd_irc"] = ["DIO_8_4RD_IRC"]
上書き保存をしてエディタを終了します。
(「Ctrl+X」 → 「Y」 → 「Enter」)
セットアップスクリプトを実行します。
$ cd ~/WebIOPi-0.7.1
$ sudo ./setup.sh skip-apt
「Do you want to access WebIOPi over Internet ? [y/n]」が表示されたら「n」を入力してから「Enter」キーを押します。
エディタで「/etc/webiopi/config」を開きます。
$ sudo nano /etc/webiopi/config
[DEVICES]セクションにボード定義を追加します。
[DEVICES]
dio_8_4 = DIO_8_4RD_IRC
上書き保存をしてエディタを終了します。
(「Ctrl+X」 → 「Y」 → 「Enter」)
動作確認
WebIOPiを起動します。
$ sudo webiopi -d -c /etc/webiopi/config
ブラウザで「(ラズベリーパイのIPアドレス):8000/app/devices-monitor」にアクセスします。
- デフォルトユーザー名:webiopi
- パスワード:raspberry
以下のページが表示されます。
ブラウザ上でデジタル入出力の動作確認がおこなえます。
REST APIも使用できます。
HTTP GET /devices/dio_8_4/8/value # IN0を読み出し
HTTP GET /devices/dio_8_4/*/integer # IN8~0, OUT8~0を一括読み出し
HTTP POST /devices/dio_8_4/0/value/1 # OUT0をオン