毕设笔记07-Arduino+dht11+2.4G实现将采集的数据无线传输并保存到本地

毕设笔记07-Arduino+dht11+2.4G实现将采集的数据无线传输并保存到本地

之前的帖子陆续实现了将采集的数据通过串口线保存到本地,详见毕设笔记05,这次使用两个2.4G无线通信模块,实现采集数据的无线传输并通过Python自动保存到本地;
1、2.4无线通信模块设置
新购买的2.4G无线通信模块为了方便用户使用,设置好了AT模式,默认波特率为9600,这里我们需要两个2.4G无线通信模块,并且电脑端还需要一个USB-TTL模块,USB-TTL与2.4G接线如下表:

USB-TTL模块2.4G无线通信模块
+5VVDD
GNDGND
RXDTXD
TXDRXD
3V3(悬空不接)CND(悬空不接)

将连接好的USB-TTL模块插入电脑的USB接口,打开设备管理器,点击其他设备,显示未识别设备,如下图所示,这时候需要安装驱动程序驱动程序网盘链接(提取码r9u4),下载解压安装即可(注:安装前务必移除USB-TTL模块,驱动安装成功之后再插入即可),然后重新插入USB-TTL模块,点击端口,查看端口号;
2、Python代码

import time
import serial
ser = serial.Serial(
    port='COM4',                   #端口号
    baudrate=9600,
    parity=serial.PARITY_ODD,      # 校验位 
    stopbits=serial.STOPBITS_TWO,  # 停止位
    bytesize=serial.SEVENBITS      # 数据位
)
data = ''
while True:
    data = ser.readline()
    t = time.time()
    ct = time.ctime(t)
    print(ct, ':')
    print(data)
    f = open('D:/1.txt', 'a')#数据保存的路径,提前建立好文件
    f.writelines(ct)
    f.writelines(':\n')
    f.writelines(data.decode('utf-8'))
    f.close()

3、Arduino代码(先编译代码上传到Arduino后再接线):

#include <dht11.h>
#include <Arduino.h>
#define DHT11_PIN 2
unsigned int sensorValue = 0;
dht11 DHT;
void setup(){
    Serial.begin(9600);    
} 
void loop(){
    int chk;
    chk = DHT.read(DHT11_PIN); 
    Serial.print("HUM = ");
    Serial.print(DHT.humidity);
    Serial.println(" %RH");
    Serial.print("TEM = ");
    Serial.print(DHT.temperature);
    Serial.println(" ℃");
    delay(2000);
}

4、Arduino与2.4G接线
DHT11的DATA接口连接Arduino的数字2接口

Arduino2.4G无线通信模块
RXTXD
TXRXD
GNDGND
5VVDD、CMD

5、运行测试
接线完毕给Arduino通电,紧接着运行上边的python代码,运行结果如下图:
在这里插入图片描述
打开本地的1.txt文件,显示已经保存的数据:
在这里插入图片描述

  • 7
    点赞
  • 23
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值