パチンコ 夏休みk8 カジノラズパイで気温と湿度を測定、LINEで通知を受け取る ~前編~仮想通貨カジノパチンコパチンコ 新台 勝てる

パチンコ 夏休みk8 カジノラズパイで気温と湿度を測定、LINEで通知を受け取る ~前編~仮想通貨カジノパチンコパチンコ 新台 勝てる

パチンコ 夏休みk8 カジノラズパイで気温と湿度を測定、LINEで通知を受け取る ~前編~仮想通貨カジノパチンコパチンコ 新台 勝てる

テン ベット ジャパン 出 金k8 カジノ

高松 パチンコ イベント 9月に入ってからも暑さが続き、まだまだエアコンが欠かせない状態です。テレワークにより自宅で仕事をしている方も多いかと思いますが、部屋のコンディションがどのような状況なのかを知っておくのは重要です。そこで気温と湿度を測定して、暑さ指数に基づいた熱中症警報をLINEに飛ばす仕組みを作ってみたいと思います。

温湿度センサー「SHT31」で温度と湿度を測定する

 ラズパイで温度と湿度や気圧を測定し、表示させる方法については第1回から第3回で解説しました。この時は気温、湿度、気圧を測定できる温湿度・気圧センサーモジュール「BME280」を使って表示させました。今回は気圧を測定しないので、温湿度センサーモジュール「SHT-31」を使って表示させることにします。

 SHT31はBME280と同様に「I2C」という仕組みを使ってデータのやりとりをします。その際にはシリアルクロック(SCL)とシリアルデータ(SDA)の2本の信号線を使います。ラズパイの3番ピンがSDA、5番ピンがSCLに割り当てられており、ここからSHT31のSDAとSCLにつなぎ、データの読み書きをすることになります。

SHT31SHT31

 まずはSHT31がどのアドレスを使っているのか、「i2cdetect」コマンドを入力して調べます。

$ i2cdeetect -y 1

 すると以下のように表示されます。

0 1 2 3 4 5 6 7 8 9 a b c d e f00: — — — — — — — — — — — — — 10: — — — — — — — — — — — — — — — — 20: — — — — — — — — — — — — — — — — 30: — — — — — — — — — — — — — — — — 40: — — — — — 45 — — — — — — — — — — 50: — — — — — — — — — — — — — — — — 60: — — — — — — — — — — — — — — — — 70: — — — — — — — —

 これで「0x45」のアドレスを利用していることが分かります。

 続いては実際にデータを求めていきましょう。SHT31にI2Cアドレスとコマンドコード(MSB)、コマンドコード(LSB)を送ると、温度測定値(MSB)、温度測定値(LSB)、チェックサム、湿度測定値(MSB)、湿度測定値(LSB)、チェックサムという6個のブロックのデータが戻ってきます。これをそれぞれ読み出して、気温と湿度を求めます。

 気温と湿度は以下の計算式で求められます。変数「St」は温度測定値(MSB)、温度測定値(LSB)の和、変数「Srh」は湿度測定値(MSB)、湿度測定値(LSB)の和です。

気温 T=-45+175×測定された値St/2の16乗-1

湿度 RH=100×測定された値Srh/2の16乗-1

 これを踏まえてプログラムを作ると以下のようになります。「sht31.py」などのプログラム名で保存してください。

#!/usr/bin/env python# -*- coding: utf-8 -*-import smbussmb = smbus.SMBus(1)# SHT31のI2Cアドレスaddr = 0x45# データの読み出しsmb.write_i2c_block_data(addr, 0x2C, [0x06])data = smb.read_i2c_block_data(addr, 0x00, 6)# 気温st = data[0] <<8 | data[1]roomtemp = -45 + (175 * st/float((2**16 – 1)))# 湿度srh = data[3] <<8 | data[4]roomhum = 100 * srh/ float((2**16 – 1))# 気温と湿度の表示print ('Temp : %.1f C' %roomtemp)print ('Humi : %.1f %%'%roomhum)

 では前と同じように、気温と湿度をCSV形式のファイルで保存できるようにします。このためプログラムの最後を書き換えるとともに、変数を追加します。「sht31_kiroku.py」などのプログラム名で保存しておきましょう。

#!/usr/bin/env python# -*- coding: utf-8 -*-import timeimport smbusimport datetimet = datetime.datetime.today()smb = smbus.SMBus(1)# SHT31のI2Cアドレスaddr = 0x45# データの読み出しsmb.write_i2c_block_data(addr, 0x2C, [0x06])data = smb.read_i2c_block_data(addr, 0x00, 6)# 気温st = data[0] <<8 | data[1]roomtemp = -45 + (175 * st/float((2**16 – 1)))# 湿度srh = data[3] <<8 | data[4]roomhum = 100 * srh/ float((2**16 – 1))# 気温と湿度の表示print t.strftime("%Y/%m/%d,%H:%M"),",%-6.2f,%6.2f" % (roomtemp,roomhum)

 このプログラムができたら、定期的に測定結果を保存するよう、cronという仕組みを使います。

$ sudo crontab -e

 とエディットモードで表示したら、以下のように記述します。

*/10 * * * * python /home/pi/sht31_kiroku.py >> /home/pi/kiroku.csv

 これでホームディレクトリに「kiroku.csv」というファイルができ、毎10分ごとに温度と湿度を記録してくれます。

SHT31記録をグラフにした状態

 次回はラズパイからLINEへ気温と湿度の測定値を送るとともに、暑さ指数を警告してくれる仕組みについてご紹介します。

仮想通貨カジノパチンコサンジェルマン fc

コメントを残す

業界連盟:ベラジョン カジノ 評判 日本 カジノ k8 カジノ k8 カジノ k8 カジノ ログイン k8 カジノ k8カジノ k8 カジノ スロット | Feed | RSS | sitemap.html | Sitemap