ラズパイ(41) センサーの値をmysqlに書き込む

Gatamixです。
温度センサー(lps25h)の値をデータベースに書き込んでみます。

python ライブラリーのインストールをします。

$sudo apt-get install python-dev
$sudo apt-get install libmysqlclient-dev
$sudo pip install MySQL-python

メタ変数は以下です。
foge:データベース名
huga:テーブル名
foo:ユーザー名
passwd:パスワード

書き込み用のpythonコードです。

#!/usr/bin/env python
# -*- coding: UTF-8 -*-
 
import smbus
import time
import sys
import datetime
import MySQLdb

Device_add = 0x5d 
 
#通信確認
whoami = smbus.SMBus(1).read_byte_data(Device_add, 0x0f)
if whoami != 0xbd:
    print('接続できません')
    sys.exit()

#レジスタ切り替え(モード変更)
smbus.SMBus(1).write_byte_data(Device_add, 0x20, 0x90) 
time.sleep(1)

#データ読み込み

buff = [0 for i in range(5)]
buff[0] = smbus.SMBus(1).read_byte_data(Device_add, 0x28)
#print("buff[0]=%x" % buff[0])
buff[1] = smbus.SMBus(1).read_byte_data(Device_add, 0x29)
#print("buff[1]=%x" % buff[1])
buff[2] = smbus.SMBus(1).read_byte_data(Device_add, 0x2A)
#print("buff[2]=%x" % buff[2])
buff[3] = smbus.SMBus(1).read_byte_data(Device_add, 0x2B)
#print("buff[3]=%x" % buff[3])
buff[4] = smbus.SMBus(1).read_byte_data(Device_add, 0x2C)
#print("buff[4]=%x" % buff[4])

Data = [0 for i in range(2)]

"""---------------------------
圧力データ24bitデータ
8bitデータをシフトして結合
---------------------------"""

Data[0] = (buff[2] << 16 | buff[1] << 8 | buff[0])

"""---------------------------
温度データ16bitデータ
8bitデータをシフトして結合
---------------------------"""

Data[1] = (buff[4] << 8 | buff[3])

"""------------------------
圧力データの計算
Pout(hPa) = PRESS_OUT / 4096
-------------------------"""

Data[0] = float(Data[0]) / 4096

"""---------------------------
マイナスデータの補正と
温度データの計算
T(°C) = 42.5 + (TEMP_OUT / 480)
----------------------------"""

if Data[1] & 0x8000:
    Data[1] = -((Data[1] - 1) ^ 0xffff)
Data[1] = float(Data[1]) / 480.0 + 42.5

#出力-------------------------

print("Pressure %.2f hPa" % (Data[0]))
print("Temperature %.2f degree" % (Data[1]))

connector = MySQLdb.connect(host="localhost", db="hoge", user="foo", passwd="passwd", charset="utf8")
cursor = connector.cursor()
 
str_tmp = "%6.2f" % Data[1]
sql = u"insert into fuga values(now(), %s)" % str_tmp
cursor.execute(sql)
 
connector.commit()
 
cursor.close()
connector.close()

確認
$sudo mysql -u foo -p
>use hoge;
>select * from fuga;

written by gatamix