kimagre inrash

感想を書きます

Raspberry Pi 3 と DHT11 で温度と湿度を測ろう

time 2018/06/28

Raspberry Pi 3

2018-06-11.jpg
暑くなってきました。
相変わらずネコカメラは稼働中ですが、こう暑くなるとネコたちが大丈夫か心配になります。
2018-06-27.jpg
エアコンはつけているもののそれが適温なのかわからないため、応急処置でカメラで温度、湿度計を撮影するようにしていました。
でもさすがにちょっとアナログすぎるのでラズパイにセンサーをつけて測ってみることに。
ウチには3とzeroの2台ありますが、zeroはピンヘッダがついてないタイプ(自分でつける)なので3で試しました。

GPIO

測る前にGPIOについて理解を深めることに。
以下のサイトを参考にいわゆる「Hello, world」的なモノをやってみました。
Raspberry Pi 3でLピカ、Lチカ、Lマリオ
http://l-w-i.net/t/raspbian/led_001.txt
IMG_7599.JPG
「抵抗つけないと爆発する」みたいな記述を見かけたので怖かったのですが、無事実装。
抵抗は330Ωを使用。
光るだけで嬉しい。
だいたいどんなもんかわかったところで次へ。

温湿度センサー

IMG_7610.jpg
DHT11という温度・湿度センサーを選択。3つで650円くらいでした。
以下を参考に実装。
Raspberry Piで部屋の温度を可視化する
https://qiita.com/_hama_/items/9acb296bdf3cff03c51b
ラズパイでDHT11温湿度センサーを作動する
http://osoyoo.com/ja/2017/04/14/raspberrypidht11/
しかし・・・温度も湿度も取得できない。
安いものだから元々故障してたかな・・・?
しまいにハンダ臭くなってくる・・・
よく見たら購入したDHT11は+と-が逆でした。
基板にご丁寧に書いてあったのにちゃんと見てなかったです・・危ない。
capture3733.jpg
サンプル動かしてとりあえず取得できるように。
ただ、思ってた以上に精度が悪い。
さらに取得できないタイミングも結構ある。
まあおもちゃみたいな値段のものだからしょうがないか・・

IFTTTとgoogleスプレッドシート

温度や湿度の集計はgoogleスプレッドシートにすることにしました。
直接API叩くことも出来るけど、手っ取り早くIFTTTで連携。
トリガーはWebhooks。
以下のようなほとんどサンプルのpythonスクリプト作ってcronで一定時間ごとにセンサーをチェックしてPOST。
temp.py
# -*- coding: utf-8 -*-
import requests
import json
import datetime
import dht11
import RPi.GPIO as GPIO
#define GPIO 14 as DHT11 data pin
Temp_sensor=14
def post(t,h):
_time=datetime.datetime.now().strftime(“%Y/%m/%d %H:%M:%S”)
payload = {
“value1”: _time,
“value2”: t,
“value3”: h
}
headers = {‘content-type’: ‘application/json’}
requests.post(“https://maker.ifttt.com/trigger/XXXXXXXX/with/key/XXXXXXXXXXXXXXXX”, data=json.dumps(payload), headers=headers)
def main():
# Main program block
GPIO.setwarnings(False)
GPIO.setmode(GPIO.BCM) # Use BCM GPIO numbers
# Initialise display
# lcd_init()
instance = dht11.DHT11(pin = Temp_sensor)
  #get DHT11 sensor value
result = instance.read()
print”Temperature = “,result.temperature,”C”,” Humidity = “,result.humidity,”%”
  return result.temperature, result.humidity
if __name__ == ‘__main__’:
t, h = main()
post(t,h)
capture3734a.jpg
取得できないタイミングはあるけど、ほぼ取得できてる。
こうしてグラフになるとセンサーが仕事してる感じします。

まとめ

IMG_7614.JPG
センサーの精度にはがっかりしましたが、GPIO使っていろいろするの楽しいです。
もうちょっと勉強していろいろ出来るようになりたいところ。
あとは日中どうなるかチェックしてネコに快適な環境を構築できれば任務完了です。
2018年11月
« 10月    
 123
45678910
11121314151617
18192021222324
252627282930  

カテゴリー

アーカイブ