资料介绍
描述
在本文中,您将了解使用 DHT22 传感器和继电器的 Arduino 温控风扇。我们将使用 DHT22 传感器获取温度值,并将此温度值打印在 LCD 上。然后我们将检查温度值是否大于35,如果温度大于35,则继电器将激活,风扇将开始旋转。
介绍
许多地方都需要温度控制,例如服务器机房、房屋、工业等。所以这个项目对于了解基础知识以及如何控制家中的温度非常有用。你可以把它当作一个可以在任何地方使用的 DIY 项目。在这里,温控风扇将对温度变化起作用。
该项目由NextPCB赞助
NextPCB 是全球最有经验的 PCB 制造商之一,专注于 PCB 和组装行业超过 15 年。NextPCB 不仅可以以最高质量标准提供最具创新性的印刷电路板和组装技术,最快的交货周转时间为 24 小时。
伙计们,如果您有 PCB 项目,请访问他们的网站并获得令人兴奋的折扣和优惠券
5–10 件 PCB 原型只需 0 美元:-点击这里
注册并从 NextPCB 获得 100 美元:-点击这里
查看有关 PCB 组装功能的更多信息:单击此处
它是如何工作的?
该项目分为三个部分 -
第一步,传感器通过温湿度传感器DHT11感应温度。
第二步,获取传感器的输出并将温度值转换为合适的摄氏温度值。风扇速度由 PWM 信号控制。系统的最后一部分在 LCD 和风扇运行上显示湿度和温度。
然后我们根据要求对我们的 Arduino 进行了编程。处理这个非常简单。我们从 Arduino 生成 PWM 并将其放在晶体管的基极端子。然后晶体管相对于 PWM 输入产生电压。
连接
以下是我们执行此项目所需的组件。大多数组件都可以在我们的网站上轻松获得。
第 1 步:收集所有这些组件

1.1 所需组件
- Arduino UNO
- USB A 转 B
- 面包板
- DHT11传感器
- 直流风扇
- 2n2222晶体管
- 16x2 液晶
- 连接线
这个连接很容易做到,这里连接了一个 LCD 用于显示温度和风扇速度状态。
第 2 步:与 Arduino 的 LCD 连接

LCD直接连接到Arduino:
将 LCD-RS、EN、D4、D5、D6 和 D7 的引脚连接到 Arduino 的数字引脚编号 7、6、5、4、3 和 2。
第三步:DHT 11温湿度传感器连接
并且 DHT11 传感器模块也连接到 Arduino 的数字引脚 12。数字引脚 9 用于通过晶体管控制风扇速度。

第四步:上传代码
下面的部分是代码。在这里,第一个表格让您了解 PWM 值将是风扇的速度。您可以根据需要更改值。
代码

在编写代码之前,请参考下表。
我们包含了 DHT22 传感器和 LCD 的库。
这些库将有助于使代码更容易。由于我们正在使用库,因此我们必须确保我们正在使用的库已安装在我们的 Arduino IDE 中。要在 Arduino IDE 中安装,请转到 Sketch 选项卡,下拉到 Include Library,然后单击 Manage Library。在 Library Manager 中搜索 DHT 和 LiquidCrystal,然后安装。
#include "DHT.h"
#include "LiquidCrystal.h"
PWM 值与速度
//NextPCB
#include "DHT.h"
#include
LiquidCrystal lcd(7, 6, 5, 4, 3, 2);
#define DHTPIN 12 // what pin we're connected to
#define DHTTYPE DHT11 // DHT 11
#define pwm 9
byte degree[8] =
{
0b00011,
0b00011,
0b00000,
0b00000,
0b00000,
0b00000,
0b00000,
0b00000
};
// Initialize DHT sensor for normal 16mhz Arduino
DHT dht(DHTPIN, DHTTYPE);
void setup() {
lcd.begin(16, 2);
lcd.createChar(1, degree);
lcd.clear();
lcd.print(" Fan Speed ");
lcd.setCursor(0,1);
lcd.print(" Controlling ");
delay(2000);
analogWrite(pwm, 255);
lcd.clear();
lcd.print("Robu ");
delay(2000);
Serial.begin(9600);
dht.begin();
}
void loop() {
// Wait a few seconds between measurements.
delay(2000);
// Reading temperature or humidity takes about 250 milliseconds!
// Sensor readings may also be up to 2 seconds 'old' (its a very slow sensor)
float h = dht.readHumidity();
// Read temperature as Celsius
float t = dht.readTemperature();
// Read temperature as Fahrenheit
float f = dht.readTemperature(true);
// Check if any reads failed and exit early (to try again).
if (isnan(h) || isnan(t) || isnan(f)) {
Serial.println("Failed to read from DHT sensor!");
return;
}
// Compute heat index
// Must send in t in Fahrenheit!
float hi = dht.computeHeatIndex(f, h);
Serial.print("Humidity: ");
Serial.print(h);
Serial.print(" %\t");
Serial.print("temperature: ");
Serial.print(t);
Serial.print(" *C ");
Serial.print(f);
Serial.print(" *F\t");
Serial.print("Heat index: ");
Serial.print(hi);
Serial.println(" *F");
lcd.setCursor(0,0);
lcd.print("temp: ");
lcd.print(t); // Printing terature on LCD
lcd.print(" C");
lcd.setCursor(0,1);
if(t <20 )
{
analogWrite(9,0);
lcd.print("Fan OFF ");
delay(100);
}
else if(t==26)
{
analogWrite(pwm, 51);
lcd.print("Fan Speed: 20% ");
delay(100);
}
else if(t==20)
{
analogWrite(pwm, 102);
lcd.print("Fan Speed: 40% ");
delay(100);
}
else if(t==28)
{
analogWrite(pwm, 153);
lcd.print("Fan Speed: 60% ");
delay(100);
}
else if(t==29)
{
analogWrite(pwm, 204);
lcd.print("Fan Speed: 80% ");
delay(100);
}
else if(t>29)
{
analogWrite(pwm, 255);
lcd.print("Fan Speed: 100% ");
delay(100);
}
delay(3000);
}
通过库管理器将这两个库添加到您的 Arduino IDE。
然后我们初始化连接 LCD 和 DHT22 传感器的引脚。之后,我们定义了我们使用的 DHT 传感器的类型。有许多其他类型的 DHT 传感器可用,例如 DHT11,因此在此处定义类型很重要。
最后的话
在本文中,我们了解了如何制作温控风扇电路。使用 Arduino、DHT11 和其他一些组件。
- 温控风扇开源项目
- Raspberry Pi温控风扇
- 温控风扇开源分享
- 温控排风扇开源分享
- 温控风扇
- 温控风扇原理图修改版参考下载 0次下载
- 温控风扇原理图参考案例下载 67次下载
- 智能温控风扇可以通过手机APP或者WEB端远程控制风扇的开关状态 26次下载
- 使用Arduino设计的温控电风扇代码免费下载 13次下载
- 使用51单片机进行温控风扇设计论文免费下载 61次下载
- 简单好用的温控风扇资料和电路说明 44次下载
- 温控风扇电路原理图 29次下载
- 温控自动风扇系统设计 40次下载
- 基于51单片机的温控风扇设计 129次下载
- 智能温控风扇 103次下载
- 基于STM32单片机的智能温控风扇系统设计 7.5k次阅读
- 利用Arduino的自动风扇速度控制电路设计 3.9k次阅读
- 温控直流风扇电路图分享 1.5w次阅读
- 电风扇自动温控调速器电路的工作原理 1.2w次阅读
- 基于51单片机的智能温控风扇设计 6.2k次阅读
- 机箱风扇中CPU_FAN和SYS_FAN的区别 4.2w次阅读
- 温控阀如何使用_温控阀安装的注意事项 1.5w次阅读
- 自动温控散热风扇电路 3.1w次阅读
- 汽车电子风扇它是如何工作的 7k次阅读
- 简易的温控智能风扇控制系统设计 1.8w次阅读
- 一种简易PWM温控风扇电路设计 8.9w次阅读
- 风扇电机温控电路 6.5k次阅读
- 可任意设定温控范围的温控器 4.9k次阅读
- 电风扇温控电路图 10k次阅读
- 电风扇加装温控器电路图 8.4k次阅读
下载排行
本周
- 1ZX8002D触摸无极调光LED集成IC
- 2.43 MB | 1次下载 | 免费
- 2SDDM 激光测距模块产品规格书
- 1.11 MB | 次下载 | 免费
- 3西曼传感SDM50激光测模组产品手册
- 0.65 MB | 次下载 | 免费
- 4STC8H 系列单片机技术参考手册
- 17.85 MB | 次下载 | 1 积分
- 5PC3303 高精度PWM调光LED背光驱动器数据手册
- 2.42 MB | 次下载 | 免费
- 6飞腾 FT2000A/2 核心板 天脉 3/VxWorks 机载实时嵌入式国产化开发板
- 843.50 KB | 次下载 | 免费
- 7AU-60_全功能AI语音处理模组规格书DY)
- 3.18 MB | 次下载 | 免费
- 8WT2003H4录变音芯片及模块说明书V1
- 3.61 MB | 次下载 | 免费
本月
- 1瑞芯微RK3572开发板-产品资料更新-2026.06
- 3.30 MB | 4次下载 | 免费
- 2四键电容式触摸按键IC FZH34产品手册
- 0.41 MB | 2次下载 | 免费
- 3矩形科技 CANopen 远程IO模块产品手册
- 7.93 MB | 2次下载 | 免费
- 4高性能非隔离交直流转换芯片 PC9403A数据手册
- 0.34 MB | 2次下载 | 免费
- 5OC5721欧创芯开关降压型LED恒流驱动器
- 404.39 KB | 2次下载 | 免费
- 6PC9830 18V-3A集成高低侧功率管同步降压转换器数据手册
- 9.01 MB | 1次下载 | 免费
- 7GL65P06A8产品光磊 60V 65A P沟道功率 MOSFET
- 1.07 MB | 1次下载 | 免费
- 8ZX8002D触摸无极调光LED集成IC
- 2.43 MB | 1次下载 | 免费
总榜
- 1matlab软件下载入口
- 未知 | 935137次下载 | 10 积分
- 2开源硬件-PMP21529.1-4 开关降压/升压双向直流/直流转换器 PCB layout 设计
- 1.48MB | 420064次下载 | 10 积分
- 3Altium DXP2002下载入口
- 未知 | 233095次下载 | 10 积分
- 4电路仿真软件multisim 10.0免费下载
- 340992 | 191476次下载 | 10 积分
- 5十天学会AVR单片机与C语言视频教程 下载
- 158M | 183362次下载 | 10 积分
- 6labview8.5下载
- 未知 | 81608次下载 | 10 积分
- 7Keil工具MDK-Arm免费下载
- 0.02 MB | 73836次下载 | 10 积分
- 8LabVIEW 8.6下载
- 未知 | 65992次下载 | 10 积分
电子发烧友App





创作
发文章
发帖
提问
发资料
发视频
上传资料赚积分
评论