0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

1号機で作成したMariaDBの情報を介して、2号機のTFTDisplayに温度、湿度、気圧、照度の情報を表示させる【1号機の設定】。

Last updated at Posted at 2024-12-15

■1号機の設定。仮想環境にもcgsencerの導入が必要。

source ~/vpy/bin/activate

python3 -m pip install -U cgsensor

1.まずは テーブルに情報を書き込む python作成。 room_env_disp.py で保存。

#!/usr/bin/env python3
import cgsensor  # インポート
import datetime
import mysql.connector
bme280 = cgsensor.BME280(i2c_addr=0x76)  # BME280制御クラスのインスタンス, i2c_addrは0x76/0x77から選択
bme280.forced()  # Forcedモードで測定を行い, 結果をtemperature, pressure, humidityに入れる
print('気温 {}°C'.format(bme280.temperature))  # 気温を取得して表示
print('湿度 {}%'.format(bme280.humidity))  # 湿度を取得して表示
print('気圧 {}hPa'.format(bme280.pressure))  # 気圧を取得して表示
tsl2572 = cgsensor.TSL2572()  # TSL2572制御クラスのインスタンス
tsl2572.single_auto_measure()  # 条件を自動で調整しながら1回測定を行い, luxに結果を入れる
print('明るさ {}lux'.format(tsl2572.illuminance))  # 明るさを取得して表示

temp = '{}°C'.format(bme280.temperature) 
humi = '{}%'.format(bme280.humidity)
air_p  = '{}hPa'.format(bme280.pressure)
illumi = '{}lux'.format(tsl2572.illuminance)

# db connect
def main():     
# mysql connect 
   cnt = mysql.connector.connect(
   host='miyamodb',
   port='3306',
   db='miyamodb',
   user='miyamo',
   password='miyamoXXXX',
   charset='utf8'
   )
  db = cnt.cursor(buffered=True)

# query table update run
    sql = 'UPDATE room_env SET temperature = %s, humidity = %s, air_pressure = %s, illuminance = %s, upd_datetime = now()  where id = 1';
    data_env = (temp, humi, air_p, illumi)
    db.execute(sql,data_env)
    sql = 'commit';
    db.execute(sql)

# select
    sql = 'SELECT * FROM room_env';
    db.execute(sql)
    
# display 
    rows = db.fetchall()
    print('room_env update:',rows)

# cursol end
    db.close()
# close
    cnt.close()

if __name__ == "__main__":
    main()

2.仮想環境で実行

source ~/vpy/bin/activate

room_env_disp.py 実行で うまくDBのテーブルに書きこめたぞ。

3.cronに登録 5分毎に実行。 いけた。

sudo crontab -e

*/5 * * * * cd /home/pi/ && /home/pi/vpy/bin/python room_env_disp.py >> /tmp/cron.log 2>&1

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?