YouTubeにアップしたラズベリーパイから温度湿度センサーの値をLINEでスマホに送るプログラムです。センサーはDHT11を使用しています。湿度~%のパーセントの表示は半角英数ではなく日本語にしています。(半角英数だとエラーがでました。)

データの送信にはLINE Notifyを利用しています。

プログラムを実行すると最初のほうはセンサーの値が0になってしまうことがあったので待機時間をいれてみました。

 

import requests
from time import sleep
import RPi.GPIO as GPIO
import dht11

# DHTのポート番号
PIN = 4

# GPIOを初期化
GPIO.setwarnings(False)
GPIO.setmode(GPIO.BCM)
GPIO.cleanup()
# DHT11をセットアップ
dht11_obj = dht11.DHT11(pin=PIN)

sleep(0.1)

res = dht11_obj.read()

ACCESS_TOKEN = "ここに自分のトークン入れてね"

headers = {"Authorization": f"Bearer {ACCESS_TOKEN}"}

data = {
    "message": "温度%d℃湿度%d%
LINE Notifyより!"%(res.temperature,res.humidity)
}


requests.post(
    "https://notify-api.line.me/api/notify",
    headers=headers,
    data=data,
)