树莓派利用DHT11上传数据到电脑MySQL上
工具:
树莓派 * 1
温湿度传感器DHT11 * 1
在开始实验之前,要在电脑上安装MYSQL,并且建立好一个数据库连接。这里我用Navicat Premium连接电脑刚刚创建好的数据库,在数据库中新建一个表。这里连接提一句,
连接名可以随便取,主机可以直接填localhost,也可以直接填本地ip地址。这个端口因人而异,可能是3306,也可能是3308等等。之后,就是填自己的用户名和密码。不过,这里要注意root用户一开始没有远程登陆的功能,需要在电脑终端给他赋权!!!首先,在电脑的cmd下(注意要在MySQL安装bin目录下)登录mysqlmysql -h localhost -uroot -p
,
还有就是给树莓派访问权限 GRANT ALL PRIVILEGES ON *.* TO 'root'@'树莓派ip地址' IDENTIFIED BY '你的root用户密码' WITH GRANT OPTION;
然后输入FLUSH PRIVILEGES;
让刚刚指令生效,这里还是重启一下MySQL,可以直接exit;
一下。到这里对电脑配置就结束了,对了,还有如果你们到时运行树莓派代码出现 远程连接失败(错误码:2003),像下图:
这是因为,你的防火墙开了,把防火墙关掉就不会报这个错误了。
下面转到树莓派上,树莓派如果想用Adafruit_DHT这个库得先去下载,git clone https://github.com/adafruit/Adafruit_Python_DHT.git
,解压然后因为cd Adafruit_Python_DHT
目录下,(如果你用的是树莓派4B,还得,在Adafruit_DHT目录下找到platform_detect.py这个文件
在112行补上下面那句话
然后转到上一级目录sudo python3 setup.py install
进行安装,安装完后可以进入examples目录运行测试文件,如果出现下图情况说明安装成功了(那两个参数,前一个是指明是DHT11还是DHT22,后面是以BCM为编码的接温湿度传感器数据引脚。
终于到最后上传数据代码了,这里要远程连接MYSQL
con = pymysql.connect(host='你电脑ip地址',port=端口号,user='用户名',db='你刚刚创建的数据库',passwd='密码')
这个很关键,
import pymysqlimport Adafruit_DHT
import timepin = 17 # DHT11在BCM编码下接数据引脚global sensor
sensor = Adafruit_DHT.DHT11while True:con = pymysql.connect(host='你电脑ip地址',port=端号,user='root',db='你刚刚创建的数据库',passwd='123')#远程连接MYSQLcur = con.cursor()#创建游标humidity, temperature = Adafruit_DHT.read_retry(sensor, pin)#dht11读数据if humidity is not None and temperature is not None:print('Temp={0:0.1f}*C Humidity={1:0.1f}%'.format(temperature, humidity))else:print('Failure,Try again!')breaktime.sleep(1) # 延时1ssql="insert into 自己新建的表 values(%s,%s)"#由于上传数据只能是字符串,所以这里进行强制转换insert=cur.executemany(sql,[(str(temperature),str(humidity))])print('sucess',insert)cur.close()con.commit()con.close()
然后运行,刷新Navicat Premium中刚刚新建的表,最后可以看到有数据。
这里上传数据当然不限于DHT11,你们也可以加上其他传感器试试,剩下就看看你们自己的发挥了。
树莓派利用DHT11上传数据到电脑MySQL上相关推荐
- 小程序 php转excel,做微信小程序上传数据 数据格式?-微信 上传数据 生成excle
做微信小程序上传数据 数据格式? 建议找人专门制作设计好,专业的事情交给专业的人做,自己浪费时间还不一定能搞好 如何把微信里的excel传到qq上 1.在手机中先箭头所示的"微信" ...
- crt上传数据_使用SecureCRT上传文件到Linux服务器
使用SecureCRT有两种方式可以将文件上传到Linux服务器,已上传Asp.Net Core runtime为例. 一.使用Zmodem(在shell终端上操作) 1.上传 (1) 进行文件上传 ...
- Kaggle上传数据时出现错误,且不是网络问题
Kaggle上传数据时出现错误,且不是网络问题 Kaggle上传数据processing 数据时出现错误 Kaggle上传数据processing 数据时出现错误 Kaggle上传数据时,能够上传数据 ...
- C++ vs2017 - libcurl - http请求 代码大全(请求数据,上传下载文件,多线程上传下载文件)
在网上搜寻各种libcurl的用法,将代码集合于此! 目录 一.配置curl项目 二.Curl 请求参数 1. CURLOPT_POST 2. CURLOPT_URL 3. CURLOPT_HTTPH ...
- 利用mysql实现上传和下载_文件上传表单 上传文件的细节 文件上传下载和数据库结合...
1 文件上传表单 1)上传文件的本质是文本复制的过程 2)技术层面,在Java中一定会用到IO操作,主要以二进制方式读写 3)传统方式下,对于上传文件字段不同的浏览器有着不同的解析方式,例如: IE6 ...
- 文件上传表单 上传文件的细节 文件上传下载和数据库结合
1 文件上传表单 1)上传文件的本质是文本复制的过程 2)技术层面,在Java中一定会用到IO操作,主要以二进制方式读写 3)传统方式下,对于上传文件字段不同的浏览器有着不同的解析方 ...
- stm32f103c8t6+ESP8266利用onenet平台上传数据到云平台,再利用云平台远程下发命令给单片机控制LED灯亮灭
stm32f103c8t6+ESP8266利用onenet平台上传数据到云平台,再利用云平台远程下发命令给单片机控制LED灯亮灭 接触stm32已经有一年半的时间了,从最开始的stm32F103ZET ...
- 【MQTT】利用MQTT.fx上传数据节点到中移OneNET云平台
在学习使用OneNET云平台过程中,使用MQTT协议向平台上传数据,利用MQTT.fx输入发布tpoic,为了确保设备上传消息确实被平台所接受处理,设备可以订阅系统 topic ,从而获取上传数据点的 ...
- 树莓派上传数据到onenet云平台
背景:通过树莓派上传数据到onenet云平台 操作:看代码 # -*- coding:utf-8 -*- # File: cputemp.py #向平台已经创建的数据流发送数据点 import url ...
最新文章
- 【转】奴性哲学十句话,洗脑常用词!!!
- OpenCV3图像处理——霍夫曼变换直线检测
- python字符串筛选输出_如何在Python中过滤字符串列表
- 爬取了BAT等一线大厂近10000+招聘需求,总结出3-5年+Java开发的高频技术需求
- 浏览器缓存文件导致js文件更改无效
- C#笔记15 反射、特性、序列化和动态编程
- Android-动画-view 动画笔记
- 2022最新最全升级版【精品工具】用Appuploader发布上传iOS APP上架流程简单快速
- AMADA阿玛达触摸屏维修折弯机主机维修
- 上传文件计算机传输的,电脑文件怎么传输到iPad
- 【数据结构基础_双向链表(有[*pHead]和[*pEnd])_(C++)】
- VS 2010错误提醒: 必需属性“VSInstallDir”缺失或为空 以及 error MSB8008
- Hadoop性能测试工具
- jQuery:等页面DOM加载完毕后再执行代码
- java实现字符串反转
- 如何成为一名合格的数据产品经理?
- 健身运动燃烧脂肪的三个必要条件
- badboy简介和回放
- Kafka学习笔记 : 消费进度监控 [ 消费者 Lag 或 Consumer Lag ]
- Csharp 简单操作Word模板文件
热门文章
- 计算机安全工程系,材料工程系、环境与安全工程系、计算机系、外语系、艺术系、表彰大会暨跨年联欢会...
- 信息时代,智能审核发挥什么作用?
- 怎样使用iMindMap思维导图开展会议使用教程
- EF for MySql中文乱码问题解决
- 电动车号牌输入组件plate-number-input使用
- 易方达积极成长证券投资基金2007年第3季度报告
- HTTTP的post和get的区别
- AtomCMS“靶场“
- IOS上input/textarea组件输入光标太高/太长的调整办法
- 私人记账本程序cashbook