采集大气数据存入数据库

本程序使用的硬件为树莓派+dht22温湿度传感器和bmp180气压传感器。

使用语言为Python。

数据库使用mysql  使用MySQLdb库进行数据库操作,安装太简单 忽略不写。

在编写代码之前需要安装BMP180库Adafruit_DHT库 具体方法太简单 忽略不写。

代码如下:

#!/usr/bin/python
#coding=utf-8
import time
import Adafruit_DHT
from BMP180 import BMP180
import MySQLdb
import datetime
bmp = BMP180()
sensor = Adafruit_DHT.DHT22
pin = 17
conn= MySQLdb.connect(host='localhost',port = 3306,user='root',passwd='*******',db ='tem')
cur = conn.cursor()
while True:
	temp = bmp.read_temperature()
	pressure = bmp.read_pressure()
	altitude = bmp.read_altitude()
	# temp = 0
	# pressure = 0
	# altitude = 0
	humidity, temperature = Adafruit_DHT.read_retry(sensor, pin)
	print humidity, temperature
	if humidity is not None and temperature is not None:
		data={"temp":round(temperature,2),"hum":round(humidity,2),"alt":round(altitude,2),"pre":round((pressure / 100.0),2)}
		print(data)
		created_at=time.strftime('%Y-%m-%d %H:%M:%S', time.localtime(time.time()))
		sqli="insert into env_data (`u_id`,`temp`,`hum`,`alt`,`pre`,`created_at`)values(%s,%s,%s,%s,%s,%s)"
		aa=cur.execute(sqli,("1",round(temperature,2),round(humidity,2),round(altitude,2),round((pressure / 100.0),2),created_at))
		print aa
	conn.commit()
	time.sleep(10)
cur.close()
conn.close()
 
 
 
前台搭配echarts展示或做数据分析 非常完美

前台搭配echarts展示或做数据分析 非常完美

点赞

发表评论

邮箱地址不会被公开。 必填项已用*标注