のんびりサイト

ラズパイとDHT11で温度・湿度を測定する方法

実現したいこと

使用するもの

DHT11とは?

主な仕様

配線方法

下準備


pip install git+https://github.com/AmbientDataInc/ambient-python-lib.git
git clone https://github.com/szazo/DHT11_Python.git

DHT11_Pythonというフォルダ内で作業する。
ambient のアカウントを作成し、チャネルIDとライトキーを取得する。

ソースコード


import ambient
ambi = ambient.Ambient(チャネルID,"ライトキー")

import RPi.GPIO as GPIO
import dht11
import time
import datetime

# initialize GPIO
GPIO.setwarnings(False)
GPIO.setmode(GPIO.BCM)
GPIO.cleanup()

instance = dht11.DHT11(pin=4)

while True:
    result = instance.read()
    if result.is_valid():
        print("Last valid input: " + str(datetime.datetime.now()))
        print("Temperature: %d C" % result.temperature)
        print("Humidity: %d %%" % result.humidity)
    r = ambi.send({"d1":result.temperature, "d2":result.humidity})
    time.sleep(5)
    

注意点

DHT11の読み取り間隔は6秒以上あけた方が良い。
短い間隔でデータ要求しても、 データが出ない場合がある。

関連ページ