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

準備

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

ソフトウェアの設定

「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」にアクセスします。

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

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     # 全てのチャネルを読み出し(電圧)

参考資料