アナログ値を測定して、ブラウザに表示する(WebIOPiを使用)

WebIOPi・ドライバは、オープンソースソフトウェア(Apache License 2.0)です。
(作者および弊社が動作を保証するものではありません)
なお、Raspbian BusterおよびStretchで動作を確認しています。(最終確認日:2019年11月14日)
今後OS等の仕様変更により動作しなくなる可能性があります。

準備

初めて使用する場合は、WebIOPiのインストールとセットアップ(ボードの取り付け)をおこないます。

ラズベリーパイにWebIOPiをインストールする
AIO-32/0RA-IRCのセットアップ(ラズベリーパイ)

ソフトウェアの設定

「WebIOPi-0.7.1/python/webiopi/devices/analog」ディレクトリに移動します。

$ cd ~/WebIOPi-0.7.1/python/webiopi/devices/analog

ドライバをダウンロードします。

$ wget https://raw.githubusercontent.com/y2cjp/WebIOPi/master/WebIOPi-0.7.1/python/webiopi/devices/analog/aio_32_0ra_irc.py

エディタで「__init__.py」を開きます。

$ sudo nano __init__.py

最終行に以下を追加します。

DRIVERS["aio_32_0ra_irc"] = ["AIO_32_0RA_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]
aio_32_0 = AIO_32_0RA_IRC

上書き保存をしてエディタを終了します。
(「Ctrl+X」 → 「Y」 → 「Enter」)

動作確認

WebIOPiを起動します。

$ sudo webiopi -d -c /etc/webiopi/config

ブラウザで「(ラズベリーパイのIPアドレス):8000/app/devices-monitor」にアクセスします。

  • デフォルトユーザー名:webiopi
  • パスワード:raspberry

以下のページが表示されます。
アナログ入力電圧の確認がおこなえます。

AIO-32/0RA-IRCのWebIOPiでのブラウザ表示

REST APIも使用できます。

HTTP GET  /devices/aio_32_0/analog/0/integer  # チャネル0を読み出し
HTTP GET  /devices/aio_32_0/analog/0/float    # チャネル0を読み出し(float)  
HTTP GET  /devices/aio_32_0/analog/0/volt     # チャネル0を読み出し(電圧)  

HTTP GET  /devices/aio_32_0/analog/*/integer  # 全てのチャネルを読み出し
HTTP GET  /devices/aio_32_0/analog/*/float    # 全てのチャネルを読み出し(float)  
HTTP GET  /devices/aio_32_0/analog/*/volt     # 全てのチャネルを読み出し(電圧)  

参考資料

AIO-32/0RA-IRCの製品情報・ドキュメント
WebIOPi公式サイト