毕业设计 单片机的无线温度监控系统

201 篇文章 120 订阅
151 篇文章 42 订阅


0 前言

🔥 这两年开始毕业设计和毕业答辩的要求和难度不断提升,传统的毕设题目缺少创新和亮点,往往达不到毕业答辩的要求,这两年不断有学弟学妹告诉学长自己做的项目系统达不到老师的要求。

为了大家能够顺利以及最少的精力通过毕设,学长分享优质毕业设计项目,今天要分享的是

🚩 毕业设计 单片机循迹机器人小车

🥇学长这里给一个题目综合评分(每项满分5分)

  • 难度系数:3分
  • 工作量:3分
  • 创新点:3分

🧿 选题指导, 项目分享:

https://gitee.com/dancheng-senior/project-sharing-1/blob/master/%E6%AF%95%E8%AE%BE%E6%8C%87%E5%AF%BC/README.md

1 简介

基于NRF24L01、DHT11和Arduino开发板制作无线温度监控器

2 主要器件

  • Arduino UNO开发板
  • NRF24L01收发器模块
  • DHT11温湿度传感器
  • LCD1602显示屏
  • 10K电位器
  • 连接跳线
  • 面包板

3 实现效果

在这里插入图片描述
在这里插入图片描述

4 硬件设计

nRF24L01收发器模块

这些射频模块在Arduino爱好者中非常受欢迎。nRF24L01用于各种需要无线控制的应用。它们是收发器,这意味着每个模块都可以发送和接收数据。这些模块非常便宜,您可以将它们与任何微控制器一起使用。

在这里插入图片描述
主要的规格参数

  • 低成本单芯片,2.4GHz GFSK射频收发器
  • 带天线的范围:250Kb 速率(开放区域)>1000 米
  • 电源:超低功耗
  • 输入电压:3.3V
  • 引脚:支持5V

NRF24L01引脚分布
在这里插入图片描述
nRF24L01的工作过程

使用2.4GHz频段,可以在250kbps到2Mbps的波特率下运行。如果在开放空间和较低波特率下使用,其范围可达100米。

在这里插入图片描述
该模块可以使用125个不同的通道,从而可以在一个地方拥有一个由125个独立工作的调制解调器组成的网络。每个通道最多可以有6个地址,或者说每个单元最多可以同时与6个其他单元通信。

电路图和硬件连接

本文中我们需要两个电路图来实现两个nRF24L01收发模块之间的无线通信。下面显示的第一个电路图是发射器部分。如下图所示组装电路。

在这里插入图片描述
发射器端由Arduino Uno开发板、nRF24L01收发模块和DHT11温湿度传感器组成。DH11的模拟输出引脚连接至Arduino开发板的A0引脚。

下面显示的第二个电路图是接收器部分。如下图所示组装电路。
在这里插入图片描述
接收器的电路由Arduino Uno开发板、nRF24L01收发模块和1602 LCD显示屏组成。NRF24L01收发模块通过SPI总线连接到Arduino开发板。LCD的引脚连接至Arudino的数字引脚,使用电位器调整LCD的背光亮度。

5 部分核心代码

#include <SPI.h>
#include <nRF24L01.h>
#include <RF24.h>
#include <DHT11.h>
 
int pin = A0;
DHT11 dht11(pin);
float temperature[2];
 
double Fahrenheit(double celsius) {
return ((double)(9 / 5) * celsius) + 32;
}
 
double Kelvin(double celsius) {
return celsius + 273.15;
}
 
RF24 radio(8, 9);
const uint64_t pipe = 0xE8E8F0F0E1LL;
 
void setup(void) {
radio.begin();
radio.openWritingPipe(pipe);
}
 
void loop(void)
{
float temp, humi;
dht11.read(humi, temp);
temperature[0] = temp;
temperature[1] = humi;
radio.write(temperature, sizeof(temperature));
delay(1000);
}
#include <SPI.h>
#include <nRF24L01.h>
#include <RF24.h>
#include <DHT11.h>
#include <LiquidCrystal.h>
 
LiquidCrystal lcd(7, 6, 5, 4, 3, 2);
 
 
float temperature[2];
 
RF24 radio(8, 9);
const uint64_t pipe = 0xE8E8F0F0E1LL;
 
void setup(void) 
{
  Serial.begin(9600);
  lcd.begin(16, 2);
 
  radio.begin();
  radio.openReadingPipe(1, pipe);
  radio.startListening();
 
 
  lcd.print("Humidity & temp");
  delay(2000);
  lcd.clear();
  lcd.print("Starting.....");
  delay(2000);
}
 
void loop(void)
{
  if ( radio.available() )
{
  bool done = false;
  while (!done)
{
  done = radio.read(temperature, sizeof(temperature));
  lcd.clear();
  delay(500);
 
  lcd.setCursor(0, 0);
  lcd.print("Temp");
  lcd.setCursor(0, 1);
  lcd.print("Humidity");
  lcd.setCursor(9, 0);
  lcd.print(temperature[0]);
  lcd.print(" C");
  lcd.setCursor(9, 1);
  lcd.print(temperature[1]);
  lcd.print(" %");
  delay(1000);
}
}
  else
{
  lcd.setCursor(0, 0);
  lcd.print("No radio Found");
}
}

6 最后

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值