LoginSignup
0
1

More than 5 years have passed since last update.

ラズパイでオフィス環境をセンシングしてグラフ化する【センサー値取得編】(3/4)

Last updated at Posted at 2018-07-04

ラズパイでオフィス環境をセンシングしてグラフ化するのソフト準備編です。
この記事ではハード編で接続した次の3つのセンサーから値を取ってみます。

BME280から値を取る

AdafruitのBME280向けライブラリを使わせてもらいます。
使い方は上記のREADMEに記載されていますが、ざっくりと次の通りです。

  • AdafruitのGPIOライブラリに依存しているので、最初にそちらをインストールします。
sudo apt-get update
sudo apt-get install build-essential python-pip python-dev python-smbus git
git clone https://github.com/adafruit/Adafruit_Python_GPIO.git
cd Adafruit_Python_GPIO
sudo python setup.py install
  • BME280向けライブラリをダウンロードしてAdafruit_BME280.py内の I2Cアドレス を修正します。
(修正前)
# BME280 default address.
BME280_I2CADDR = 0x77
(修正後)
# BME280 default address.
BME280_I2CADDR = 0x76
  • サンプルを実行してみます。
pi@raspi-is:/tmp/Adafruit_Python_BME280 $ python ./Adafruit_BME280_Example.py 
Temp      = 27.361 deg C
Pressure  = 1015.87 hPa
Humidity  = 39.26 %

TSL2561から値を取る

sim0nx/tsl2561 を使わせてもらいます。
使い方は上記のREADMEに記載されていますが、ざっくりと次の通りです。

  • インストールします。
pip install tsl2561
  • サンプルも頂きます。
pi@raspi-is:/tmp $ cat example.py 
from tsl2561 import TSL2561


if __name__ == "__main__":
  tsl = TSL2561(debug=True)
  print(tsl.lux())
  • サンプルを実行してみます。
pi@raspi-is:/tmp $ python ./example.py 
394

MH-Z19から値を取る

先人の知見を参考にさせて頂き、そこから最小限のところを抜き出してみました。
https://qiita.com/UedaTakeyuki/items/c5226960a7328155635f
https://github.com/UedaTakeyuki/slider/blob/master/mh_z19.py

  • 最小限のところを抜粋
mh.py
# -*- coding: utf-8 -*-
import serial

ser = serial.Serial('/dev/ttyS0',
                    baudrate=9600,
                    bytesize=serial.EIGHTBITS,
                    parity=serial.PARITY_NONE,
                    stopbits=serial.STOPBITS_ONE,
                    timeout=1.0)

ser.write("\xff\x01\x86\x00\x00\x00\x00\x00\x79")
s=ser.read(9)

print ord(s[2])*256 + ord(s[3])
  • 実行してみます。
pi@raspi-is:~ $ python mh.py 
796

以上で各センサーから値が取れました。

次は ラズパイでオフィス環境をセンシングしてグラフ化する【簡易グラフ化編】(4/4) です。

0
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
1