在本篇文章中,我们将主要介绍如何使用DHT22传感器和继电器制作一款Arduino温控风扇。使用DHT22传感器获取温度值,然后将在LCD显示屏上打印此温度值。我们将检查温度值是否大于35,如果温度大于35,则启动继电器,风扇将开始旋转。

所需的硬件

●    Arduino Uno开发板

●    LCD1602显示屏

●    DHT22温湿度传感器

●    直流电机

●    9V电池

●    10K电位器

●    连接导线

●    面包板

硬件部分

首先,我们按照以下方式将LCD模块连接到Arduino开发板:

●    将LCD的VSS引脚连接到Arduino的GND。

●    将VDD引脚连接到Arduino的5V。

●    将V0引脚连接到10K电位器的中心引脚。将电位器的其他两个引脚连接到5V和GND。

●    将RS引脚连接到Arduino的引脚2。

●    将R / W引脚连接到Arduino的地。这将使LCD处于读取模式。

●    将E(使能)引脚连接到Arduino的引脚3。

●    将D4-D7引脚分别连接到Arduino的引脚4、5、6、7。

●    将LED背光的正极引脚15通过串联一只220欧电阻连接到5V。

●    将LED背光的负极引脚16连接到Arduino的GND。

然后将继电器模块Keyes_ST1y连接到Arduino开发板。在继电器模块的输入端,连接如下:

●    将继电器模块的VCC引脚连接到Arduino的5V引脚。

●    将继电器模块的IN引脚连接到Arduino的引脚9。

●    将继电器模块的GND引脚连接到Arduino的GND。

在继电器模块Keyes_SR1y的输出侧,将9V电池的负极连接到继电器模块的公共端(C),并将继电器模块的NC连接到风扇负极。然后将电池正极连接到风扇正极。

最后,按照以下方式连接DHT22温湿度传感器:

●    将DHT22的引脚1(即VCC引脚)连接到Arduino的5V

●    将DHT22的引脚2(数据引脚)连接到Arduino的引脚8。

●    将DHT22的引脚4(接地引脚)连接到Arduino的GND。

connections.png (324.94 KB, 下载次数: 119)

2019-1-17 16:56 上传

代码说明

首先我们需要包含用于DHT22传感器和LCD的库文件。

这些库将有助于简化代码。由于我们使用库,必须确保使用的库安装在Arduino IDE中。要在Arduino IDE中安装,请转到Sketch选项卡,下拉到Include Library,然后单击Manage Library。在Library Manager中搜索DHT和LiquidCrystal,然后安装。

#include “DHT.h”

#include “LiquidCrystal.h”复制代码

library.jpg (40.77 KB, 下载次数: 145)

2019-1-17 16:56 上传

通过库管理器将这两个库添加到Arduino IDE中。

然后我们初始化了连接LCD和DHT22传感器的引脚。之后,我们定义了DHT传感器的类型,我们使用的是DHT22传感器。还有许多其他类型的DHT传感器可供选择,如DHT11,因此在此定义类型非常重要。

LiquidCrystal lcd(2, 3, 4, 5, 6, 7);

#define DHTPIN 8

#define DHTTYPE DHT22

DHT sensor(DHTPIN, DHTTYPE);复制代码

在setup()函数中,我们将命令发送到DHT22和LCD,开始与Arduino通信。然后我们将继电器引脚声明为输出引脚,因为我们将从Arduino向继电器提供电压以起送继电器。继电器反向工作(高电平表示继电器低电平)。

lcd.begin(16,2);

sensor.begin();

pinMode(relay_pin, OUTPUT);

digitalWrite(relay_pin, HIGH);复制代码

在loop()函数中,我们清除LCD显示,然后从传感器读取温度值。

lcd.clear();

float t = sensor.readTemperature(); //reading the temperature from the sensor

// Checking if the sensor is sending values or not

if (isnan(t)) {

lcd.print("Failed");

delay(1000);

return;

}复制代码

然后我们在LCD上打印此温度值,如果温度值大于35,则启动继电器,风扇开始旋转。

lcd.setCursor(0,0);

lcd.print("Temp: ");

lcd.print(t);

lcd.print(" C");

if (t > 35){

digitalWrite(relay_pin, LOW);

lcd.setCursor(0,1);

lcd.print("Fan is ON ");

delay(10);

}复制代码

以下是本文的完整代码:

main.rar

(507 Bytes, 下载次数: 364)

2019-1-17 17:02 上传

点击文件名下载附件

arduino继电器控制风扇_如何使用Arduino开发板制作温度控制的风扇相关推荐

  1. 基于Arduino Uno开发板制作音乐播放器

    基于Arduino Uno开发板制作音乐播放器 本文将基于Arduino开发板实现一个音乐播放器. 利用Arduino Uno读取sd卡模块中内存卡的音乐,传输信号到扬声器进行播放. 一.项目软硬件简 ...

  2. arduino串口监视器显示nan_使用Arduino开发板制作摩尔斯电码生成器

    摩尔斯电码是一种通信系统,用于在两个不同持续时间的信号中编码任何字符,称为点和虚线.摩尔斯电码由Samuel F.B开发.并进一步用于电报传输秘密信息.它在第二次世界大战时最常用.摩尔斯电码可以通过点 ...

  3. Arduino开发板制作

    Arduino UNO 介绍 ,Arduino开发板制作 教程: Arduino制作 Arduino UNO 图 Arduino是什么 Arduino是一款便捷灵活.方便上手的开源电子原型平台.包含硬 ...

  4. 基于arduino uno 开发板制作的 智能书包项目

    基于arduino uno 开发板制作的智能书包,当时收短视频启发,集合自动售货机的代码和RC522 读卡模块代码结合制作,现基本功能可以实现 ,目前代码部分尚不稳定需要继续改进 //一个智能书包小发 ...

  5. 使用Arduino开发板制作交流电压表

    在本文中,我们将使用Arduino开发板制作一个交流电压测量装置,测量我们家中交流电源的电压.我们将在Arduino IDE的串行监视器上打印输出该电压,并在万用表上显示出来. 制作数字电压表比模拟电 ...

  6. python 物联网开发板_物联网学什么开发板好?

    可以试试我们的三明治开发板呀!比较容易上手,你可以使用它轻松创建一款通过智能音箱语音或者手机App控制的智能硬件产品,喜欢玩DIY的知友可以体验下. 配合我们的IoT开发平台,即可快速完成智能产品de ...

  7. 基于普中51单片机开发板的温控风扇

    自学单片机也不算很久,刚好遇上了这一门的课程设计,查找了好多的资料发现都不算合适,合适的又要收费,那么最后呢才找到了一个有关我使用的开发板的温控风扇程序,也就是普中单片机开发板,该程序来自--黑51论 ...

  8. <硬件>——Arduino继电器控制实例

    继电器原理:弱电控制强电 ---引脚图 NC:常闭端  NO:常开端  COM:公共端 VCC:电源正极  GND:电源负极  IN:信号输入端 ---工作图 一般情况下NC是闭合,当IN收到信号是低 ...

  9. Arduino 继电器控制(Blinker+ 小度)

    一.前期准备 1. D1 UNO R3 WIFI 开发板, 2. 继电器 3. 电源 4. 小度音箱 5. Blinker 账户 6. 百度账户 7. Arduino IDE 8. Blinker l ...

最新文章

  1. CF797E. Array Queries
  2. ios iphonex适配
  3. Jenkins Pipeline插件十大最佳实践!
  4. java单例枚举_Java增强枚举的用例
  5. c mysql数据库函数库查询_Mysql数据库使用concat函数执行SQL注入查询
  6. Selenium Grid的搭建方法
  7. android 音频设备类型,实现车载音频 HAL  |  Android 开源项目  |  Android Open Source Project...
  8. 服务器硬盘 二手,分析:二手服务器配件 哪个最不该买?
  9. python程序打印出10行的杨辉三角_GitHub 标星 6.5w+,Python 小白 100 天学习计划,从新手到玩转!...
  10. realtek没有禁用前面板_为什么HD声卡必须禁用前面板插孔检测前置耳机和麦克才可以有声...
  11. mac下使用自带的bash或Cyberduck软件链接服务器
  12. [游戏] 星际争霸2:一个新的传奇?
  13. 2022年上半年财神爷最爱照顾的星座
  14. tf.convert_to_tensor()
  15. Java— 齐头并进完成任务—多线程
  16. 云服务器测速脚本_Superspeed.sh:包含很多个测速节点的 VPS 一键测速脚本
  17. 如何解决win10应用商店打不开——错误码0x80131500
  18. ps中usm锐化,智能锐化,像素化,分层云彩,光照效果,镜头光晕,纤维,云彩,减少杂色,蒙尘与划痕,祛斑,添加杂色,中间值
  19. 腾讯有数后端Java对接
  20. 三星S9/S9+将亮相,神秘邀请函透露了哪些信号?

热门文章

  1. android图片格式
  2. 学习笔记-第十二章 恶意代码分析实战
  3. 面试过了,说要发offer,结果又增加一轮面试,是什么意思?
  4. 冯登国院士:关键信息基础设施安全保护的三个视角
  5. sqlserver 中时间转变为coledatetime,再到systemtime
  6. 前端面试大全(Ajax篇——面试官这样问,你答得上来吗?)
  7. s5pv210 linux内核移植,S5PV210 LINUX内核移植
  8. 简述自然语言理解的层次划分及对应的技术
  9. 乔布斯斯坦福大学演讲中文译文
  10. netlogo实现turtles的移动