概要
季節の変わり目って体調を崩しやすいですよね。その理由として、「寒暖差疲労」というものが知られています。
これは、寒暖差の大きい環境によって自律神経の乱れがもたらされ生じる疲労のことです。
寒暖差は、時間(昼と夜)や場所(室内と室外)が変化することによって生じると考えられます。
このうち、時間変化の情報は天気予報で確認できますが、場所変化による寒暖差についての情報を目にすることは少ないのではないでしょうか。
そこで今回、毎日24時間自宅の室内気温と屋外室温をRaspberry Piを用いて測定することで、場所変化による寒暖差の可視化を試みました。
部品
名称 | 型番 | 個数 |
---|---|---|
Raspberry Pi | Raspberry Pi 3 Model B+ | 2 |
温湿度センサー | BME 280 | 2 |
特に防水対策はしていませんが、2年以上問題なく稼働しています。
ソースコード
# coding: UTF-8
import os
import datetime
import smbus
import time
from bme280 import bme280, bme280_i2c
import RPi.GPIO as GPIO
global bme280_addr
interval_sec = 290
dPath = '/home/pi/myPython'
logDir = 'home_log'
# I2C Busの指定
i2c_bus = 1
# SMBusオブジェクトの取得
i2c = smbus.SMBus(i2c_bus)
# BME280のアドレス指定
bme280_addr = 0x76
# BME280初期化
def bme280_init():
bme280_i2c.set_default_i2c_address(bme280_addr)
bme280_i2c.set_default_bus(i2c_bus)
bme280.setup()
# BME280から気圧と温度を取得
def bme280_data():
data = bme280.read_all()
return (data.temperature, data.humidity, data.pressure)
def get_data():
d = datetime.datetime.now()
date = d.strftime('%Y/%m/%d %H:%M')
temperature, humidity, pressure = bme280_data()
temperature = round(temperature, 1)
humidity = round(humidity, 1)
pressure = round(pressure, 1)
return (date, temperature, humidity, pressure)
# メイン処理
def main():
# BME280初期化
bme280_init()
# データ取得
date, temperature, humidity, pressure = get_data()
# 表示
print(date)
print("{0:6.1f} C".format(temperature))
print("{0:6.1f} %".format(humidity))
print("{0:6.1f} hPa".format(pressure))
# データ保存
d = datetime.datetime.now()
datetxt = d.strftime('%Y%m%d')
fName ="home_log_{}.csv".format(datetxt)
saveDir = os.path.join(*[dPath,logDir])
os.makedirs(saveDir, exist_ok=True)
filePath = os.path.join(*[saveDir,fName])
f = open(filePath,'a')
txt = date + ', ' + str(temperature) + ', ' + str(humidity) + ', ' +str(pressure) + '\n'
f.write(txt)
f.close()
# 待機
startTime = time.time()
while True:
timeCount = time.time()-startTime
if timeCount > interval_sec:
break
# GPIO 終了処理
GPIO.output(BL_PIN, GPIO.LOW)
GPIO.cleanup()
if __name__== "__main__":
main()
5分後の温度、湿度、気圧が、1日毎にcsvファイルとしてRaspberry Piに保存されます。
保存されたcsvファイルは、FileZillaなどのFTPソフトを用いてPCに移行します。
結果
こちらはある1日(2024年10月1日)の室内外の気温、並びに寒暖差の変動を表しています。
この図を見ると、室内の気温はほぼ変動しておらず、屋外の気温が日中にかけて上昇するのが見て取れます。
それに合わせて、寒暖差(室内気温-屋外気温)も日中にかけて高くなります。
その他の特徴として、朝8時までは寒暖差がマイナス、つまり室内の方が気温が高いことも挙げられます。
なお、この日は平日で、筆者は日中留守にしておりました。
こちらは1年間(2022年7月1日~2023年6月30日)における朝7時の室内外の気温、並びに寒暖差の変動を表しています。
この図を見ると、例えば10月から11月にかけては、室内の気温はあまり変化していませんが、
屋外の気温は低下しており、それに合わせて寒暖差も徐々に変動しているのが分かります。
一般に、寒暖差疲労は寒暖差が7℃以上の際に生じやすいと言われており、朝7時であれば12月から3月にかけてが該当するようです。
ちなみに、朝7時というのはは筆者が起床する時間で、冷暖房の影響を考慮しなくて済む時間を選択しております。
以上、室内外気温差を可視化することに成功し、結果、季節によって変動すること、また、同じ季節であっても日によって変動することが明らかになりました。
-
CoSG8
さんが
2024/10/31
に
編集
をしました。
(メッセージ: 初版)
ログインしてコメントを投稿する