ラズパイで部屋の温度や湿度を取得してグラフ化しよう(USBRH編)

はじめに

ラズパイでも色々な方法で温度や湿度を取得出来ますが、今回はUSBRHの利用方法を記載しています。またおまけにmuninでのプラグインまで作成してしまおうと思います。

今回使うセンサーはこれです。

準備作業

1.コンパイル出来るように必要パッケージをインストールする。

sudo apt-get install -y gcc libusb-dev

2.以下のGitHubから、ソースをダウンロードしてきます。

3.ダウンロードしてきたソースを、適当なフォルダにWinSCPなどでコピーします。

4.コンパイルします。

sudo make

5.実行するための権限を付与する。

sudo chown root:root usbrh
sudo chmod u+s usbrh

6.作成できた実行ファイルの動作テストをしてみる。

./usbrh

7.使えるようにbinフォルダに移動する。

sudo mv -i usbrh /usr/local/bin/

muninで利用する場合の設定

1.muninのpluginを作成する。

sudo nano /etc/munin/plugins/usbrh
#!/bin/sh

if [ "$1" = "autoconf" ]; then
        if [ -x /usr/local/bin/usbrh ]; then
                echo yes
                exit 0
        else
                echo no
                exit 1
        fi
fi

if [ "$1" = "config" ]; then
    echo 'graph_title Hygrothermal Monitor'
    echo 'graph_args --base 1000 -r --lower-limit 0 --upper-limit 100'
    echo 'tmp.label Temperature'
    echo 'hum.label Humidity'
    echo 'tmp.info Temprature of Server room'
    echo 'hum.info Humidity of Server room'
    echo 'tmp.draw LINE3'
    echo 'hum.draw LINE1'
    exit 0
fi
/usr/local/bin/usbrh | awk '{ printf "tmp.value %s\nhum.value %s\n",$1,$2 }'

2.実行権限を付与する。

sudo chmod 755 /etc/munin/plugins/usbrh

まとめ

いかがだったでしょうか?今回は私の備忘録として記事を書かせていただきました。
結構簡単ですし、センサーも結構正確なので、良かったら試してみてください。