OrangePiのOSはARMBIAN 5.31 stable。
買ったのは、
- BMP180モジュール 200円くらい
- BME280モジュール 550円くらい
- ジャンパーケーブル メス-メス 100円くらい
- ピンヘッダ 150円くらい
まずハードウェア側の整備。
OrangePi本体のI2Cポートはピンが出てないので(RaspberryPiは出ているのだが…)ピンヘッダを半田付けし、BMP180/BME280モジュールは付属してくるピンヘッダを半田付け。
--
OragePi 1 - VCC BMP180
OragePi 3 - SDA BMP180
OragePi 5 - SCL BMP180
OragePi 9 - GND BMP180
--
をジャンパーケーブルで結線する。
こんな感じになった。
次いでソフトウェア側の整備。
/etc/modprobe.d/fbdev-blacklist.conf にblacklistを2行追加してreboot。
aptitude install i2c-tools libi2c-dev をインストール。
--
blacklist pcf8591 ←この行追加
blacklist bmp085 ←この行追加
--
# reboot
# aptitude install i2c-tools libi2c-dev
0 1 2 3 4 5 6 7 8 9 a b c d e f
00: -- -- -- -- -- -- -- -- -- -- -- -- --
10: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
20: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
30: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
40: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
50: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
60: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
70: -- -- -- -- -- -- 76 --
デバイスが、/dev/i2c-1 ではなく、/dev/i2c-0 で見えているので、プログラムを一部書き換え。
char *bus = "/dev/i2c-1";
↓
char *bus = "/dev/i2c-0";
# ./bme280_p -a
Temperature in Celsius : 26.07 C
Temperature in Fahrenheit : 78.92 F
Pressure : 1006.47 hPa
Relative Humidity : 0.00 %RH
この例で繋いだのはBMP180だったので湿度は取れていないが、同じようにBME280を繋げば、湿度も取れる。
気圧のデータを、muninに取ってみた。グラフ出力サンプルはこんな感じ。
緑のラインはBMP180の計測値、青のラインは最寄りの気象台が発表している1時間毎の気圧。
こうしてみると、ほぼ一定の誤差で、気圧の変動は気象台の計測値を完全にトレースしている。まあ、当然と言えば当然だが、わざわざ自前で気圧を測らなくても、気象庁のデータで十分だろうということが分かってしまった……。
しかし、たかだか数百円で、カンタンにデータが取れるようになったので、これはなかなかいいんじゃなかろうか。夏休みの自由研究とかに向いているのではなかろうか?
タグ:OrangePi
▼レンタルサーバー・VPS比較表を見る▼