Raspberry pi zero wでペットの為に温度監視システムを作ろうとしている話
はじめに
ペットのヘビ(コーンスネーク)のために、Raspberry Piで温度監視センサーを作れないかと思い、
はんだ付けもPythonも殆ど経験なしでしたが勉強がてらに作ってみました。
まずは、データが取れて確認が出来ればそれでよしレベルです。
Raspberry Piの設定
SSH … Enable
IP … 固定
温度センサーDHT11の接続
DHT11はモジュールになっているタイプを秋葉原のマルツで買ってきました。たしか600円くらいだったかな…
下記のサイトを参考にGPIOに接続しました。
http://www.c-sharpcorner.com/article/windows-10-iot-monitor-temperature-humidity-using-dht11/
温度センサーの情報を拾えるようにする
すでにPythonでDHT11の情報を拾うためのコードがあるので、それを利用しました。
https://github.com/szazo/DHT11_Python
git clone https://github.com/szazo/DHT11_Python.git
温度記録用スクリプトの作成
単純に1分毎にCSVファイルに日付時刻,温度,湿度を記録するだけのスクリプトをDHT11のサンプルコードを参考にしながら作りました。
import RPi.GPIO as GPIO
import dht11
import time
import datetime
# initialize GPIO
GPIO.setwarnings(False)
GPIO.setmode(GPIO.BCM)
GPIO.cleanup()
# read data using pin 14
# read data using pin 4 mod by kmizuta
#instance = dht11.DHT11(pin=14)
instance = dht11.DHT11(pin=4)
while True:
result = instance.read()
if result.is_valid():
file = open ('../temp_csv/temp.csv','a')
#print("\'" + str(datetime.datetime.now())+ "\',\'%d\',\'" % result.temperature + "%d" % result.humidity + "\'")
file.writelines("\"" + str(datetime.datetime.now())+ "\",\"%d\",\"" % result.temperature + "%d" % result.humidity + "\"\n")
file.close()
time.sleep(60)
スクリプトの実行バックグラウンドで実行し、disownすることで、ログアウトしても記録を続けます。
cd DHT11_Python
sudo python ./dht11_csv.py &
disown
イケてないところと今後の方針
- DHT11センサーが結構データを取りこぼすので、スクリプト内でリトライをする仕組みを作りたいです。
- データを現在はcronでFTPを使って一日一回VPSに上げているのですが、GoogleDriveに上げる仕組みにしたいです。
- gdriveを使ってみたが、更新が上手くできなかったのでこの方針に変更しました。
- gdriveを使ってみたが、更新が上手くできなかったのでこの方針に変更しました。
Author And Source
この問題について(Raspberry pi zero wでペットの為に温度監視システムを作ろうとしている話), 我々は、より多くの情報をここで見つけました https://qiita.com/k_mizu/items/ee24b594e7ff719ebd2a著者帰属:元の著者の情報は、元のURLに含まれています。著作権は原作者に属する。
Content is automatically searched and collected through network algorithms . If there is a violation . Please contact us . We will adjust (correct author information ,or delete content ) as soon as possible .