大工 の 源 さん 2k8 カジノラズパイで気温と湿度を測定、LINEで通知を受け取る ~番外編~仮想通貨カジノパチンコp 冬 の ソナタ remember sweet version

大工 の 源 さん 2k8 カジノラズパイで気温と湿度を測定、LINEで通知を受け取る ~番外編~仮想通貨カジノパチンコp 冬 の ソナタ remember sweet version

大工 の 源 さん 2k8 カジノラズパイで気温と湿度を測定、LINEで通知を受け取る ~番外編~仮想通貨カジノパチンコp 冬 の ソナタ remember sweet version

カープ 配信k8 カジノ

パチスロおすすめだい 前回までは温湿度センサーモジュール「SHT31」を使ってきましたが、以前使った温湿度・気圧センサーモジュール「BME280」でも簡単にプログラムが組めます。第2回ではスイッチサイエンスが配布しているプログラムを使いましたが、BME280のライブラリが公開されており、これを使えばもっと簡単にプログラムが組めます。順を追って紹介していきましょう。

ライブラリをインストールする

 ライブラリですが、配布サイトからダウンロードして、マニュアルでインストールすることになります。まずはファイルをダウンロードしましょう。

 サイトの左にある「Download files」をクリックし、表示されたメニューから「RPi.bme280-0.2.3.tar.gz (1.7 MB)」をクリックしてダウンロードします。ダウンロードしたファイルをWinSCPなどでラズパイに転送します。転送する場所はどこでもいいですが、piのルートディレクトリ「/home/pi/」でよいでしょう。

BME280左の「Download files」をクリックBME280「RPi.bme280-0.2.3.tar.gz (1.7 MB)」をクリックしてファイルをダウンロードする

 ダウンロードしたらラズパイに移り、コンソール画面から以下のコマンドを入力します。

$ tar -zxvf RPi.bme280-0.2.3.tar.gz

 するとホームディレクトリに「RPi.bme280-0.2.3」というフォルダができます。次に以下のコマンドを入力します。

$ cd RPi.bme280-0.2.3

 ディレクトリを移動したら、以下のコマンドでライブラリをインストールします。

$ sudo python setup.py install

 これでBME280のライブラリはインストールできました。

BME280を使った暑さ指数の測定

 続いて第1回で紹介した手順でラズパイとBME280をつなぎ合わせましょう。つないだあと、配布サイトにあったサンプルプログラムを入力して、BME280のライブラリがちゃんとインストールできているかを調べます。以下のプログラムをテキストエディタで記述して、ファイルを「bme280_test.py」などのように名前を付けて保存し、ラズパイに転送してください。

#!/usr/bin/env python# -*- coding: utf-8 -*-import smbus2import bme280port = 1address = 0x76bus = smbus2.SMBus(port)calibration_params = bme280.load_calibration_params(bus, address)# the sample method will take a single reading and return a# compensated_reading objectdata = bme280.sample(bus, address, calibration_params)# the compensated_reading class has the following attributesprint(data.id)print(data.timestamp)print(data.temperature)print(data.pressure)print(data.humidity)# there is a handy string representation tooprint(data)

 ラズパイに転送したら以下のコマンドを入力します。

$ python bme280_test.py

 入力して、以下の情報が表示されたらOKです。

1f224924-955a-4d86-ae8e-158c59b4b9612020-09-08 15:18:27.25281526.10374270811012.6067886955.2717538726compensated_reading(id=1f224924-955a-4d86-ae8e-158c59b4b961, timestamp=2020-09-08 15:18:27.252815, temp=26.104 °C, pressure=1012.61 hPa, humidity=55.27 % rH)

 これは上からデータID、時刻、気温、気圧、湿度のほか、最後にこれらの情報を1行でまとめて表示しています。つまり以下のことが分かります。

項目コマンドデータIDdata.id時刻data.timestamp気温data.temperature気圧data.pressure湿度data.humidity

 これらの値をそれぞれ取得すれば、SHT31で作った仕組みを改造するだけで表示できそうです。データについては、ひとかたまりで取得する方法は

calibration_params = bme280.load_calibration_params(smb, addr)data = bme280.sample(smb, addr, calibration_params)

 のようにすればよさそうです。つまり気温のデータ「roomtemp」は「data.temperature」を、湿度「roomhum」は「data.humidity」を指定すれば取得できます。これらを踏まえて改編したプログラムが以下になります。

#!/usr/bin/env python# -*- coding: utf-8 -*-import smbusimport datetimeimport requestsimport bme280 #←追加smb = smbus.SMBus(1)t = datetime.datetime.today()# BME280のI2Cアドレスaddr = 0x76# データの読み出しcalibration_params = bme280.load_calibration_params(smb, addr) #←追加data = bme280.sample(smb, addr, calibration_params) #←追加# 気温roomtemp = data.temperature# 湿度roomhum = data.humidity# WBGTを求めるwbgt = 0.735 * roomtemp + 0.0374 * roomhum + 0.00292 * roomtemp * roomhum – 3.4516# 温度と湿度をLINEで送るurl = "https://notify-api.line.me/api/notify" token = "(トークン)"headers = {"Authorization" : "Bearer "+ token} message = ["気温" + str(format(roomtemp,'.1f')) + "C", "湿度" + str(format(roomhum,'.1f')) + "%"] payload = {"message" : message} r = requests.post(url, headers = headers, params=payload)if wbgt >= 31: message = ["暑さ指数 危険!"]elif 28 <= wbgt < 31: message = ["暑さ指数 厳重警戒!"] elif 25 <= wbgt < 28: message = ["暑さ指数 警戒!"]elif 21 <= wbgt <25: message = ["暑さ指数 注意!"]else: message = ["ほぼ安全"] # 念のためコンソールにデータを表示print ('wbgt : %.1f' %wbgt )print ('Temp : %.1f C' %roomtemp)print ('Humi : %.1f %%'%roomhum)# ここまで# WBGT警報をLINEで送るurl = "https://notify-api.line.me/api/notify" token = "(取得したトークン)"headers = {"Authorization" : "Bearer "+ token} payload = {"message" : message} r = requests.post(url, headers = headers, params=payload)

 これを「bme280_wbgt.py」などのファイル名で保存して実行すると、前回SHT31で作り上げたのと同じく、LINEでメッセージを送ることができます。

 以上で3回にわたって紹介してきた、暑さ指数による警告をLINEで送る方法については以上となります。BME280の場合は気圧も測定できるので、ほかにも応用方法があるかもしれません。いろいろとプログラムを改編して探ってみてはいかがでしょうか。

仮想通貨カジノパチンコau かんたん 決済 チャージ と は

コメントを残す

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