161_RaspberryPi_Temp&humid_data_sending_to_SAKURAVPS

いや、、苦労したけどなんとか。。。。。

でも、、、

・humidデータは0.0のままなのでこれは故障かも?(デバイスの写真)

・RaspberryPi側も+3.3Vを接続するときたまにRinuxが立ち上がらない?(回路の写真)

ので自分の半田不良か?そもそも安い製品のリスク?か。。。

まあ、たまたまできたときなので、一応メモを残しておきましょう。

 

<coding>

#!/usr/bin/env python

# -*- coding: utf-8 -*-
# ドライバをimport
import mysql.connector
import datetime
import wiringpi
import os
import struct
from time import sleep
wiringpi.wiringPiSetup() #setup wiringpi
i2c = wiringpi.I2C() #get I2C
dev = i2c.setup(0x40) #setup I2C device
i2c.write(dev,0x02) #HDC1000 CONFIGURATION POINTER
i2c.write(dev,0x10) #send 1byte
i2c.write(dev,0x00) #send 1byte
sleep((6350.0 + 6500.0 +  500.0)/1000000.0)
dataAry = struct.unpack(“BBBB”,os.read(dev,4))
os.close(dev)
temp3 = (dataAry[0] << 8) | (dataAry[1])
hudi3 = (dataAry[2] << 8) | (dataAry[3])
temp3 = ((temp3 / 65535.0) * 165 – 40)
hudi3 = ((hudi3 / 65535.0 ) * 100)
print “Humidity %.2f %%” % hudi3
print “Temperature %.2f C” % temp3
# ドライバをimport
# import mysql.connector
if __name__ == ‘__main__’:
       # データベースに接続
        connect = mysql.connector.connect(user=’*****i’, password=’******6′, host=’****.****.****.****’, database=’2016*********or’, charset=’utf8′)
        cursor = connect.cursor()
        today = datetime.datetime.today()
        temp_fin=int(temp3)
        hudi_fin=int(hudi3)
        print “————“
        print today.strftime(“%Y-%m-%d %H:%M:%S”)
        print “Final_Humidity %.2f %%” % hudi_fin
        print “Final_Temperature %.2f C” % temp_fin
        print “————“
        ###############
        cmd = ‘insert into t_sensor (time_stamp,temp,humid,water_need,memo) values (“{}”,”{}”,”{}”,”{}”,”{}”)’.format(today.strftime(“%Y-%m-%d %H:%M:%S”),temp_fin, hudi_fin,”Real_Data”,”Real_Data”)
        print cmd
        print “————“
        cursor.execute(cmd)
        cursor.execute(‘DELETE FROM t_sensor ORDER BY Num ASC LIMIT 1’)
        # autocommitではないので、明示的にコミットする
        connect.commit()
        print “success!_20170129”
        # データベースから切断
        cursor.close()
        connect.close()

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です